All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.huaweicloud.sdk.cloudtest.v1.CloudtestMeta Maven / Gradle / Ivy

There is a newer version: 3.1.114
Show newest version
package com.huaweicloud.sdk.cloudtest.v1;

import com.huaweicloud.sdk.cloudtest.v1.model.AddRelationsInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.AddResourceInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.AddTestCaseCommentRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.AddTestCaseCommentResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.AlarmStatisticsQuery;
import com.huaweicloud.sdk.cloudtest.v1.model.AlertStatisticsDto;
import com.huaweicloud.sdk.cloudtest.v1.model.BatchAddRelationsByOneCaseRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.BatchAddRelationsByOneCaseResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.BatchAddResourcesForIteratorRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.BatchAddResourcesForIteratorResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.BatchDeleteTestCaseRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.BatchDeleteTestCaseRequestBody;
import com.huaweicloud.sdk.cloudtest.v1.model.BatchDeleteTestCaseResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.BatchDeleteTestCasesRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.BatchDeleteTestCasesResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.BatchDeleteTestReportRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.BatchDeleteTestReportResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.BatchRemoveTestCasesFromIteratorRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.BatchRemoveTestCasesFromIteratorResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.BatchUpdateVersionTestCasesRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.BatchUpdateVersionTestCasesResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.BranchVersionInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.CaseRemoveInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.CheckPermissionRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.CheckPermissionResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.CommRequestListFactorParam;
import com.huaweicloud.sdk.cloudtest.v1.model.CommRequestMindmapPageParamV3;
import com.huaweicloud.sdk.cloudtest.v1.model.CommRequestReviewPageParam;
import com.huaweicloud.sdk.cloudtest.v1.model.CommRequestScenePageParam;
import com.huaweicloud.sdk.cloudtest.v1.model.CommRequestSystemConfig;
import com.huaweicloud.sdk.cloudtest.v1.model.CommRequestTemplatePageParam;
import com.huaweicloud.sdk.cloudtest.v1.model.CommRequestTestCasePageParam;
import com.huaweicloud.sdk.cloudtest.v1.model.CommRequestTestPointPageParam;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateApiTestSuiteByRepoFileRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateApiTestSuiteByRepoFileResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateBasicAwReq;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateIteratorRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateIteratorResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.CreatePlanRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.CreatePlanRequestBody;
import com.huaweicloud.sdk.cloudtest.v1.model.CreatePlanResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateProjectBranchRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateProjectBranchResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateRelationsByOneCaseRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateRelationsByOneCaseResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateReportRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateReportResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateResourceUriRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateResourceUriResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateServiceRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateServiceResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateTestCaseInPlanRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateTestCaseInPlanRequestBody;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateTestCaseInPlanResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateTestCaseReq;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateTestCaseRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateTestCaseRequestBody;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateTestCaseResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateTestSuitByRepoFileInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateUserDefinedUrlKeyWordRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateUserDefinedUrlKeyWordResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateVersionTestCaseRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.CreateVersionTestCaseResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.DashboardDataQuery;
import com.huaweicloud.sdk.cloudtest.v1.model.DeleteBasicAwByIdRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.DeleteBasicAwByIdResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.DeleteRelationsByOneCaseInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.DeleteRelationsByOneCaseRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.DeleteRelationsByOneCaseResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.DeleteServiceRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.DeleteServiceResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.DeleteTestCaseCommentRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.DeleteTestCaseCommentResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.DeleteTestCaseInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.EchoTestPackageCheckResult;
import com.huaweicloud.sdk.cloudtest.v1.model.GenerateReportInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.IssueTreeInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.IteratorVersionInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.IteratorVersionsQueryInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAlarmStatisticsUsingRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAlarmStatisticsUsingResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAlertGroupsByConditionRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAlertGroupsByConditionRequestBody;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAlertGroupsByConditionResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAlertTemplatesRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAlertTemplatesResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAllBranchesRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAllBranchesResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAllConfigItemByTypeRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAllConfigItemByTypeRequestBody;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAllConfigItemByTypeResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAllIteratorsRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAllIteratorsResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAllTestCasesRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAllTestCasesResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAttachmentsRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAttachmentsResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAvailableConfigRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListAvailableConfigResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListBasicAwInfoListSupportsSearchRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListBasicAwInfoListSupportsSearchResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListBasicAwRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListBasicAwResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListBranchesRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListBranchesResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListCasesStatusRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListCasesStatusResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListDomainVisibleServicesRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListDomainVisibleServicesResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListEnvironmentsRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListEnvironmentsResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListIssueTreeRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListIssueTreeResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListIteratorIssueTreeRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListIteratorIssueTreeResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListIteratorsRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListIteratorsResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListLinesUsingRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListLinesUsingResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListMsgInfosUsingRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListMsgInfosUsingResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListOwnTestCasesRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListOwnTestCasesResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListProjectFieldConfigsRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListProjectFieldConfigsResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListProjectTestCaseFieldsRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListProjectTestCaseFieldsResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListPublicLibAndAwsRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListPublicLibAndAwsResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListReportsRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListReportsResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListResourcePoolsRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListResourcePoolsResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListScattersUsingRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListScattersUsingResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListSubTaskCaseOverstockUsingRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListSubTaskCaseOverstockUsingResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTaskAssignCasesRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTaskAssignCasesResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTaskTestCasesRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTaskTestCasesResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTasksRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTasksResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTestCaseCommentsRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTestCaseCommentsResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTestCaseHistoriesRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTestCaseHistoriesRequestBody;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTestCaseHistoriesResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTestCaseScriptDetailRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTestCaseScriptDetailResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTestCasesByIssueRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTestCasesByIssueResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTestCasesRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTestCasesRequestBody;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTestCasesResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTestReportsByConditionRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTestReportsByConditionResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTestTypesRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTestTypesResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTestcasesByProjectIssuesRelationRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListTestcasesByProjectIssuesRelationResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListUsageInfosRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListUsageInfosResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListUserDnsMappingRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListUserDnsMappingResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListUserPackageUsageRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListUserPackageUsageResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListUserPopupInfoRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListUserPopupInfoResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListUsingGetRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListUsingGetResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ListVariablesRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ListVariablesResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.MsgInfoQuery;
import com.huaweicloud.sdk.cloudtest.v1.model.OprReportInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.QueryIssueTreeInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.QueryProjectIssuesRelationTestCasesInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.QueryRequirementsOverviewInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.QueryTaskAssignCasesInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.QueryTaskTestCasesInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.QueryTestCasesByIssueInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.QueryTestItemTreeInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.RemoveIssuesFromIteratorRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.RemoveIssuesFromIteratorResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.RemoveIssuesInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.RunTestCaseRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.RunTestCaseRequestBody;
import com.huaweicloud.sdk.cloudtest.v1.model.RunTestCaseResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.SaveTaskSettingRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.SaveTaskSettingRequestBody;
import com.huaweicloud.sdk.cloudtest.v1.model.SaveTaskSettingResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.SearchRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ServiceRequestBody;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowAllConfigValueByTypeAndKeyRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowAllConfigValueByTypeAndKeyResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowAllFeatureChildrenRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowAllFeatureChildrenResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowApiTestcaseHistoriesRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowApiTestcaseHistoriesResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowAssetRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowAssetResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowAssetTreeRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowAssetTreeResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowBackgroundInfoRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowBackgroundInfoResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowBranchRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowBranchResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowConcurrencyPackageUsingRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowConcurrencyPackageUsingResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowDisclaimerRecordRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowDisclaimerRecordResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowDomainInfoRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowDomainInfoResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowEchoTestPackageUsingRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowEchoTestPackageUsingResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowFactorByAssetIdRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowFactorByAssetIdResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowFactorByIdRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowFactorByIdResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowFeatureChildrenRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowFeatureChildrenResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowFreeDeclarationRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowFreeDeclarationResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowIfTaskNameRepeatRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowIfTaskNameRepeatResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowIfUserNameRepeatRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowIfUserNameRepeatResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowIssuesByPlanIdRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowIssuesByPlanIdResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowIteratorByDefectRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowIteratorByDefectResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowIteratorDetailRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowIteratorDetailResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowMindMapByIdRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowMindMapByIdResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowMindmapByPageRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowMindmapByPageResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowMindmapCreatorNameRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowMindmapCreatorNameResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowOperationalDataCurrentMonthUsingRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowOperationalDataCurrentMonthUsingResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowPlanJournalsRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowPlanJournalsResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowPlanListRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowPlanListResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowPlansRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowPlansResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowProgressRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowProgressResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowProjectDataDashboardRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowProjectDataDashboardResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowRegisterServiceRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowRegisterServiceResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowReportRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowReportResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowRequirementsOverviewRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowRequirementsOverviewResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowReviewByPageRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowReviewByPageResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowSceneByPageRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowSceneByPageResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowStatisticByIdRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowStatisticByIdResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowSystemConfigsRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowSystemConfigsResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowTemplateByPageRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowTemplateByPageResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowTestCaseAndDefectInfoRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowTestCaseAndDefectInfoRequestBody;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowTestCaseAndDefectInfoResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowTestCaseDetailRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowTestCaseDetailResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowTestCaseDetailV2Request;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowTestCaseDetailV2Response;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowTestCaseRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowTestCaseResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowTestCaseReviewsRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowTestCaseReviewsResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowTestCasesChangeStatisticsRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowTestCasesChangeStatisticsResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowTestcaseByPageRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowTestcaseByPageResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowTestpointByPageRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowTestpointByPageResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowUserAccessInfoRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowUserAccessInfoResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowUserExecuteTestCaseInfoRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowUserExecuteTestCaseInfoRequestBody;
import com.huaweicloud.sdk.cloudtest.v1.model.ShowUserExecuteTestCaseInfoResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.TasksQueryInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.TestCaseCommentInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.TestCaseInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.TestCasesQueryInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.TestPlanDetail;
import com.huaweicloud.sdk.cloudtest.v1.model.TestPlanIssueDetail;
import com.huaweicloud.sdk.cloudtest.v1.model.TestPlanJournalList;
import com.huaweicloud.sdk.cloudtest.v1.model.TestReportInfoRequestBody;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateBasicAwByIdRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateBasicAwByIdResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateBasicAwReq;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateIteratorRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateIteratorResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateServiceRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateServiceResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateTestCaseAndScriptRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateTestCaseAndScriptResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateTestCaseCommentRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateTestCaseCommentResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateTestCaseListInfo;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateTestCaseRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateTestCaseRequestBody;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateTestCaseResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateTestCaseResultRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateTestCaseResultRequestBody;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateTestCaseResultResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateUserDnsMappingRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateUserDnsMappingResponse;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateVersionTestCaseRequest;
import com.huaweicloud.sdk.cloudtest.v1.model.UpdateVersionTestCaseResponse;
import com.huaweicloud.sdk.core.TypeCasts;
import com.huaweicloud.sdk.core.http.FieldExistence;
import com.huaweicloud.sdk.core.http.HttpMethod;
import com.huaweicloud.sdk.core.http.HttpRequestDef;
import com.huaweicloud.sdk.core.http.LocationType;

import java.util.List;

@SuppressWarnings("unchecked")
public class CloudtestMeta {

    public static final HttpRequestDef addTestCaseComment =
        genForAddTestCaseComment();

