Refactored Perform Action in to different classes based on functionalities