Class CreateLabel
java.lang.Object
com.google.gerrit.server.restapi.project.CreateLabel
- All Implemented Interfaces:
RestCollectionCreateView<ProjectResource,
,LabelResource, LabelDefinitionInput> RestCollectionView<ProjectResource,
,LabelResource, LabelDefinitionInput> RestView<LabelResource>
public class CreateLabel
extends Object
implements RestCollectionCreateView<ProjectResource,LabelResource,LabelDefinitionInput>
-
Constructor Summary
ConstructorsConstructorDescriptionCreateLabel
(com.google.inject.Provider<CurrentUser> user, PermissionBackend permissionBackend, MetaDataUpdate.User updateFactory, ProjectConfig.Factory projectConfigFactory, ProjectCache projectCache, ApprovalQueryBuilder approvalQueryBuilder) -
Method Summary
Modifier and TypeMethodDescriptionapply
(ProjectResource rsrc, IdString id, LabelDefinitionInput input) Process the view operation by creating the resource.createLabel
(ProjectConfig config, String label, LabelDefinitionInput input) Creates a new label.
-
Constructor Details
-
CreateLabel
@Inject public CreateLabel(com.google.inject.Provider<CurrentUser> user, PermissionBackend permissionBackend, MetaDataUpdate.User updateFactory, ProjectConfig.Factory projectConfigFactory, ProjectCache projectCache, ApprovalQueryBuilder approvalQueryBuilder)
-
-
Method Details
-
apply
public Response<LabelDefinitionInfo> apply(ProjectResource rsrc, IdString id, LabelDefinitionInput input) throws AuthException, BadRequestException, ResourceConflictException, PermissionBackendException, IOException, org.eclipse.jgit.errors.ConfigInvalidException Description copied from interface:RestCollectionCreateView
Process the view operation by creating the resource.The returned response defines the status code that is returned to the client. For RestCollectionCreateViews this is usually
201 Created
because a resource is created, but other 2XX or 3XX status codes are also possible (e.g.Response.Redirect
can be returned for302 Found
).The value of the returned response is automatically converted to JSON unless it is a
BinaryResult
.Throwing a subclass of
RestApiException
results in a 4XX response to the client. For any other exception the client will get a500 Internal Server Error
response.- Specified by:
apply
in interfaceRestCollectionCreateView<ProjectResource,
LabelResource, LabelDefinitionInput> - Parameters:
rsrc
- parent resource of the resource that should be createdid
- the ID of the child resource that should be createdinput
- input after parsing from request.- Returns:
- response to return to the client
- Throws:
AuthException
BadRequestException
ResourceConflictException
PermissionBackendException
IOException
org.eclipse.jgit.errors.ConfigInvalidException
-
createLabel
public LabelType createLabel(ProjectConfig config, String label, LabelDefinitionInput input) throws BadRequestException, ResourceConflictException Creates a new label.- Parameters:
config
- the project configlabel
- the name of the new labelinput
- the input that describes the new label- Returns:
- the created label type
- Throws:
BadRequestException
- if there was invalid data in the inputResourceConflictException
- if the label cannot be created due to a conflict
-