public abstract class AbstractProjectAreaAssociationManager extends Object
ProjectAreaAssociation
.
Concrete managers extending this one are expected to implement storage methods. If something goes wrong they should throw an
OslcWebApplicationException
.
Constructor and Description |
---|
AbstractProjectAreaAssociationManager() |
Modifier and Type | Method and Description |
---|---|
void |
addAssociation(String providerId,
ProjectAreaAssociation association)
Adds a project area association to a provider.
|
protected abstract ResourceResponse<Void> |
createStorage(String providerId,
ProjectAreaAssociations projectAreaAssociations)
Creates the project area associations in the storage for the given provider.
|
void |
deleteAssociation(String providerId,
String associationType,
URI providerDetails)
Removes a project area association from a provider.
|
ResourceResponse<ProjectAreaAssociations> |
getAssociations(String providerId)
Returns existing project area associations for the given service provider.
|
protected abstract ResourceResponse<ProjectAreaAssociations> |
getFromStorage(String providerId)
Gets the existing project area associations from the storage for the given provider.
|
protected abstract ResourceResponse<Void> |
updateStorage(String providerId,
ProjectAreaAssociations projectAreaAssociations,
String eTag)
Updates the project area associations in the storage for the given provider.
|
public AbstractProjectAreaAssociationManager()
public ResourceResponse<ProjectAreaAssociations> getAssociations(String providerId)
providerId
- the service provider identifierpublic void addAssociation(String providerId, ProjectAreaAssociation association)
providerId
- the provider identifierassociation
- the association to addpublic void deleteAssociation(String providerId, String associationType, URI providerDetails)
providerId
- the provider identifierassociationType
- the association type to removeproviderDetails
- the URI of the association's target provider detailsprotected abstract ResourceResponse<ProjectAreaAssociations> getFromStorage(String providerId)
providerId
- the provider identifierprotected abstract ResourceResponse<Void> updateStorage(String providerId, ProjectAreaAssociations projectAreaAssociations, String eTag)
providerId
- the provider identifierprojectAreaAssociations
- the updated project area associationseTag
- the ProjectAreaAssociations resource ETagprotected abstract ResourceResponse<Void> createStorage(String providerId, ProjectAreaAssociations projectAreaAssociations)
providerId
- the provider identifierprojectAreaAssociations
- the project area associations to post