org.gcube.informationsystem.publisher
Class AdvancedPublisher
java.lang.Object
org.gcube.informationsystem.publisher.AdvancedPublisherCommonUtils
org.gcube.informationsystem.publisher.AdvancedPublisher
- All Implemented Interfaces:
- RegistryPublisher
public class AdvancedPublisher
- extends AdvancedPublisherCommonUtils
- implements RegistryPublisher
Wrapper class of RegistryPublisherImpl class that implements the RegistryPublisher interface
- Author:
- rcirillo
|
Method Summary |
<T extends org.gcube.common.resources.gcore.Resource>
T |
|
create(T resource)
The resource is created in the current scope and it is updated in the other scopes that are presents in the resource. |
<T extends org.gcube.common.resources.gcore.Resource>
T |
|
remove(T resource)
The resource will be removed from current scope. |
<T extends org.gcube.common.resources.gcore.Resource>
T |
|
update(T resource)
The resource will be updated on all the scopes that are defined in the resource. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
AdvancedPublisher
public AdvancedPublisher()
AdvancedPublisher
public AdvancedPublisher(RegistryPublisher publisher)
create
public <T extends org.gcube.common.resources.gcore.Resource> T create(T resource)
- Description copied from interface:
RegistryPublisher
- The resource is created in the current scope and it is updated in the other scopes that are presents in the resource.
If is a VRE scope then in the resource will be added also the VO and INFRA scopes if they are not already presents in the resource
If is a VO scope then in the resource will be added also the INFRA scope if it is not already present in the resource
- Specified by:
create in interface RegistryPublisher
update
public <T extends org.gcube.common.resources.gcore.Resource> T update(T resource)
- Description copied from interface:
RegistryPublisher
- The resource will be updated on all the scopes that are defined in the resource.
If an updating operation fail. It will be repeated with best-effort delivery approach
- Specified by:
update in interface RegistryPublisher
remove
public <T extends org.gcube.common.resources.gcore.Resource> T remove(T resource)
- Description copied from interface:
RegistryPublisher
- The resource will be removed from current scope.
if the scope is the last scope in the resource, the profile will be deleted from IS else:
if it is a VRE scope then the profile will be updated without the VRE scope;
if it is a VO scope but there is another VRE scope, belong to the VO, defined in the resource then throw IllegalArgumentException;
if it is a INFRA scope but there is another VRE or VO scope , belong to the INFRA, defined in the resource then throw IllegalArgumentException.
- Specified by:
remove in interface RegistryPublisher
- Returns:
- the resource without the current scope if the remove operation has been successfully completed
Copyright © 2013. All Rights Reserved.