/// <summary> /// Create the response object based on the response string. /// </summary> /// <param name="responseStr"></param> /// <returns></returns> public static IResponse CreateResponse(string responseStr) { IResponse response; switch (responseStr) { case "M": response = new MessageResponse(); break; case "E": // NOTE: The error message response is overloaded from the server // so there is some complexity hidden in this class...responses // are basically being delegated to other responses in here. response = new ErrorMessageResponse(); break; case "MT": response = new MessageTaggedResponse(); break; case "Checked-in": response = new CheckedInResponse(); break; case "New-entry": response = new NewEntryResponse(); break; case "Mod-time": response = new ModTimeResponse(); break; case "ok": ResetErrorResponseHandlers(); response = new OkResponse(); break; case "error": response = new ErrorResponse(); break; case "Merged": response = new MergedResponse(); break; case "Updated": response = new UpdatedResponse(); break; case "Created": response = new CreatedResponse(); break; case "Module-expansion": response = new ModuleExpansionResponse(); break; case "Clear-sticky": response = new ClearStickyResponse(); break; case "Set-static-directory": response = new SetStaticDirectoryResponse(); break; case "Clear-static-directory": response = new ClearStaticDirectoryResponse(); break; case "Valid-requests": response = new ValidRequestsResponse(); break; case "Set-sticky": response = new SetStickyResponse (); break; case "Removed": response = new RemovedResponse(); break; default: response = null; break; } return response; }
/// <summary> /// Create the response object based on the response string. /// </summary> /// <param name="responseStr"></param> /// <returns></returns> public static IResponse CreateResponse(string responseStr) { IResponse response; switch (responseStr) { case "M": response = new MessageResponse(); break; case "E": // NOTE: The error message response is overloaded from the server // so there is some complexity hidden in this class...responses // are basically being delegated to other responses in here. response = new ErrorMessageResponse(); break; case "MT": response = new MessageTaggedResponse(); break; case "Checked-in": response = new CheckedInResponse(); break; case "New-entry": response = new NewEntryResponse(); break; case "Mod-time": response = new ModTimeResponse(); break; case "ok": ResetErrorResponseHandlers(); response = new OkResponse(); break; case "error": response = new ErrorResponse(); break; case "Merged": response = new MergedResponse(); break; case "Updated": response = new UpdatedResponse(); break; case "Created": response = new CreatedResponse(); break; case "Module-expansion": response = new ModuleExpansionResponse(); break; case "Clear-sticky": response = new ClearStickyResponse(); break; case "Set-static-directory": response = new SetStaticDirectoryResponse(); break; case "Clear-static-directory": response = new ClearStaticDirectoryResponse(); break; case "Valid-requests": response = new ValidRequestsResponse(); break; case "Set-sticky": response = new SetStickyResponse(); break; case "Removed": response = new RemovedResponse(); break; default: response = null; break; } return(response); }