    private static HttpRequestDef genForAddTestCaseComment() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, AddTestCaseCommentRequest.class, AddTestCaseCommentResponse.class)
                .withName("AddTestCaseComment")
                .withUri("/GT3KServer/v4/{project_id}/testcases/{testcase_id}/comments")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(AddTestCaseCommentRequest::getProjectId, AddTestCaseCommentRequest::setProjectId));
        builder.withRequestField("testcase_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(AddTestCaseCommentRequest::getTestcaseId, AddTestCaseCommentRequest::setTestcaseId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(TestCaseCommentInfo.class),
            f -> f.withMarshaller(AddTestCaseCommentRequest::getBody, AddTestCaseCommentRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef batchAddRelationsByOneCase =
        genForBatchAddRelationsByOneCase();

    private static HttpRequestDef genForBatchAddRelationsByOneCase() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.POST,
                    BatchAddRelationsByOneCaseRequest.class,
                    BatchAddRelationsByOneCaseResponse.class)
                .withName("BatchAddRelationsByOneCase")
                .withUri("/testrelation/v4/workitems/{workitem_id}/relations")
                .withContentType("application/json");

        // requests
        builder.withRequestField("workitem_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(BatchAddRelationsByOneCaseRequest::getWorkitemId,
                BatchAddRelationsByOneCaseRequest::setWorkitemId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(AddRelationsInfo.class),
            f -> f.withMarshaller(BatchAddRelationsByOneCaseRequest::getBody,
                BatchAddRelationsByOneCaseRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef batchAddResourcesForIterator =
        genForBatchAddResourcesForIterator();

    private static HttpRequestDef genForBatchAddResourcesForIterator() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.POST,
                    BatchAddResourcesForIteratorRequest.class,
                    BatchAddResourcesForIteratorResponse.class)
                .withName("BatchAddResourcesForIterator")
                .withUri("/GT3KServer/v4/iterators/{iterator_id}/testcases/batch-add")
                .withContentType("application/json");

        // requests
        builder.withRequestField("iterator_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(BatchAddResourcesForIteratorRequest::getIteratorId,
                BatchAddResourcesForIteratorRequest::setIteratorId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(AddResourceInfo.class),
            f -> f.withMarshaller(BatchAddResourcesForIteratorRequest::getBody,
                BatchAddResourcesForIteratorRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef batchDeleteTestCase =
        genForBatchDeleteTestCase();

    private static HttpRequestDef genForBatchDeleteTestCase() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, BatchDeleteTestCaseRequest.class, BatchDeleteTestCaseResponse.class)
                .withName("BatchDeleteTestCase")
                .withUri("/v1/projects/{project_id}/testcases/batch-delete")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(BatchDeleteTestCaseRequest::getProjectId, BatchDeleteTestCaseRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(BatchDeleteTestCaseRequestBody.class),
            f -> f.withMarshaller(BatchDeleteTestCaseRequest::getBody, BatchDeleteTestCaseRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef batchDeleteTestCases =
        genForBatchDeleteTestCases();

    private static HttpRequestDef genForBatchDeleteTestCases() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.DELETE, BatchDeleteTestCasesRequest.class, BatchDeleteTestCasesResponse.class)
            .withName("BatchDeleteTestCases")
            .withUri("/GT3KServer/v4/testcases/batch-delete")
            .withContentType("application/json");

        // requests
        builder.withRequestField("is_async",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(Boolean.class),
            f -> f.withMarshaller(BatchDeleteTestCasesRequest::getIsAsync, BatchDeleteTestCasesRequest::setIsAsync));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(DeleteTestCaseInfo.class),
            f -> f.withMarshaller(BatchDeleteTestCasesRequest::getBody, BatchDeleteTestCasesRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef batchDeleteTestReport =
        genForBatchDeleteTestReport();

    private static HttpRequestDef genForBatchDeleteTestReport() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.DELETE, BatchDeleteTestReportRequest.class, BatchDeleteTestReportResponse.class)
            .withName("BatchDeleteTestReport")
            .withUri("/testreport/v4/{project_id}/test-reports/batch-delete")
            .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(BatchDeleteTestReportRequest::getProjectId,
                BatchDeleteTestReportRequest::setProjectId));
        builder.>withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(List.class),
            f -> f.withMarshaller(BatchDeleteTestReportRequest::getBody, BatchDeleteTestReportRequest::setBody)
                .withInnerContainerType(String.class));

        // response

        return builder.build();
    }

    public static final HttpRequestDef batchRemoveTestCasesFromIterator =
        genForBatchRemoveTestCasesFromIterator();

    private static HttpRequestDef genForBatchRemoveTestCasesFromIterator() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.DELETE,
                    BatchRemoveTestCasesFromIteratorRequest.class,
                    BatchRemoveTestCasesFromIteratorResponse.class)
                .withName("BatchRemoveTestCasesFromIterator")
                .withUri("/GT3KServer/v4/iterators/{iterator_id}/testcases/batch-delete")
                .withContentType("application/json");

        // requests
        builder.withRequestField("iterator_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(BatchRemoveTestCasesFromIteratorRequest::getIteratorId,
                BatchRemoveTestCasesFromIteratorRequest::setIteratorId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(CaseRemoveInfo.class),
            f -> f.withMarshaller(BatchRemoveTestCasesFromIteratorRequest::getBody,
                BatchRemoveTestCasesFromIteratorRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef batchUpdateVersionTestCases =
        genForBatchUpdateVersionTestCases();

    private static HttpRequestDef genForBatchUpdateVersionTestCases() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.PUT,
                    BatchUpdateVersionTestCasesRequest.class,
                    BatchUpdateVersionTestCasesResponse.class)
                .withName("BatchUpdateVersionTestCases")
                .withUri("/GT3KServer/v4/{project_id}/testcases/batch-update")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(BatchUpdateVersionTestCasesRequest::getProjectId,
                BatchUpdateVersionTestCasesRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(UpdateTestCaseListInfo.class),
            f -> f.withMarshaller(BatchUpdateVersionTestCasesRequest::getBody,
                BatchUpdateVersionTestCasesRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef checkPermission =
        genForCheckPermission();

    private static HttpRequestDef genForCheckPermission() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, CheckPermissionRequest.class, CheckPermissionResponse.class)
                .withName("CheckPermission")
                .withUri("/v1/{project_id}/permission/{id}")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(CheckPermissionRequest::getProjectId, CheckPermissionRequest::setProjectId));
        builder.withRequestField("id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(CheckPermissionRequest::getId, CheckPermissionRequest::setId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef createIterator =
        genForCreateIterator();

    private static HttpRequestDef genForCreateIterator() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, CreateIteratorRequest.class, CreateIteratorResponse.class)
                .withName("CreateIterator")
                .withUri("/GT3KServer/v4/iterators")
                .withContentType("application/json");

        // requests
        builder.withRequestField("branch_uri",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(CreateIteratorRequest::getBranchUri, CreateIteratorRequest::setBranchUri));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(IteratorVersionInfo.class),
            f -> f.withMarshaller(CreateIteratorRequest::getBody, CreateIteratorRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef createPlan = genForCreatePlan();

    private static HttpRequestDef genForCreatePlan() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, CreatePlanRequest.class, CreatePlanResponse.class)
                .withName("CreatePlan")
                .withUri("/v1/projects/{project_id}/plans")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(CreatePlanRequest::getProjectId, CreatePlanRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(CreatePlanRequestBody.class),
            f -> f.withMarshaller(CreatePlanRequest::getBody, CreatePlanRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef createProjectBranch =
        genForCreateProjectBranch();

    private static HttpRequestDef genForCreateProjectBranch() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, CreateProjectBranchRequest.class, CreateProjectBranchResponse.class)
                .withName("CreateProjectBranch")
                .withUri("/GT3KServer/v4/branches")
                .withContentType("application/json");

        // requests
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(BranchVersionInfo.class),
            f -> f.withMarshaller(CreateProjectBranchRequest::getBody, CreateProjectBranchRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef createRelationsByOneCase =
        genForCreateRelationsByOneCase();

    private static HttpRequestDef genForCreateRelationsByOneCase() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.POST, CreateRelationsByOneCaseRequest.class, CreateRelationsByOneCaseResponse.class)
                .withName("CreateRelationsByOneCase")
                .withUri("/testrelation/v4/testcases/{case_id}/relations")
                .withContentType("application/json");

        // requests
        builder.withRequestField("case_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(CreateRelationsByOneCaseRequest::getCaseId,
                CreateRelationsByOneCaseRequest::setCaseId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(AddRelationsInfo.class),
            f -> f.withMarshaller(CreateRelationsByOneCaseRequest::getBody, CreateRelationsByOneCaseRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef createReport = genForCreateReport();

    private static HttpRequestDef genForCreateReport() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, CreateReportRequest.class, CreateReportResponse.class)
                .withName("CreateReport")
                .withUri("/GT3KServer/v4/{project_id}/versions/{version_id}/custom-reports")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(CreateReportRequest::getProjectId, CreateReportRequest::setProjectId));
        builder.withRequestField("version_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(CreateReportRequest::getVersionId, CreateReportRequest::setVersionId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(OprReportInfo.class),
            f -> f.withMarshaller(CreateReportRequest::getBody, CreateReportRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef createResourceUri =
        genForCreateResourceUri();

    private static HttpRequestDef genForCreateResourceUri() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, CreateResourceUriRequest.class, CreateResourceUriResponse.class)
                .withName("CreateResourceUri")
                .withUri("/GT3KServer/v4/{project_id}/resource-uri")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(CreateResourceUriRequest::getProjectId, CreateResourceUriRequest::setProjectId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef createService =
        genForCreateService();

    private static HttpRequestDef genForCreateService() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, CreateServiceRequest.class, CreateServiceResponse.class)
                .withName("CreateService")
                .withUri("/v1/services")
                .withContentType("application/json");

        // requests
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(ServiceRequestBody.class),
            f -> f.withMarshaller(CreateServiceRequest::getBody, CreateServiceRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef createTestCase =
        genForCreateTestCase();

    private static HttpRequestDef genForCreateTestCase() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, CreateTestCaseRequest.class, CreateTestCaseResponse.class)
                .withName("CreateTestCase")
                .withUri("/v1/projects/{project_id}/testcases")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(CreateTestCaseRequest::getProjectId, CreateTestCaseRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(CreateTestCaseRequestBody.class),
            f -> f.withMarshaller(CreateTestCaseRequest::getBody, CreateTestCaseRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef createTestCaseInPlan =
        genForCreateTestCaseInPlan();

    private static HttpRequestDef genForCreateTestCaseInPlan() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.POST, CreateTestCaseInPlanRequest.class, CreateTestCaseInPlanResponse.class)
            .withName("CreateTestCaseInPlan")
            .withUri("/v1/projects/{project_id}/plans/{plan_id}/testcases/batch-add")
            .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(CreateTestCaseInPlanRequest::getProjectId,
                CreateTestCaseInPlanRequest::setProjectId));
        builder.withRequestField("plan_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(CreateTestCaseInPlanRequest::getPlanId, CreateTestCaseInPlanRequest::setPlanId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(CreateTestCaseInPlanRequestBody.class),
            f -> f.withMarshaller(CreateTestCaseInPlanRequest::getBody, CreateTestCaseInPlanRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef createUserDefinedUrlKeyWord =
        genForCreateUserDefinedUrlKeyWord();

    private static HttpRequestDef genForCreateUserDefinedUrlKeyWord() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.POST,
                    CreateUserDefinedUrlKeyWordRequest.class,
                    CreateUserDefinedUrlKeyWordResponse.class)
                .withName("CreateUserDefinedUrlKeyWord")
                .withUri("/v1/{project_id}/basic-aw")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(CreateUserDefinedUrlKeyWordRequest::getProjectId,
                CreateUserDefinedUrlKeyWordRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(CreateBasicAwReq.class),
            f -> f.withMarshaller(CreateUserDefinedUrlKeyWordRequest::getBody,
                CreateUserDefinedUrlKeyWordRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef createVersionTestCase =
        genForCreateVersionTestCase();

    private static HttpRequestDef genForCreateVersionTestCase() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.POST, CreateVersionTestCaseRequest.class, CreateVersionTestCaseResponse.class)
            .withName("CreateVersionTestCase")
            .withUri("/GT3KServer/v4/versions/{version_id}/testcases")
            .withContentType("application/json");

        // requests
        builder.withRequestField("version_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(CreateVersionTestCaseRequest::getVersionId,
                CreateVersionTestCaseRequest::setVersionId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(TestCaseInfo.class),
            f -> f.withMarshaller(CreateVersionTestCaseRequest::getBody, CreateVersionTestCaseRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef deleteBasicAwById =
        genForDeleteBasicAwById();

    private static HttpRequestDef genForDeleteBasicAwById() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.DELETE, DeleteBasicAwByIdRequest.class, DeleteBasicAwByIdResponse.class)
                .withName("DeleteBasicAwById")
                .withUri("/v3/{project_id}/basic-aw/{aw_id}")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(DeleteBasicAwByIdRequest::getProjectId, DeleteBasicAwByIdRequest::setProjectId));
        builder.withRequestField("aw_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(DeleteBasicAwByIdRequest::getAwId, DeleteBasicAwByIdRequest::setAwId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef deleteRelationsByOneCase =
        genForDeleteRelationsByOneCase();

    private static HttpRequestDef genForDeleteRelationsByOneCase() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.DELETE,
                    DeleteRelationsByOneCaseRequest.class,
                    DeleteRelationsByOneCaseResponse.class)
                .withName("DeleteRelationsByOneCase")
                .withUri("/testrelation/v4/testcases/{case_id}/relations")
                .withContentType("application/json");

        // requests
        builder.withRequestField("case_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(DeleteRelationsByOneCaseRequest::getCaseId,
                DeleteRelationsByOneCaseRequest::setCaseId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(DeleteRelationsByOneCaseInfo.class),
            f -> f.withMarshaller(DeleteRelationsByOneCaseRequest::getBody, DeleteRelationsByOneCaseRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef deleteService =
        genForDeleteService();

    private static HttpRequestDef genForDeleteService() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.DELETE, DeleteServiceRequest.class, DeleteServiceResponse.class)
                .withName("DeleteService")
                .withUri("/v1/services/{service_id}")
                .withContentType("application/json");

        // requests
        builder.withRequestField("service_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(DeleteServiceRequest::getServiceId, DeleteServiceRequest::setServiceId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef deleteTestCaseComment =
        genForDeleteTestCaseComment();

    private static HttpRequestDef genForDeleteTestCaseComment() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.DELETE, DeleteTestCaseCommentRequest.class, DeleteTestCaseCommentResponse.class)
            .withName("DeleteTestCaseComment")
            .withUri("/GT3KServer/v4/{project_id}/testcases/{testcase_id}/comments/{comment_id}")
            .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(DeleteTestCaseCommentRequest::getProjectId,
                DeleteTestCaseCommentRequest::setProjectId));
        builder.withRequestField("testcase_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(DeleteTestCaseCommentRequest::getTestcaseId,
                DeleteTestCaseCommentRequest::setTestcaseId));
        builder.withRequestField("comment_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(DeleteTestCaseCommentRequest::getCommentId,
                DeleteTestCaseCommentRequest::setCommentId));
        builder.withRequestField("version_uri",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(DeleteTestCaseCommentRequest::getVersionUri,
                DeleteTestCaseCommentRequest::setVersionUri));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listAlarmStatisticsUsing =
        genForListAlarmStatisticsUsing();

    private static HttpRequestDef genForListAlarmStatisticsUsing() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.POST, ListAlarmStatisticsUsingRequest.class, ListAlarmStatisticsUsingResponse.class)
                .withName("ListAlarmStatisticsUsing")
                .withUri("/v1/projects/{service_id}/dashboards/alarm/statistics")
                .withContentType("application/json");

        // requests
        builder.withRequestField("service_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListAlarmStatisticsUsingRequest::getServiceId,
                ListAlarmStatisticsUsingRequest::setServiceId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(AlarmStatisticsQuery.class),
            f -> f.withMarshaller(ListAlarmStatisticsUsingRequest::getBody, ListAlarmStatisticsUsingRequest::setBody));

        // response
        builder.>withResponseField("body",
            LocationType.Body,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(List.class),
            f -> f.withMarshaller(ListAlarmStatisticsUsingResponse::getBody, ListAlarmStatisticsUsingResponse::setBody)
                .withInnerContainerType(AlertStatisticsDto.class));

        return builder.build();
    }

    public static final HttpRequestDef listAlertGroupsByCondition =
        genForListAlertGroupsByCondition();

    private static HttpRequestDef genForListAlertGroupsByCondition() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.POST,
                    ListAlertGroupsByConditionRequest.class,
                    ListAlertGroupsByConditionResponse.class)
                .withName("ListAlertGroupsByCondition")
                .withUri("/v1/projects/{service_id}/alert/group/users")
                .withContentType("application/json");

        // requests
        builder.withRequestField("service_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListAlertGroupsByConditionRequest::getServiceId,
                ListAlertGroupsByConditionRequest::setServiceId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(ListAlertGroupsByConditionRequestBody.class),
            f -> f.withMarshaller(ListAlertGroupsByConditionRequest::getBody,
                ListAlertGroupsByConditionRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listAlertTemplates =
        genForListAlertTemplates();

    private static HttpRequestDef genForListAlertTemplates() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ListAlertTemplatesRequest.class, ListAlertTemplatesResponse.class)
                .withName("ListAlertTemplates")
                .withUri("/v1/projects/{service_id}/alert-templates")
                .withContentType("application/json");

        // requests
        builder.withRequestField("service_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListAlertTemplatesRequest::getServiceId, ListAlertTemplatesRequest::setServiceId));
        builder.withRequestField("name",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListAlertTemplatesRequest::getName, ListAlertTemplatesRequest::setName));
        builder.withRequestField("pageNum",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(ListAlertTemplatesRequest::getPageNum, ListAlertTemplatesRequest::setPageNum));
        builder.withRequestField("pageSize",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(ListAlertTemplatesRequest::getPageSize, ListAlertTemplatesRequest::setPageSize));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listAllBranches =
        genForListAllBranches();

    private static HttpRequestDef genForListAllBranches() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ListAllBranchesRequest.class, ListAllBranchesResponse.class)
                .withName("ListAllBranches")
                .withUri("/GT3KServer/v4/branches")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_uuid",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListAllBranchesRequest::getProjectUuid, ListAllBranchesRequest::setProjectUuid));
        builder.withRequestField("sort_field",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListAllBranchesRequest::getSortField, ListAllBranchesRequest::setSortField));
        builder.withRequestField("sort_type",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListAllBranchesRequest::getSortType, ListAllBranchesRequest::setSortType));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listAllConfigItemByType =
        genForListAllConfigItemByType();

    private static HttpRequestDef genForListAllConfigItemByType() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.POST, ListAllConfigItemByTypeRequest.class, ListAllConfigItemByTypeResponse.class)
            .withName("ListAllConfigItemByType")
            .withUri("/v1/projects/{service_id}/service/configs")
            .withContentType("application/json");

        // requests
        builder.withRequestField("service_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListAllConfigItemByTypeRequest::getServiceId,
                ListAllConfigItemByTypeRequest::setServiceId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(ListAllConfigItemByTypeRequestBody.class),
            f -> f.withMarshaller(ListAllConfigItemByTypeRequest::getBody, ListAllConfigItemByTypeRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listAllIterators =
        genForListAllIterators();

    private static HttpRequestDef genForListAllIterators() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ListAllIteratorsRequest.class, ListAllIteratorsResponse.class)
                .withName("ListAllIterators")
                .withUri("/GT3KServer/v4/projects/{project_id}/iterator-infos")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListAllIteratorsRequest::getProjectId, ListAllIteratorsRequest::setProjectId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listAllTestCases =
        genForListAllTestCases();

    private static HttpRequestDef genForListAllTestCases() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ListAllTestCasesRequest.class, ListAllTestCasesResponse.class)
                .withName("ListAllTestCases")
                .withUri("/GT3KServer/v4/{project_id}/testcases/batch-query")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListAllTestCasesRequest::getProjectId, ListAllTestCasesRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(TestCasesQueryInfo.class),
            f -> f.withMarshaller(ListAllTestCasesRequest::getBody, ListAllTestCasesRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listAttachments =
        genForListAttachments();

    private static HttpRequestDef genForListAttachments() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ListAttachmentsRequest.class, ListAttachmentsResponse.class)
                .withName("ListAttachments")
                .withUri("/GT3KServer/v4/{project_id}/resources/{resource_uri}/attachments")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListAttachmentsRequest::getProjectId, ListAttachmentsRequest::setProjectId));
        builder.withRequestField("resource_uri",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListAttachmentsRequest::getResourceUri, ListAttachmentsRequest::setResourceUri));
        builder.withRequestField("resource_type",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListAttachmentsRequest::getResourceType, ListAttachmentsRequest::setResourceType));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listAvailableConfig =
        genForListAvailableConfig();

    private static HttpRequestDef genForListAvailableConfig() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ListAvailableConfigRequest.class, ListAvailableConfigResponse.class)
                .withName("ListAvailableConfig")
                .withUri("/v1/{project_id}/available/config")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListAvailableConfigRequest::getProjectId, ListAvailableConfigRequest::setProjectId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listBasicAw = genForListBasicAw();

    private static HttpRequestDef genForListBasicAw() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ListBasicAwRequest.class, ListBasicAwResponse.class)
                .withName("ListBasicAw")
                .withUri("/v3/{project_id}/basic-aw/{aw_id}")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListBasicAwRequest::getProjectId, ListBasicAwRequest::setProjectId));
        builder.withRequestField("aw_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListBasicAwRequest::getAwId, ListBasicAwRequest::setAwId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listBasicAwInfoListSupportsSearch =
        genForListBasicAwInfoListSupportsSearch();

    private static HttpRequestDef genForListBasicAwInfoListSupportsSearch() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.POST,
                    ListBasicAwInfoListSupportsSearchRequest.class,
                    ListBasicAwInfoListSupportsSearchResponse.class)
                .withName("ListBasicAwInfoListSupportsSearch")
                .withUri("/v4/{project_id}/aw-cata/aw-info-list")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListBasicAwInfoListSupportsSearchRequest::getProjectId,
                ListBasicAwInfoListSupportsSearchRequest::setProjectId));
        builder.withRequestField("page_no",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListBasicAwInfoListSupportsSearchRequest::getPageNo,
                ListBasicAwInfoListSupportsSearchRequest::setPageNo));
        builder.withRequestField("page_size",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListBasicAwInfoListSupportsSearchRequest::getPageSize,
                ListBasicAwInfoListSupportsSearchRequest::setPageSize));
        builder.withRequestField("parent_id",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListBasicAwInfoListSupportsSearchRequest::getParentId,
                ListBasicAwInfoListSupportsSearchRequest::setParentId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(SearchRequest.class),
            f -> f.withMarshaller(ListBasicAwInfoListSupportsSearchRequest::getBody,
                ListBasicAwInfoListSupportsSearchRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listBranches = genForListBranches();

    private static HttpRequestDef genForListBranches() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ListBranchesRequest.class, ListBranchesResponse.class)
                .withName("ListBranches")
                .withUri("/v1/{project_id}/branches")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListBranchesRequest::getProjectId, ListBranchesRequest::setProjectId));
        builder.withRequestField("sort_field",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(ListBranchesRequest.SortFieldEnum.class),
            f -> f.withMarshaller(ListBranchesRequest::getSortField, ListBranchesRequest::setSortField));
        builder.withRequestField("sort_type",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(ListBranchesRequest.SortTypeEnum.class),
            f -> f.withMarshaller(ListBranchesRequest::getSortType, ListBranchesRequest::setSortType));
        builder.withRequestField("offset",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(ListBranchesRequest::getOffset, ListBranchesRequest::setOffset));
        builder.withRequestField("limit",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(ListBranchesRequest::getLimit, ListBranchesRequest::setLimit));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listCasesStatus =
        genForListCasesStatus();

    private static HttpRequestDef genForListCasesStatus() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ListCasesStatusRequest.class, ListCasesStatusResponse.class)
                .withName("ListCasesStatus")
                .withUri("/v2/querycasestatus")
                .withContentType("application/json");

        // requests
        builder.withRequestField("testServiceId",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListCasesStatusRequest::getTestServiceId, ListCasesStatusRequest::setTestServiceId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListCasesStatusRequest::getBody, ListCasesStatusRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listDomainVisibleServices =
        genForListDomainVisibleServices();

    private static HttpRequestDef genForListDomainVisibleServices() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.GET,
                    ListDomainVisibleServicesRequest.class,
                    ListDomainVisibleServicesResponse.class)
                .withName("ListDomainVisibleServices")
                .withUri("/GT3KServer/v4/{project_id}/visible-services")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListDomainVisibleServicesRequest::getProjectId,
                ListDomainVisibleServicesRequest::setProjectId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listIssueTree =
        genForListIssueTree();

    private static HttpRequestDef genForListIssueTree() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ListIssueTreeRequest.class, ListIssueTreeResponse.class)
                .withName("ListIssueTree")
                .withUri("/GT3KServer/v4/{project_id}/versions/{version_id}/issue-tree")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListIssueTreeRequest::getProjectId, ListIssueTreeRequest::setProjectId));
        builder.withRequestField("version_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListIssueTreeRequest::getVersionId, ListIssueTreeRequest::setVersionId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(QueryIssueTreeInfo.class),
            f -> f.withMarshaller(ListIssueTreeRequest::getBody, ListIssueTreeRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listIteratorIssueTree =
        genForListIteratorIssueTree();

    private static HttpRequestDef genForListIteratorIssueTree() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.POST, ListIteratorIssueTreeRequest.class, ListIteratorIssueTreeResponse.class)
            .withName("ListIteratorIssueTree")
            .withUri("/GT3KServer/v4/{project_id}/iterators/{iterator_id}/issues/batch-query")
            .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListIteratorIssueTreeRequest::getProjectId,
                ListIteratorIssueTreeRequest::setProjectId));
        builder.withRequestField("iterator_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListIteratorIssueTreeRequest::getIteratorId,
                ListIteratorIssueTreeRequest::setIteratorId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(IssueTreeInfo.class),
            f -> f.withMarshaller(ListIteratorIssueTreeRequest::getBody, ListIteratorIssueTreeRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listIterators =
        genForListIterators();

    private static HttpRequestDef genForListIterators() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ListIteratorsRequest.class, ListIteratorsResponse.class)
                .withName("ListIterators")
                .withUri("/GT3KServer/v4/iterators/batch-query")
                .withContentType("application/json");

        // requests
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(IteratorVersionsQueryInfo.class),
            f -> f.withMarshaller(ListIteratorsRequest::getBody, ListIteratorsRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listLinesUsing =
        genForListLinesUsing();

    private static HttpRequestDef genForListLinesUsing() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ListLinesUsingRequest.class, ListLinesUsingResponse.class)
                .withName("ListLinesUsing")
                .withUri("/v2/projects/{service_id}/dashboards/lines")
                .withContentType("application/json");

        // requests
        builder.withRequestField("service_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListLinesUsingRequest::getServiceId, ListLinesUsingRequest::setServiceId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(DashboardDataQuery.class),
            f -> f.withMarshaller(ListLinesUsingRequest::getBody, ListLinesUsingRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listMsgInfosUsing =
        genForListMsgInfosUsing();

    private static HttpRequestDef genForListMsgInfosUsing() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ListMsgInfosUsingRequest.class, ListMsgInfosUsingResponse.class)
                .withName("ListMsgInfosUsing")
                .withUri("/v2/projects/{service_id}/dashboards/alarm/msgs")
                .withContentType("application/json");

        // requests
        builder.withRequestField("service_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListMsgInfosUsingRequest::getServiceId, ListMsgInfosUsingRequest::setServiceId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(MsgInfoQuery.class),
            f -> f.withMarshaller(ListMsgInfosUsingRequest::getBody, ListMsgInfosUsingRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listOwnTestCases =
        genForListOwnTestCases();

    private static HttpRequestDef genForListOwnTestCases() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ListOwnTestCasesRequest.class, ListOwnTestCasesResponse.class)
                .withName("ListOwnTestCases")
                .withUri("/GT3KServer/v4/current-user/testcases")
                .withContentType("application/json");

        // requests
        builder.withRequestField("page_no",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(ListOwnTestCasesRequest::getPageNo, ListOwnTestCasesRequest::setPageNo));
        builder.withRequestField("page_size",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(ListOwnTestCasesRequest::getPageSize, ListOwnTestCasesRequest::setPageSize));
        builder.withRequestField("sort_field",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListOwnTestCasesRequest::getSortField, ListOwnTestCasesRequest::setSortField));
        builder.withRequestField("sort_type",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListOwnTestCasesRequest::getSortType, ListOwnTestCasesRequest::setSortType));
        builder.withRequestField("keyword",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListOwnTestCasesRequest::getKeyword, ListOwnTestCasesRequest::setKeyword));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listProjectFieldConfigs =
        genForListProjectFieldConfigs();

    private static HttpRequestDef genForListProjectFieldConfigs() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.GET, ListProjectFieldConfigsRequest.class, ListProjectFieldConfigsResponse.class)
            .withName("ListProjectFieldConfigs")
            .withUri("/GT3KServer/v4/projects/{project_id}/field-configs")
            .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListProjectFieldConfigsRequest::getProjectId,
                ListProjectFieldConfigsRequest::setProjectId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listProjectTestCaseFields =
        genForListProjectTestCaseFields();

    private static HttpRequestDef genForListProjectTestCaseFields() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.GET,
                    ListProjectTestCaseFieldsRequest.class,
                    ListProjectTestCaseFieldsResponse.class)
                .withName("ListProjectTestCaseFields")
                .withUri("/GT3KServer/v4/{project_id}/testcase/field/batch-query")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListProjectTestCaseFieldsRequest::getProjectId,
                ListProjectTestCaseFieldsRequest::setProjectId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listPublicLibAndAws =
        genForListPublicLibAndAws();

    private static HttpRequestDef genForListPublicLibAndAws() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ListPublicLibAndAwsRequest.class, ListPublicLibAndAwsResponse.class)
                .withName("ListPublicLibAndAws")
                .withUri("/v1/project/{project_id}/public_aw_lib_and_aws")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListPublicLibAndAwsRequest::getProjectId, ListPublicLibAndAwsRequest::setProjectId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listReports = genForListReports();

    private static HttpRequestDef genForListReports() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ListReportsRequest.class, ListReportsResponse.class)
                .withName("ListReports")
                .withUri("/testreport/v4/{project_id}/versions/{version_id}/custom-reports")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListReportsRequest::getProjectId, ListReportsRequest::setProjectId));
        builder.withRequestField("version_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListReportsRequest::getVersionId, ListReportsRequest::setVersionId));
        builder.withRequestField("page_size",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Long.class),
            f -> f.withMarshaller(ListReportsRequest::getPageSize, ListReportsRequest::setPageSize));
        builder.withRequestField("offset",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Long.class),
            f -> f.withMarshaller(ListReportsRequest::getOffset, ListReportsRequest::setOffset));
        builder.withRequestField("type",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(ListReportsRequest::getType, ListReportsRequest::setType));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listResourcePools =
        genForListResourcePools();

    private static HttpRequestDef genForListResourcePools() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ListResourcePoolsRequest.class, ListResourcePoolsResponse.class)
                .withName("ListResourcePools")
                .withUri("/testexecutor/v4/{project_id}/resource-pools")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListResourcePoolsRequest::getProjectId, ListResourcePoolsRequest::setProjectId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listScattersUsing =
        genForListScattersUsing();

    private static HttpRequestDef genForListScattersUsing() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ListScattersUsingRequest.class, ListScattersUsingResponse.class)
                .withName("ListScattersUsing")
                .withUri("/v2/projects/{service_id}/dashboards/scatters")
                .withContentType("application/json");

        // requests
        builder.withRequestField("service_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListScattersUsingRequest::getServiceId, ListScattersUsingRequest::setServiceId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(DashboardDataQuery.class),
            f -> f.withMarshaller(ListScattersUsingRequest::getBody, ListScattersUsingRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listSubTaskCaseOverstockUsing =
        genForListSubTaskCaseOverstockUsing();

    private static HttpRequestDef genForListSubTaskCaseOverstockUsing() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.GET,
                    ListSubTaskCaseOverstockUsingRequest.class,
                    ListSubTaskCaseOverstockUsingResponse.class)
                .withName("ListSubTaskCaseOverstockUsing")
                .withUri("/v1/projects/{service_id}/dashboard/statistic/block")
                .withContentType("application/json");

        // requests
        builder.withRequestField("service_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListSubTaskCaseOverstockUsingRequest::getServiceId,
                ListSubTaskCaseOverstockUsingRequest::setServiceId));
        builder.withRequestField("startTime",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Long.class),
            f -> f.withMarshaller(ListSubTaskCaseOverstockUsingRequest::getStartTime,
                ListSubTaskCaseOverstockUsingRequest::setStartTime));
        builder.withRequestField("endTime",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Long.class),
            f -> f.withMarshaller(ListSubTaskCaseOverstockUsingRequest::getEndTime,
                ListSubTaskCaseOverstockUsingRequest::setEndTime));
        builder.withRequestField("executorType",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListSubTaskCaseOverstockUsingRequest::getExecutorType,
                ListSubTaskCaseOverstockUsingRequest::setExecutorType));
        builder.withRequestField("label",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListSubTaskCaseOverstockUsingRequest::getLabel,
                ListSubTaskCaseOverstockUsingRequest::setLabel));
        builder.withRequestField("locationId",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListSubTaskCaseOverstockUsingRequest::getLocationId,
                ListSubTaskCaseOverstockUsingRequest::setLocationId));
        builder.withRequestField("pageNum",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(ListSubTaskCaseOverstockUsingRequest::getPageNum,
                ListSubTaskCaseOverstockUsingRequest::setPageNum));
        builder.withRequestField("pageSize",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(ListSubTaskCaseOverstockUsingRequest::getPageSize,
                ListSubTaskCaseOverstockUsingRequest::setPageSize));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listTaskAssignCases =
        genForListTaskAssignCases();

    private static HttpRequestDef genForListTaskAssignCases() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ListTaskAssignCasesRequest.class, ListTaskAssignCasesResponse.class)
                .withName("ListTaskAssignCases")
                .withUri("/GT3KServer/v4/{project_id}/tasks/{task_id}/testcases/batch-query")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTaskAssignCasesRequest::getProjectId, ListTaskAssignCasesRequest::setProjectId));
        builder.withRequestField("task_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTaskAssignCasesRequest::getTaskId, ListTaskAssignCasesRequest::setTaskId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(QueryTaskAssignCasesInfo.class),
            f -> f.withMarshaller(ListTaskAssignCasesRequest::getBody, ListTaskAssignCasesRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listTaskTestCases =
        genForListTaskTestCases();

    private static HttpRequestDef genForListTaskTestCases() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ListTaskTestCasesRequest.class, ListTaskTestCasesResponse.class)
                .withName("ListTaskTestCases")
                .withUri("/GT3KServer/v4/{project_id}/testcases/tasks/batch-query")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTaskTestCasesRequest::getProjectId, ListTaskTestCasesRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(QueryTaskTestCasesInfo.class),
            f -> f.withMarshaller(ListTaskTestCasesRequest::getBody, ListTaskTestCasesRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listTasks = genForListTasks();

    private static HttpRequestDef genForListTasks() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ListTasksRequest.class, ListTasksResponse.class)
                .withName("ListTasks")
                .withUri("/GT3KServer/v4/{project_id}/versions/{version_id}/tasks/batch-query")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTasksRequest::getProjectId, ListTasksRequest::setProjectId));
        builder.withRequestField("version_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTasksRequest::getVersionId, ListTasksRequest::setVersionId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(TasksQueryInfo.class),
            f -> f.withMarshaller(ListTasksRequest::getBody, ListTasksRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listTestCaseComments =
        genForListTestCaseComments();

    private static HttpRequestDef genForListTestCaseComments() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.GET, ListTestCaseCommentsRequest.class, ListTestCaseCommentsResponse.class)
            .withName("ListTestCaseComments")
            .withUri("/GT3KServer/v4/{project_id}/testcases/{testcase_id}/comments")
            .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTestCaseCommentsRequest::getProjectId,
                ListTestCaseCommentsRequest::setProjectId));
        builder.withRequestField("testcase_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTestCaseCommentsRequest::getTestcaseId,
                ListTestCaseCommentsRequest::setTestcaseId));
        builder.withRequestField("page_no",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(ListTestCaseCommentsRequest::getPageNo, ListTestCaseCommentsRequest::setPageNo));
        builder.withRequestField("page_size",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(ListTestCaseCommentsRequest::getPageSize, ListTestCaseCommentsRequest::setPageSize));
        builder.withRequestField("version_uri",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTestCaseCommentsRequest::getVersionUri,
                ListTestCaseCommentsRequest::setVersionUri));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listTestCaseHistories =
        genForListTestCaseHistories();

    private static HttpRequestDef genForListTestCaseHistories() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.POST, ListTestCaseHistoriesRequest.class, ListTestCaseHistoriesResponse.class)
            .withName("ListTestCaseHistories")
            .withUri("/v1/{project_id}/testcases/{testcase_id}/histories/batch-query")
            .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTestCaseHistoriesRequest::getProjectId,
                ListTestCaseHistoriesRequest::setProjectId));
        builder.withRequestField("testcase_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTestCaseHistoriesRequest::getTestcaseId,
                ListTestCaseHistoriesRequest::setTestcaseId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(ListTestCaseHistoriesRequestBody.class),
            f -> f.withMarshaller(ListTestCaseHistoriesRequest::getBody, ListTestCaseHistoriesRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listTestCaseScriptDetail =
        genForListTestCaseScriptDetail();

    private static HttpRequestDef genForListTestCaseScriptDetail() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.GET, ListTestCaseScriptDetailRequest.class, ListTestCaseScriptDetailResponse.class)
                .withName("ListTestCaseScriptDetail")
                .withUri("/v4/{project_id}/testcase/{tmss_case_uri}")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTestCaseScriptDetailRequest::getProjectId,
                ListTestCaseScriptDetailRequest::setProjectId));
        builder.withRequestField("tmss_case_uri",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTestCaseScriptDetailRequest::getTmssCaseUri,
                ListTestCaseScriptDetailRequest::setTmssCaseUri));
        builder.withRequestField("task_id",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTestCaseScriptDetailRequest::getTaskId,
                ListTestCaseScriptDetailRequest::setTaskId));

        // response
        builder.withResponseField("body",
            LocationType.Body,
            FieldExistence.NULL_IGNORE,
            String.class,
            f -> f.withMarshaller(ListTestCaseScriptDetailResponse::getBody,
                ListTestCaseScriptDetailResponse::setBody));

        return builder.build();
    }

    public static final HttpRequestDef listTestCases =
        genForListTestCases();

    private static HttpRequestDef genForListTestCases() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ListTestCasesRequest.class, ListTestCasesResponse.class)
                .withName("ListTestCases")
                .withUri("/v1/{project_id}/testcases/batch-query")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTestCasesRequest::getProjectId, ListTestCasesRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(ListTestCasesRequestBody.class),
            f -> f.withMarshaller(ListTestCasesRequest::getBody, ListTestCasesRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listTestCasesByIssue =
        genForListTestCasesByIssue();

    private static HttpRequestDef genForListTestCasesByIssue() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.POST, ListTestCasesByIssueRequest.class, ListTestCasesByIssueResponse.class)
            .withName("ListTestCasesByIssue")
            .withUri("/testrelation/v4/{project_id}/issues/{issue_id}/testcases/batch-query")
            .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTestCasesByIssueRequest::getProjectId,
                ListTestCasesByIssueRequest::setProjectId));
        builder.withRequestField("issue_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTestCasesByIssueRequest::getIssueId, ListTestCasesByIssueRequest::setIssueId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(QueryTestCasesByIssueInfo.class),
            f -> f.withMarshaller(ListTestCasesByIssueRequest::getBody, ListTestCasesByIssueRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listTestReportsByCondition =
        genForListTestReportsByCondition();

    private static HttpRequestDef genForListTestReportsByCondition() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.GET,
                    ListTestReportsByConditionRequest.class,
                    ListTestReportsByConditionResponse.class)
                .withName("ListTestReportsByCondition")
                .withUri("/testreport/v4/{project_id}/test-reports")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTestReportsByConditionRequest::getProjectId,
                ListTestReportsByConditionRequest::setProjectId));
        builder.withRequestField("page_size",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Long.class),
            f -> f.withMarshaller(ListTestReportsByConditionRequest::getPageSize,
                ListTestReportsByConditionRequest::setPageSize));
        builder.withRequestField("offset",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Long.class),
            f -> f.withMarshaller(ListTestReportsByConditionRequest::getOffset,
                ListTestReportsByConditionRequest::setOffset));
        builder.withRequestField("key_word",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTestReportsByConditionRequest::getKeyWord,
                ListTestReportsByConditionRequest::setKeyWord));
        builder.withRequestField("own",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(Boolean.class),
            f -> f.withMarshaller(ListTestReportsByConditionRequest::getOwn,
                ListTestReportsByConditionRequest::setOwn));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listTestTypes =
        genForListTestTypes();

    private static HttpRequestDef genForListTestTypes() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ListTestTypesRequest.class, ListTestTypesResponse.class)
                .withName("ListTestTypes")
                .withUri("/GT3KServer/v4/{project_id}/test-types")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTestTypesRequest::getProjectId, ListTestTypesRequest::setProjectId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listTestcasesByProjectIssuesRelation =
        genForListTestcasesByProjectIssuesRelation();

    private static HttpRequestDef genForListTestcasesByProjectIssuesRelation() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.POST,
                    ListTestcasesByProjectIssuesRelationRequest.class,
                    ListTestcasesByProjectIssuesRelationResponse.class)
                .withName("ListTestcasesByProjectIssuesRelation")
                .withUri("/v1/{project_id}/issues/testcases/batch-query")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListTestcasesByProjectIssuesRelationRequest::getProjectId,
                ListTestcasesByProjectIssuesRelationRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(QueryProjectIssuesRelationTestCasesInfo.class),
            f -> f.withMarshaller(ListTestcasesByProjectIssuesRelationRequest::getBody,
                ListTestcasesByProjectIssuesRelationRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listUsageInfos =
        genForListUsageInfos();

    private static HttpRequestDef genForListUsageInfos() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ListUsageInfosRequest.class, ListUsageInfosResponse.class)
                .withName("ListUsageInfos")
                .withUri("/GT3KServer/v4/domain/usage")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_uuid",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListUsageInfosRequest::getProjectUuid, ListUsageInfosRequest::setProjectUuid));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listUserDnsMapping =
        genForListUserDnsMapping();

    private static HttpRequestDef genForListUserDnsMapping() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ListUserDnsMappingRequest.class, ListUserDnsMappingResponse.class)
                .withName("ListUserDnsMapping")
                .withUri("/v1/{project_id}/dns-mapping")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListUserDnsMappingRequest::getProjectId, ListUserDnsMappingRequest::setProjectId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listUserPackageUsage =
        genForListUserPackageUsage();

    private static HttpRequestDef genForListUserPackageUsage() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.GET, ListUserPackageUsageRequest.class, ListUserPackageUsageResponse.class)
            .withName("ListUserPackageUsage")
            .withUri("/v1/projects/{project_id}/package-usage")
            .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListUserPackageUsageRequest::getProjectId,
                ListUserPackageUsageRequest::setProjectId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listUserPopupInfo =
        genForListUserPopupInfo();

    private static HttpRequestDef genForListUserPopupInfo() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ListUserPopupInfoRequest.class, ListUserPopupInfoResponse.class)
                .withName("ListUserPopupInfo")
                .withUri("/v1/projects/{project_id}/package-charge/popup")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListUserPopupInfoRequest::getProjectId, ListUserPopupInfoRequest::setProjectId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listUsingGet = genForListUsingGet();

    private static HttpRequestDef genForListUsingGet() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ListUsingGetRequest.class, ListUsingGetResponse.class)
                .withName("ListUsingGet")
                .withUri("/v2/projects/{service_id}/dashboards")
                .withContentType("application/json");

        // requests
        builder.withRequestField("service_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListUsingGetRequest::getServiceId, ListUsingGetRequest::setServiceId));
        builder.withRequestField("name",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListUsingGetRequest::getName, ListUsingGetRequest::setName));
        builder.withRequestField("page_number",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(ListUsingGetRequest::getPageNumber, ListUsingGetRequest::setPageNumber));
        builder.withRequestField("page_size",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(ListUsingGetRequest::getPageSize, ListUsingGetRequest::setPageSize));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listVariables =
        genForListVariables();

    private static HttpRequestDef genForListVariables() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ListVariablesRequest.class, ListVariablesResponse.class)
                .withName("ListVariables")
                .withUri("/v4/{project_id}/variables")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListVariablesRequest::getProjectId, ListVariablesRequest::setProjectId));
        builder.withRequestField("group_id",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListVariablesRequest::getGroupId, ListVariablesRequest::setGroupId));
        builder.withRequestField("page_no",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListVariablesRequest::getPageNo, ListVariablesRequest::setPageNo));
        builder.withRequestField("page_size",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListVariablesRequest::getPageSize, ListVariablesRequest::setPageSize));

        // response

        return builder.build();
    }

    public static final HttpRequestDef removeIssuesFromIterator =
        genForRemoveIssuesFromIterator();

    private static HttpRequestDef genForRemoveIssuesFromIterator() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.DELETE,
                    RemoveIssuesFromIteratorRequest.class,
                    RemoveIssuesFromIteratorResponse.class)
                .withName("RemoveIssuesFromIterator")
                .withUri("/GT3KServer/v4/{project_id}/iterators/{iterator_id}/issues")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(RemoveIssuesFromIteratorRequest::getProjectId,
                RemoveIssuesFromIteratorRequest::setProjectId));
        builder.withRequestField("iterator_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(RemoveIssuesFromIteratorRequest::getIteratorId,
                RemoveIssuesFromIteratorRequest::setIteratorId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(RemoveIssuesInfo.class),
            f -> f.withMarshaller(RemoveIssuesFromIteratorRequest::getBody, RemoveIssuesFromIteratorRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef runTestCase = genForRunTestCase();

    private static HttpRequestDef genForRunTestCase() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, RunTestCaseRequest.class, RunTestCaseResponse.class)
                .withName("RunTestCase")
                .withUri("/v1/projects/{project_id}/testcases/execution")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(RunTestCaseRequest::getProjectId, RunTestCaseRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(RunTestCaseRequestBody.class),
            f -> f.withMarshaller(RunTestCaseRequest::getBody, RunTestCaseRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef saveTaskSetting =
        genForSaveTaskSetting();

    private static HttpRequestDef genForSaveTaskSetting() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, SaveTaskSettingRequest.class, SaveTaskSettingResponse.class)
                .withName("SaveTaskSetting")
                .withUri("/v1/projects/{service_id}/task/settings")
                .withContentType("application/json");

        // requests
        builder.withRequestField("service_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(SaveTaskSettingRequest::getServiceId, SaveTaskSettingRequest::setServiceId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(SaveTaskSettingRequestBody.class),
            f -> f.withMarshaller(SaveTaskSettingRequest::getBody, SaveTaskSettingRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showAllConfigValueByTypeAndKey =
        genForShowAllConfigValueByTypeAndKey();

    private static HttpRequestDef genForShowAllConfigValueByTypeAndKey() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.GET,
                    ShowAllConfigValueByTypeAndKeyRequest.class,
                    ShowAllConfigValueByTypeAndKeyResponse.class)
                .withName("ShowAllConfigValueByTypeAndKey")
                .withUri("/v1/projects/{service_id}/service/config")
                .withContentType("application/json");

        // requests
        builder.withRequestField("service_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowAllConfigValueByTypeAndKeyRequest::getServiceId,
                ShowAllConfigValueByTypeAndKeyRequest::setServiceId));
        builder.withRequestField("key",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowAllConfigValueByTypeAndKeyRequest::getKey,
                ShowAllConfigValueByTypeAndKeyRequest::setKey));
        builder.withRequestField("type",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowAllConfigValueByTypeAndKeyRequest::getType,
                ShowAllConfigValueByTypeAndKeyRequest::setType));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showAllFeatureChildren =
        genForShowAllFeatureChildren();

    private static HttpRequestDef genForShowAllFeatureChildren() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.POST, ShowAllFeatureChildrenRequest.class, ShowAllFeatureChildrenResponse.class)
            .withName("ShowAllFeatureChildren")
            .withUri("/GT3KServer/v5/features/{feature_id}/children")
            .withContentType("application/json");

        // requests
        builder.withRequestField("feature_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowAllFeatureChildrenRequest::getFeatureId,
                ShowAllFeatureChildrenRequest::setFeatureId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(QueryTestItemTreeInfo.class),
            f -> f.withMarshaller(ShowAllFeatureChildrenRequest::getBody, ShowAllFeatureChildrenRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showApiTestcaseHistories =
        genForShowApiTestcaseHistories();

    private static HttpRequestDef genForShowApiTestcaseHistories() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.GET, ShowApiTestcaseHistoriesRequest.class, ShowApiTestcaseHistoriesResponse.class)
                .withName("ShowApiTestcaseHistories")
                .withUri("/v1/{project_id}/api-testcases/{testcase_id}/execute-histories")
                .withContentType("application/json");

        // requests
        builder.withRequestField("testcase_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowApiTestcaseHistoriesRequest::getTestcaseId,
                ShowApiTestcaseHistoriesRequest::setTestcaseId));
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowApiTestcaseHistoriesRequest::getProjectId,
                ShowApiTestcaseHistoriesRequest::setProjectId));
        builder.withRequestField("offset",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(ShowApiTestcaseHistoriesRequest::getOffset,
                ShowApiTestcaseHistoriesRequest::setOffset));
        builder.withRequestField("limit",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(ShowApiTestcaseHistoriesRequest::getLimit,
                ShowApiTestcaseHistoriesRequest::setLimit));
        builder.withRequestField("plan_id",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowApiTestcaseHistoriesRequest::getPlanId,
                ShowApiTestcaseHistoriesRequest::setPlanId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showAsset = genForShowAsset();

    private static HttpRequestDef genForShowAsset() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowAssetRequest.class, ShowAssetResponse.class)
                .withName("ShowAsset")
                .withUri("/v1/{project_id}/asset")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowAssetRequest::getProjectId, ShowAssetRequest::setProjectId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showAssetTree =
        genForShowAssetTree();

    private static HttpRequestDef genForShowAssetTree() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowAssetTreeRequest.class, ShowAssetTreeResponse.class)
                .withName("ShowAssetTree")
                .withUri("/v1/{project_id}/asset-tree/{asset_id}")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowAssetTreeRequest::getProjectId, ShowAssetTreeRequest::setProjectId));
        builder.withRequestField("asset_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowAssetTreeRequest::getAssetId, ShowAssetTreeRequest::setAssetId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showBackgroundInfo =
        genForShowBackgroundInfo();

    private static HttpRequestDef genForShowBackgroundInfo() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowBackgroundInfoRequest.class, ShowBackgroundInfoResponse.class)
                .withName("ShowBackgroundInfo")
                .withUri("/GT3KServer/v4/{project_id}/background")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowBackgroundInfoRequest::getProjectId, ShowBackgroundInfoRequest::setProjectId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showBranch = genForShowBranch();

    private static HttpRequestDef genForShowBranch() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowBranchRequest.class, ShowBranchResponse.class)
                .withName("ShowBranch")
                .withUri("/GT3KServer/v4/branches/{branch_id}")
                .withContentType("application/json");

        // requests
        builder.withRequestField("branch_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowBranchRequest::getBranchId, ShowBranchRequest::setBranchId));
        builder.withRequestField("project_uuid",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowBranchRequest::getProjectUuid, ShowBranchRequest::setProjectUuid));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showConcurrencyPackageUsing =
        genForShowConcurrencyPackageUsing();

    private static HttpRequestDef genForShowConcurrencyPackageUsing() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.GET,
                    ShowConcurrencyPackageUsingRequest.class,
                    ShowConcurrencyPackageUsingResponse.class)
                .withName("ShowConcurrencyPackageUsing")
                .withUri("/v1/echotest/concurrency/status")
                .withContentType("application/json");

        // requests
        builder.withRequestField("service_id",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowConcurrencyPackageUsingRequest::getServiceId,
                ShowConcurrencyPackageUsingRequest::setServiceId));
        builder.withRequestField("test_type",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowConcurrencyPackageUsingRequest::getTestType,
                ShowConcurrencyPackageUsingRequest::setTestType));

        // response
        builder.withResponseField("body",
            LocationType.Body,
            FieldExistence.NULL_IGNORE,
            String.class,
            f -> f.withMarshaller(ShowConcurrencyPackageUsingResponse::getBody,
                ShowConcurrencyPackageUsingResponse::setBody));

        return builder.build();
    }

    public static final HttpRequestDef showDisclaimerRecord =
        genForShowDisclaimerRecord();

    private static HttpRequestDef genForShowDisclaimerRecord() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.GET, ShowDisclaimerRecordRequest.class, ShowDisclaimerRecordResponse.class)
            .withName("ShowDisclaimerRecord")
            .withUri("/GT3KServer/v4/disclaimer")
            .withContentType("application/json");

        // requests
        builder.withRequestField("type",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowDisclaimerRecordRequest::getType, ShowDisclaimerRecordRequest::setType));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showDomainInfo =
        genForShowDomainInfo();

    private static HttpRequestDef genForShowDomainInfo() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowDomainInfoRequest.class, ShowDomainInfoResponse.class)
                .withName("ShowDomainInfo")
                .withUri("/GT3KServer/v4/user-info/domain")
                .withContentType("application/json");

        // requests

        // response

        return builder.build();
    }

    public static final HttpRequestDef showEchoTestPackageUsing =
        genForShowEchoTestPackageUsing();

    private static HttpRequestDef genForShowEchoTestPackageUsing() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.GET, ShowEchoTestPackageUsingRequest.class, ShowEchoTestPackageUsingResponse.class)
                .withName("ShowEchoTestPackageUsing")
                .withUri("/v1/projects/{service_id}/package/status")
                .withContentType("application/json");

        // requests
        builder.withRequestField("service_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowEchoTestPackageUsingRequest::getServiceId,
                ShowEchoTestPackageUsingRequest::setServiceId));

        // response
        builder.>withResponseField("body",
            LocationType.Body,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(List.class),
            f -> f.withMarshaller(ShowEchoTestPackageUsingResponse::getBody, ShowEchoTestPackageUsingResponse::setBody)
                .withInnerContainerType(EchoTestPackageCheckResult.class));

        return builder.build();
    }

    public static final HttpRequestDef showFactorByAssetId =
        genForShowFactorByAssetId();

    private static HttpRequestDef genForShowFactorByAssetId() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ShowFactorByAssetIdRequest.class, ShowFactorByAssetIdResponse.class)
                .withName("ShowFactorByAssetId")
                .withUri("/v1/{project_id}/factor/{asset_id}")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowFactorByAssetIdRequest::getProjectId, ShowFactorByAssetIdRequest::setProjectId));
        builder.withRequestField("asset_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowFactorByAssetIdRequest::getAssetId, ShowFactorByAssetIdRequest::setAssetId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(CommRequestListFactorParam.class),
            f -> f.withMarshaller(ShowFactorByAssetIdRequest::getBody, ShowFactorByAssetIdRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showFactorById =
        genForShowFactorById();

    private static HttpRequestDef genForShowFactorById() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowFactorByIdRequest.class, ShowFactorByIdResponse.class)
                .withName("ShowFactorById")
                .withUri("/v1/{project_id}/factor/{id}")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowFactorByIdRequest::getProjectId, ShowFactorByIdRequest::setProjectId));
        builder.withRequestField("id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowFactorByIdRequest::getId, ShowFactorByIdRequest::setId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showFeatureChildren =
        genForShowFeatureChildren();

    private static HttpRequestDef genForShowFeatureChildren() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ShowFeatureChildrenRequest.class, ShowFeatureChildrenResponse.class)
                .withName("ShowFeatureChildren")
                .withUri("/GT3KServer/v4/features/{feature_id}/children")
                .withContentType("application/json");

        // requests
        builder.withRequestField("feature_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowFeatureChildrenRequest::getFeatureId, ShowFeatureChildrenRequest::setFeatureId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(QueryTestItemTreeInfo.class),
            f -> f.withMarshaller(ShowFeatureChildrenRequest::getBody, ShowFeatureChildrenRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showFreeDeclaration =
        genForShowFreeDeclaration();

    private static HttpRequestDef genForShowFreeDeclaration() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowFreeDeclarationRequest.class, ShowFreeDeclarationResponse.class)
                .withName("ShowFreeDeclaration")
                .withUri("/GT3KServer/v4/free-declaration")
                .withContentType("application/json");

        // requests

        // response

        return builder.build();
    }

    public static final HttpRequestDef showIfTaskNameRepeat =
        genForShowIfTaskNameRepeat();

    private static HttpRequestDef genForShowIfTaskNameRepeat() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.GET, ShowIfTaskNameRepeatRequest.class, ShowIfTaskNameRepeatResponse.class)
            .withName("ShowIfTaskNameRepeat")
            .withUri("/v1/projects/{service_id}/alert-templates/name")
            .withContentType("application/json");

        // requests
        builder.withRequestField("service_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowIfTaskNameRepeatRequest::getServiceId,
                ShowIfTaskNameRepeatRequest::setServiceId));
        builder.withRequestField("id",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowIfTaskNameRepeatRequest::getId, ShowIfTaskNameRepeatRequest::setId));
        builder.withRequestField("name",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowIfTaskNameRepeatRequest::getName, ShowIfTaskNameRepeatRequest::setName));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showIfUserNameRepeat =
        genForShowIfUserNameRepeat();

    private static HttpRequestDef genForShowIfUserNameRepeat() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.GET, ShowIfUserNameRepeatRequest.class, ShowIfUserNameRepeatResponse.class)
            .withName("ShowIfUserNameRepeat")
            .withUri("/v1/projects/{service_id}/alert/user/name")
            .withContentType("application/json");

        // requests
        builder.withRequestField("service_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowIfUserNameRepeatRequest::getServiceId,
                ShowIfUserNameRepeatRequest::setServiceId));
        builder.withRequestField("userId",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowIfUserNameRepeatRequest::getUserId, ShowIfUserNameRepeatRequest::setUserId));
        builder.withRequestField("userName",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowIfUserNameRepeatRequest::getUserName, ShowIfUserNameRepeatRequest::setUserName));

        // response
        builder.withResponseField("body",
            LocationType.Body,
            FieldExistence.NULL_IGNORE,
            String.class,
            f -> f.withMarshaller(ShowIfUserNameRepeatResponse::getBody, ShowIfUserNameRepeatResponse::setBody));

        return builder.build();
    }

    public static final HttpRequestDef showIssuesByPlanId =
        genForShowIssuesByPlanId();

    private static HttpRequestDef genForShowIssuesByPlanId() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowIssuesByPlanIdRequest.class, ShowIssuesByPlanIdResponse.class)
                .withName("ShowIssuesByPlanId")
                .withUri("/v1/projects/{project_id}/plans/{plan_id}/issues")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowIssuesByPlanIdRequest::getProjectId, ShowIssuesByPlanIdRequest::setProjectId));
        builder.withRequestField("plan_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowIssuesByPlanIdRequest::getPlanId, ShowIssuesByPlanIdRequest::setPlanId));
        builder.withRequestField("offset",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Long.class),
            f -> f.withMarshaller(ShowIssuesByPlanIdRequest::getOffset, ShowIssuesByPlanIdRequest::setOffset));
        builder.withRequestField("limit",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Long.class),
            f -> f.withMarshaller(ShowIssuesByPlanIdRequest::getLimit, ShowIssuesByPlanIdRequest::setLimit));

        // response
        builder.>withResponseField("body",
            LocationType.Body,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(List.class),
            f -> f.withMarshaller(ShowIssuesByPlanIdResponse::getBody, ShowIssuesByPlanIdResponse::setBody)
                .withInnerContainerType(TestPlanIssueDetail.class));

        return builder.build();
    }

    public static final HttpRequestDef showIteratorByDefect =
        genForShowIteratorByDefect();

    private static HttpRequestDef genForShowIteratorByDefect() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.GET, ShowIteratorByDefectRequest.class, ShowIteratorByDefectResponse.class)
            .withName("ShowIteratorByDefect")
            .withUri("/GT3KServer/v4/{project_id}/defects/{defect_id}/iterators")
            .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowIteratorByDefectRequest::getProjectId,
                ShowIteratorByDefectRequest::setProjectId));
        builder.withRequestField("defect_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowIteratorByDefectRequest::getDefectId, ShowIteratorByDefectRequest::setDefectId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showIteratorDetail =
        genForShowIteratorDetail();

    private static HttpRequestDef genForShowIteratorDetail() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowIteratorDetailRequest.class, ShowIteratorDetailResponse.class)
                .withName("ShowIteratorDetail")
                .withUri("/GT3KServer/v4/iterators/{iterator_id}")
                .withContentType("application/json");

        // requests
        builder.withRequestField("iterator_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowIteratorDetailRequest::getIteratorId, ShowIteratorDetailRequest::setIteratorId));
        builder.withRequestField("project_uuid",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowIteratorDetailRequest::getProjectUuid,
                ShowIteratorDetailRequest::setProjectUuid));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showMindMapById =
        genForShowMindMapById();

    private static HttpRequestDef genForShowMindMapById() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowMindMapByIdRequest.class, ShowMindMapByIdResponse.class)
                .withName("ShowMindMapById")
                .withUri("/v1/{project_id}/mindmaps/{id}")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowMindMapByIdRequest::getProjectId, ShowMindMapByIdRequest::setProjectId));
        builder.withRequestField("id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowMindMapByIdRequest::getId, ShowMindMapByIdRequest::setId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showMindmapByPage =
        genForShowMindmapByPage();

    private static HttpRequestDef genForShowMindmapByPage() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ShowMindmapByPageRequest.class, ShowMindmapByPageResponse.class)
                .withName("ShowMindmapByPage")
                .withUri("/v3/{project_id}/mindmaps/page")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowMindmapByPageRequest::getProjectId, ShowMindmapByPageRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(CommRequestMindmapPageParamV3.class),
            f -> f.withMarshaller(ShowMindmapByPageRequest::getBody, ShowMindmapByPageRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showMindmapCreatorName =
        genForShowMindmapCreatorName();

    private static HttpRequestDef genForShowMindmapCreatorName() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.GET, ShowMindmapCreatorNameRequest.class, ShowMindmapCreatorNameResponse.class)
            .withName("ShowMindmapCreatorName")
            .withUri("/v2/{project_id}/mindmap-creator-name")
            .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowMindmapCreatorNameRequest::getProjectId,
                ShowMindmapCreatorNameRequest::setProjectId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showOperationalDataCurrentMonthUsing =
        genForShowOperationalDataCurrentMonthUsing();

    private static HttpRequestDef genForShowOperationalDataCurrentMonthUsing() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.GET,
                    ShowOperationalDataCurrentMonthUsingRequest.class,
                    ShowOperationalDataCurrentMonthUsingResponse.class)
                .withName("ShowOperationalDataCurrentMonthUsing")
                .withUri("/v2/projects/{service_id}/dashboard/run-panel")
                .withContentType("application/json");

        // requests
        builder.withRequestField("service_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowOperationalDataCurrentMonthUsingRequest::getServiceId,
                ShowOperationalDataCurrentMonthUsingRequest::setServiceId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showPlanJournals =
        genForShowPlanJournals();

    private static HttpRequestDef genForShowPlanJournals() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowPlanJournalsRequest.class, ShowPlanJournalsResponse.class)
                .withName("ShowPlanJournals")
                .withUri("/v1/projects/{project_id}/plans/{plan_id}/journals")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowPlanJournalsRequest::getProjectId, ShowPlanJournalsRequest::setProjectId));
        builder.withRequestField("plan_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowPlanJournalsRequest::getPlanId, ShowPlanJournalsRequest::setPlanId));
        builder.withRequestField("offset",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Long.class),
            f -> f.withMarshaller(ShowPlanJournalsRequest::getOffset, ShowPlanJournalsRequest::setOffset));
        builder.withRequestField("limit",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Long.class),
            f -> f.withMarshaller(ShowPlanJournalsRequest::getLimit, ShowPlanJournalsRequest::setLimit));

        // response
        builder.>withResponseField("body",
            LocationType.Body,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(List.class),
            f -> f.withMarshaller(ShowPlanJournalsResponse::getBody, ShowPlanJournalsResponse::setBody)
                .withInnerContainerType(TestPlanJournalList.class));

        return builder.build();
    }

    public static final HttpRequestDef showPlanList = genForShowPlanList();

    private static HttpRequestDef genForShowPlanList() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowPlanListRequest.class, ShowPlanListResponse.class)
                .withName("ShowPlanList")
                .withUri("/v2/projects/{project_id}/plans")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowPlanListRequest::getProjectId, ShowPlanListRequest::setProjectId));
        builder.withRequestField("offset",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Long.class),
            f -> f.withMarshaller(ShowPlanListRequest::getOffset, ShowPlanListRequest::setOffset));
        builder.withRequestField("limit",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Long.class),
            f -> f.withMarshaller(ShowPlanListRequest::getLimit, ShowPlanListRequest::setLimit));
        builder.withRequestField("name",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowPlanListRequest::getName, ShowPlanListRequest::setName));
        builder.withRequestField("current_stage",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowPlanListRequest::getCurrentStage, ShowPlanListRequest::setCurrentStage));
        builder.withRequestField("branch_uri",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowPlanListRequest::getBranchUri, ShowPlanListRequest::setBranchUri));
        builder.withRequestField("query_all_version",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(Boolean.class),
            f -> f.withMarshaller(ShowPlanListRequest::getQueryAllVersion, ShowPlanListRequest::setQueryAllVersion));
        builder.withRequestField("fix_version_ids",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowPlanListRequest::getFixVersionIds, ShowPlanListRequest::setFixVersionIds));

        // response
        builder.>withResponseField("body",
            LocationType.Body,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(List.class),
            f -> f.withMarshaller(ShowPlanListResponse::getBody, ShowPlanListResponse::setBody)
                .withInnerContainerType(TestPlanDetail.class));

        return builder.build();
    }

    public static final HttpRequestDef showPlans = genForShowPlans();

    private static HttpRequestDef genForShowPlans() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowPlansRequest.class, ShowPlansResponse.class)
                .withName("ShowPlans")
                .withUri("/v1/projects/{project_id}/plans")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowPlansRequest::getProjectId, ShowPlansRequest::setProjectId));
        builder.withRequestField("name",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowPlansRequest::getName, ShowPlansRequest::setName));
        builder.withRequestField("current_stage",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowPlansRequest::getCurrentStage, ShowPlansRequest::setCurrentStage));
        builder.withRequestField("offset",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(ShowPlansRequest::getOffset, ShowPlansRequest::setOffset));
        builder.withRequestField("limit",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(ShowPlansRequest::getLimit, ShowPlansRequest::setLimit));

        // response
        builder.>withResponseField("body",
            LocationType.Body,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(List.class),
            f -> f.withMarshaller(ShowPlansResponse::getBody, ShowPlansResponse::setBody)
                .withInnerContainerType(TestPlanDetail.class));

        return builder.build();
    }

    public static final HttpRequestDef showProgress = genForShowProgress();

    private static HttpRequestDef genForShowProgress() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowProgressRequest.class, ShowProgressResponse.class)
                .withName("ShowProgress")
                .withUri("/GT3KServer/v4/progress/{operation_uri}")
                .withContentType("application/json");

        // requests
        builder.withRequestField("operation_uri",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowProgressRequest::getOperationUri, ShowProgressRequest::setOperationUri));
        builder.withRequestField("project_uuid",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowProgressRequest::getProjectUuid, ShowProgressRequest::setProjectUuid));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showProjectDataDashboard =
        genForShowProjectDataDashboard();

    private static HttpRequestDef genForShowProjectDataDashboard() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.POST, ShowProjectDataDashboardRequest.class, ShowProjectDataDashboardResponse.class)
                .withName("ShowProjectDataDashboard")
                .withUri("/v1/{project_id}/data-dashboard/overview")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowProjectDataDashboardRequest::getProjectId,
                ShowProjectDataDashboardRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(TestReportInfoRequestBody.class),
            f -> f.withMarshaller(ShowProjectDataDashboardRequest::getBody, ShowProjectDataDashboardRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showRegisterService =
        genForShowRegisterService();

    private static HttpRequestDef genForShowRegisterService() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowRegisterServiceRequest.class, ShowRegisterServiceResponse.class)
                .withName("ShowRegisterService")
                .withUri("/v1/services")
                .withContentType("application/json");

        // requests

        // response

        return builder.build();
    }

    public static final HttpRequestDef showReport = genForShowReport();

    private static HttpRequestDef genForShowReport() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ShowReportRequest.class, ShowReportResponse.class)
                .withName("ShowReport")
                .withUri("/v4/{project_id}/versions/{plan_id}/custom-reports/generate")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowReportRequest::getProjectId, ShowReportRequest::setProjectId));
        builder.withRequestField("plan_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowReportRequest::getPlanId, ShowReportRequest::setPlanId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(GenerateReportInfo.class),
            f -> f.withMarshaller(ShowReportRequest::getBody, ShowReportRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showRequirementsOverview =
        genForShowRequirementsOverview();

    private static HttpRequestDef genForShowRequirementsOverview() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.POST, ShowRequirementsOverviewRequest.class, ShowRequirementsOverviewResponse.class)
                .withName("ShowRequirementsOverview")
                .withUri("/testreport/v4/{project_id}/versions/{version_id}/requirements/overview")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowRequirementsOverviewRequest::getProjectId,
                ShowRequirementsOverviewRequest::setProjectId));
        builder.withRequestField("version_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowRequirementsOverviewRequest::getVersionId,
                ShowRequirementsOverviewRequest::setVersionId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(QueryRequirementsOverviewInfo.class),
            f -> f.withMarshaller(ShowRequirementsOverviewRequest::getBody, ShowRequirementsOverviewRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showReviewByPage =
        genForShowReviewByPage();

    private static HttpRequestDef genForShowReviewByPage() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ShowReviewByPageRequest.class, ShowReviewByPageResponse.class)
                .withName("ShowReviewByPage")
                .withUri("/v2/{project_id}/reviews/page")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowReviewByPageRequest::getProjectId, ShowReviewByPageRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(CommRequestReviewPageParam.class),
            f -> f.withMarshaller(ShowReviewByPageRequest::getBody, ShowReviewByPageRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showSceneByPage =
        genForShowSceneByPage();

    private static HttpRequestDef genForShowSceneByPage() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ShowSceneByPageRequest.class, ShowSceneByPageResponse.class)
                .withName("ShowSceneByPage")
                .withUri("/v2/{project_id}/scenes/page")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowSceneByPageRequest::getProjectId, ShowSceneByPageRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(CommRequestScenePageParam.class),
            f -> f.withMarshaller(ShowSceneByPageRequest::getBody, ShowSceneByPageRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showStatisticById =
        genForShowStatisticById();

    private static HttpRequestDef genForShowStatisticById() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowStatisticByIdRequest.class, ShowStatisticByIdResponse.class)
                .withName("ShowStatisticById")
                .withUri("/v1/{project_id}/statistics/{mindmap_id}")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowStatisticByIdRequest::getProjectId, ShowStatisticByIdRequest::setProjectId));
        builder.withRequestField("mindmap_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowStatisticByIdRequest::getMindmapId, ShowStatisticByIdRequest::setMindmapId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showSystemConfigs =
        genForShowSystemConfigs();

    private static HttpRequestDef genForShowSystemConfigs() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ShowSystemConfigsRequest.class, ShowSystemConfigsResponse.class)
                .withName("ShowSystemConfigs")
                .withUri("/v1/{project_id}/system-config/find-all")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowSystemConfigsRequest::getProjectId, ShowSystemConfigsRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(CommRequestSystemConfig.class),
            f -> f.withMarshaller(ShowSystemConfigsRequest::getBody, ShowSystemConfigsRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showTemplateByPage =
        genForShowTemplateByPage();

    private static HttpRequestDef genForShowTemplateByPage() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ShowTemplateByPageRequest.class, ShowTemplateByPageResponse.class)
                .withName("ShowTemplateByPage")
                .withUri("/v3/{project_id}/templates/page")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowTemplateByPageRequest::getProjectId, ShowTemplateByPageRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(CommRequestTemplatePageParam.class),
            f -> f.withMarshaller(ShowTemplateByPageRequest::getBody, ShowTemplateByPageRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showTestCase = genForShowTestCase();

    private static HttpRequestDef genForShowTestCase() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowTestCaseRequest.class, ShowTestCaseResponse.class)
                .withName("ShowTestCase")
                .withUri("/GT3KServer/v4/testcases/{testcase_id}")
                .withContentType("application/json");

        // requests
        builder.withRequestField("testcase_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowTestCaseRequest::getTestcaseId, ShowTestCaseRequest::setTestcaseId));
        builder.withRequestField("version_uri",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowTestCaseRequest::getVersionUri, ShowTestCaseRequest::setVersionUri));
        builder.withRequestField("project_uuid",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowTestCaseRequest::getProjectUuid, ShowTestCaseRequest::setProjectUuid));
        builder.withRequestField("task_uri",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowTestCaseRequest::getTaskUri, ShowTestCaseRequest::setTaskUri));
        builder.withRequestField("refresh",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(Boolean.class),
            f -> f.withMarshaller(ShowTestCaseRequest::getRefresh, ShowTestCaseRequest::setRefresh));
        builder.withRequestField("is_recycle",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(Boolean.class),
            f -> f.withMarshaller(ShowTestCaseRequest::getIsRecycle, ShowTestCaseRequest::setIsRecycle));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showTestCaseAndDefectInfo =
        genForShowTestCaseAndDefectInfo();

    private static HttpRequestDef genForShowTestCaseAndDefectInfo() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.POST,
                    ShowTestCaseAndDefectInfoRequest.class,
                    ShowTestCaseAndDefectInfoResponse.class)
                .withName("ShowTestCaseAndDefectInfo")
                .withUri("/v1/{project_id}/testcases/defect-info/list-by-creation-time")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowTestCaseAndDefectInfoRequest::getProjectId,
                ShowTestCaseAndDefectInfoRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(ShowTestCaseAndDefectInfoRequestBody.class),
            f -> f.withMarshaller(ShowTestCaseAndDefectInfoRequest::getBody,
                ShowTestCaseAndDefectInfoRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showTestCaseDetail =
        genForShowTestCaseDetail();

    private static HttpRequestDef genForShowTestCaseDetail() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowTestCaseDetailRequest.class, ShowTestCaseDetailResponse.class)
                .withName("ShowTestCaseDetail")
                .withUri("/v1/projects/{project_id}/testcases/{testcase_id}")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowTestCaseDetailRequest::getProjectId, ShowTestCaseDetailRequest::setProjectId));
        builder.withRequestField("testcase_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowTestCaseDetailRequest::getTestcaseId, ShowTestCaseDetailRequest::setTestcaseId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showTestCaseDetailV2 =
        genForShowTestCaseDetailV2();

    private static HttpRequestDef genForShowTestCaseDetailV2() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.GET, ShowTestCaseDetailV2Request.class, ShowTestCaseDetailV2Response.class)
            .withName("ShowTestCaseDetailV2")
            .withUri("/v1/projects/{project_id}/testcase")
            .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowTestCaseDetailV2Request::getProjectId,
                ShowTestCaseDetailV2Request::setProjectId));
        builder.withRequestField("testcase_number",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowTestCaseDetailV2Request::getTestcaseNumber,
                ShowTestCaseDetailV2Request::setTestcaseNumber));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showTestCaseReviews =
        genForShowTestCaseReviews();

    private static HttpRequestDef genForShowTestCaseReviews() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowTestCaseReviewsRequest.class, ShowTestCaseReviewsResponse.class)
                .withName("ShowTestCaseReviews")
                .withUri("/GT3KServer/v4/testcases/{testcase_uri}/review")
                .withContentType("application/json");

        // requests
        builder.withRequestField("testcase_uri",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowTestCaseReviewsRequest::getTestcaseUri,
                ShowTestCaseReviewsRequest::setTestcaseUri));
        builder.withRequestField("project_uuid",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowTestCaseReviewsRequest::getProjectUuid,
                ShowTestCaseReviewsRequest::setProjectUuid));
        builder.withRequestField("version_uri",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowTestCaseReviewsRequest::getVersionUri,
                ShowTestCaseReviewsRequest::setVersionUri));
        builder.withRequestField("page_no",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(ShowTestCaseReviewsRequest::getPageNo, ShowTestCaseReviewsRequest::setPageNo));
        builder.withRequestField("page_size",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(ShowTestCaseReviewsRequest::getPageSize, ShowTestCaseReviewsRequest::setPageSize));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showTestCasesChangeStatistics =
        genForShowTestCasesChangeStatistics();

    private static HttpRequestDef genForShowTestCasesChangeStatistics() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.GET,
                    ShowTestCasesChangeStatisticsRequest.class,
                    ShowTestCasesChangeStatisticsResponse.class)
                .withName("ShowTestCasesChangeStatistics")
                .withUri("/GT3KServer/v4/{project_id}/versions/{version_id}/testcases/change-statistics")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowTestCasesChangeStatisticsRequest::getProjectId,
                ShowTestCasesChangeStatisticsRequest::setProjectId));
        builder.withRequestField("version_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowTestCasesChangeStatisticsRequest::getVersionId,
                ShowTestCasesChangeStatisticsRequest::setVersionId));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showTestcaseByPage =
        genForShowTestcaseByPage();

    private static HttpRequestDef genForShowTestcaseByPage() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ShowTestcaseByPageRequest.class, ShowTestcaseByPageResponse.class)
                .withName("ShowTestcaseByPage")
                .withUri("/v2/{project_id}/testcases/page")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowTestcaseByPageRequest::getProjectId, ShowTestcaseByPageRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(CommRequestTestCasePageParam.class),
            f -> f.withMarshaller(ShowTestcaseByPageRequest::getBody, ShowTestcaseByPageRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showTestpointByPage =
        genForShowTestpointByPage();

    private static HttpRequestDef genForShowTestpointByPage() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.POST, ShowTestpointByPageRequest.class, ShowTestpointByPageResponse.class)
                .withName("ShowTestpointByPage")
                .withUri("/v2/{project_id}/testpoints/page")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowTestpointByPageRequest::getProjectId, ShowTestpointByPageRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(CommRequestTestPointPageParam.class),
            f -> f.withMarshaller(ShowTestpointByPageRequest::getBody, ShowTestpointByPageRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showUserAccessInfo =
        genForShowUserAccessInfo();

    private static HttpRequestDef genForShowUserAccessInfo() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ShowUserAccessInfoRequest.class, ShowUserAccessInfoResponse.class)
                .withName("ShowUserAccessInfo")
                .withUri("/GT3KServer/v4/domain/info")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_uuid",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowUserAccessInfoRequest::getProjectUuid,
                ShowUserAccessInfoRequest::setProjectUuid));

        // response

        return builder.build();
    }

    public static final HttpRequestDef showUserExecuteTestCaseInfo =
        genForShowUserExecuteTestCaseInfo();

    private static HttpRequestDef genForShowUserExecuteTestCaseInfo() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.POST,
                    ShowUserExecuteTestCaseInfoRequest.class,
                    ShowUserExecuteTestCaseInfoResponse.class)
                .withName("ShowUserExecuteTestCaseInfo")
                .withUri("/v1/{project_id}/testcases/execute-info/statistic-by-user")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ShowUserExecuteTestCaseInfoRequest::getProjectId,
                ShowUserExecuteTestCaseInfoRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(ShowUserExecuteTestCaseInfoRequestBody.class),
            f -> f.withMarshaller(ShowUserExecuteTestCaseInfoRequest::getBody,
                ShowUserExecuteTestCaseInfoRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef updateBasicAwById =
        genForUpdateBasicAwById();

    private static HttpRequestDef genForUpdateBasicAwById() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.PUT, UpdateBasicAwByIdRequest.class, UpdateBasicAwByIdResponse.class)
                .withName("UpdateBasicAwById")
                .withUri("/v3/{project_id}/basic-aw/{aw_id}")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(UpdateBasicAwByIdRequest::getProjectId, UpdateBasicAwByIdRequest::setProjectId));
        builder.withRequestField("aw_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(UpdateBasicAwByIdRequest::getAwId, UpdateBasicAwByIdRequest::setAwId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(UpdateBasicAwReq.class),
            f -> f.withMarshaller(UpdateBasicAwByIdRequest::getBody, UpdateBasicAwByIdRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef updateIterator =
        genForUpdateIterator();

    private static HttpRequestDef genForUpdateIterator() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.PUT, UpdateIteratorRequest.class, UpdateIteratorResponse.class)
                .withName("UpdateIterator")
                .withUri("/GT3KServer/v4/iterators/{iterator_id}")
                .withContentType("application/json");

        // requests
        builder.withRequestField("iterator_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(UpdateIteratorRequest::getIteratorId, UpdateIteratorRequest::setIteratorId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(IteratorVersionInfo.class),
            f -> f.withMarshaller(UpdateIteratorRequest::getBody, UpdateIteratorRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef updateService =
        genForUpdateService();

    private static HttpRequestDef genForUpdateService() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.PUT, UpdateServiceRequest.class, UpdateServiceResponse.class)
                .withName("UpdateService")
                .withUri("/v1/services/{service_id}")
                .withContentType("application/json");

        // requests
        builder.withRequestField("service_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Integer.class),
            f -> f.withMarshaller(UpdateServiceRequest::getServiceId, UpdateServiceRequest::setServiceId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(ServiceRequestBody.class),
            f -> f.withMarshaller(UpdateServiceRequest::getBody, UpdateServiceRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef updateTestCase =
        genForUpdateTestCase();

    private static HttpRequestDef genForUpdateTestCase() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.PUT, UpdateTestCaseRequest.class, UpdateTestCaseResponse.class)
                .withName("UpdateTestCase")
                .withUri("/v1/projects/{project_id}/testcases/{testcase_id}")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(UpdateTestCaseRequest::getProjectId, UpdateTestCaseRequest::setProjectId));
        builder.withRequestField("testcase_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(UpdateTestCaseRequest::getTestcaseId, UpdateTestCaseRequest::setTestcaseId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(UpdateTestCaseRequestBody.class),
            f -> f.withMarshaller(UpdateTestCaseRequest::getBody, UpdateTestCaseRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef updateTestCaseAndScript =
        genForUpdateTestCaseAndScript();

    private static HttpRequestDef genForUpdateTestCaseAndScript() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.PUT, UpdateTestCaseAndScriptRequest.class, UpdateTestCaseAndScriptResponse.class)
            .withName("UpdateTestCaseAndScript")
            .withUri("/v4/{project_id}/testcase/{tmss_case_uri}")
            .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(UpdateTestCaseAndScriptRequest::getProjectId,
                UpdateTestCaseAndScriptRequest::setProjectId));
        builder.withRequestField("tmss_case_uri",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(UpdateTestCaseAndScriptRequest::getTmssCaseUri,
                UpdateTestCaseAndScriptRequest::setTmssCaseUri));
        builder.withRequestField("turn_on_awmapping",
            LocationType.Query,
            FieldExistence.NULL_IGNORE,
            TypeCasts.uncheckedConversion(Boolean.class),
            f -> f.withMarshaller(UpdateTestCaseAndScriptRequest::getTurnOnAwmapping,
                UpdateTestCaseAndScriptRequest::setTurnOnAwmapping));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(CreateTestCaseReq.class),
            f -> f.withMarshaller(UpdateTestCaseAndScriptRequest::getBody, UpdateTestCaseAndScriptRequest::setBody));

        // response
        builder.withResponseField("body",
            LocationType.Body,
            FieldExistence.NULL_IGNORE,
            String.class,
            f -> f.withMarshaller(UpdateTestCaseAndScriptResponse::getBody, UpdateTestCaseAndScriptResponse::setBody));

        return builder.build();
    }

    public static final HttpRequestDef updateTestCaseComment =
        genForUpdateTestCaseComment();

    private static HttpRequestDef genForUpdateTestCaseComment() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.PUT, UpdateTestCaseCommentRequest.class, UpdateTestCaseCommentResponse.class)
            .withName("UpdateTestCaseComment")
            .withUri("/GT3KServer/v4/{project_id}/testcases/{testcase_id}/comments/{comment_id}")
            .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(UpdateTestCaseCommentRequest::getProjectId,
                UpdateTestCaseCommentRequest::setProjectId));
        builder.withRequestField("testcase_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(UpdateTestCaseCommentRequest::getTestcaseId,
                UpdateTestCaseCommentRequest::setTestcaseId));
        builder.withRequestField("comment_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(UpdateTestCaseCommentRequest::getCommentId,
                UpdateTestCaseCommentRequest::setCommentId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(TestCaseCommentInfo.class),
            f -> f.withMarshaller(UpdateTestCaseCommentRequest::getBody, UpdateTestCaseCommentRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef updateTestCaseResult =
        genForUpdateTestCaseResult();

    private static HttpRequestDef genForUpdateTestCaseResult() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.POST, UpdateTestCaseResultRequest.class, UpdateTestCaseResultResponse.class)
            .withName("UpdateTestCaseResult")
            .withUri("/v1/projects/{project_id}/testcases/result")
            .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(UpdateTestCaseResultRequest::getProjectId,
                UpdateTestCaseResultRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(UpdateTestCaseResultRequestBody.class),
            f -> f.withMarshaller(UpdateTestCaseResultRequest::getBody, UpdateTestCaseResultRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef updateUserDnsMapping =
        genForUpdateUserDnsMapping();

    private static HttpRequestDef genForUpdateUserDnsMapping() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.POST, UpdateUserDnsMappingRequest.class, UpdateUserDnsMappingResponse.class)
            .withName("UpdateUserDnsMapping")
            .withUri("/v1/{project_id}/dns-mapping")
            .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(UpdateUserDnsMappingRequest::getProjectId,
                UpdateUserDnsMappingRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(UpdateUserDnsMappingRequest::getBody, UpdateUserDnsMappingRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef updateVersionTestCase =
        genForUpdateVersionTestCase();

    private static HttpRequestDef genForUpdateVersionTestCase() {
        // basic
        HttpRequestDef.Builder builder = HttpRequestDef
            .builder(HttpMethod.PUT, UpdateVersionTestCaseRequest.class, UpdateVersionTestCaseResponse.class)
            .withName("UpdateVersionTestCase")
            .withUri("/GT3KServer/v4/testcases/{case_id}")
            .withContentType("application/json");

        // requests
        builder.withRequestField("case_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(UpdateVersionTestCaseRequest::getCaseId, UpdateVersionTestCaseRequest::setCaseId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(TestCaseInfo.class),
            f -> f.withMarshaller(UpdateVersionTestCaseRequest::getBody, UpdateVersionTestCaseRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef createApiTestSuiteByRepoFile =
        genForCreateApiTestSuiteByRepoFile();

    private static HttpRequestDef genForCreateApiTestSuiteByRepoFile() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef
                .builder(HttpMethod.POST,
                    CreateApiTestSuiteByRepoFileRequest.class,
                    CreateApiTestSuiteByRepoFileResponse.class)
                .withName("CreateApiTestSuiteByRepoFile")
                .withUri("/v1/projects/{project_id}/repository/testsuites")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(CreateApiTestSuiteByRepoFileRequest::getProjectId,
                CreateApiTestSuiteByRepoFileRequest::setProjectId));
        builder.withRequestField("body",
            LocationType.Body,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(CreateTestSuitByRepoFileInfo.class),
            f -> f.withMarshaller(CreateApiTestSuiteByRepoFileRequest::getBody,
                CreateApiTestSuiteByRepoFileRequest::setBody));

        // response

        return builder.build();
    }

    public static final HttpRequestDef listEnvironments =
        genForListEnvironments();

    private static HttpRequestDef genForListEnvironments() {
        // basic
        HttpRequestDef.Builder builder =
            HttpRequestDef.builder(HttpMethod.GET, ListEnvironmentsRequest.class, ListEnvironmentsResponse.class)
                .withName("ListEnvironments")
                .withUri("/v1/projects/{project_id}/environments")
                .withContentType("application/json");

        // requests
        builder.withRequestField("project_id",
            LocationType.Path,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(String.class),
            f -> f.withMarshaller(ListEnvironmentsRequest::getProjectId, ListEnvironmentsRequest::setProjectId));
        builder.withRequestField("offset",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Long.class),
            f -> f.withMarshaller(ListEnvironmentsRequest::getOffset, ListEnvironmentsRequest::setOffset));
        builder.withRequestField("limit",
            LocationType.Query,
            FieldExistence.NON_NULL_NON_EMPTY,
            TypeCasts.uncheckedConversion(Long.class),
            f -> f.withMarshaller(ListEnvironmentsRequest::getLimit, ListEnvironmentsRequest::setLimit));

        // response

        return builder.build();
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy