public function submissions(SubmissionsRequest $request) { switch ($request->getActionType()) { case ActionType::GET: $result; switch ($request->getLms()) { case Lms::CANVAS: $canvas = new CanvasHelper(DataType::SUBMISSIONS); $result = $canvas->processSubmissionsRequest($request); break; default: $canvas = new CanvasHelper(DataType::SUBMISSIONS); $result = $canvas->processSubmissionsRequest($request); break; } return $result; default: throw new InvalidActionException($request->getActionType(), get_class($request)); } }