Merged changes made in branch caused by is-model and gcube-model repackaging
git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/Common/resource-registry-handlers@171806 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
deb12019c7
commit
bf371e65b8
4
pom.xml
4
pom.xml
|
@ -68,8 +68,8 @@
|
|||
<artifactId>information-system-model</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.gcube.information-system</groupId>
|
||||
<artifactId>gcube-resources</artifactId>
|
||||
<groupId>org.gcube.resource-management</groupId>
|
||||
<artifactId>gcube-model</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.servlet</groupId>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
package org.gcube.smartgears.handler.resourceregistry;
|
||||
|
||||
import org.gcube.informationsystem.model.entity.resource.EService;
|
||||
import org.gcube.informationsystem.model.entity.resource.HostingNode;
|
||||
import org.gcube.resourcemanagement.model.reference.entity.resource.EService;
|
||||
import org.gcube.resourcemanagement.model.reference.entity.resource.HostingNode;
|
||||
|
||||
/**
|
||||
* Library-wide constants.
|
||||
|
|
|
@ -25,30 +25,19 @@ import org.gcube.common.authorization.client.proxy.AuthorizationProxy;
|
|||
import org.gcube.common.authorization.library.provider.SecurityTokenProvider;
|
||||
import org.gcube.common.events.Observes;
|
||||
import org.gcube.common.scope.api.ScopeProvider;
|
||||
import org.gcube.informationsystem.impl.embedded.HeaderImpl;
|
||||
import org.gcube.informationsystem.impl.embedded.PropagationConstraintImpl;
|
||||
import org.gcube.informationsystem.impl.embedded.ValueSchemaImpl;
|
||||
import org.gcube.informationsystem.impl.entity.facet.AccessPointFacetImpl;
|
||||
import org.gcube.informationsystem.impl.entity.facet.ServiceStateFacetImpl;
|
||||
import org.gcube.informationsystem.impl.entity.facet.SoftwareFacetImpl;
|
||||
import org.gcube.informationsystem.impl.entity.resource.EServiceImpl;
|
||||
import org.gcube.informationsystem.impl.relation.ConsistsOfImpl;
|
||||
import org.gcube.informationsystem.impl.relation.IsIdentifiedByImpl;
|
||||
import org.gcube.informationsystem.impl.relation.isrelatedto.HostsImpl;
|
||||
import org.gcube.informationsystem.model.embedded.Header;
|
||||
import org.gcube.informationsystem.model.embedded.PropagationConstraint;
|
||||
import org.gcube.informationsystem.model.embedded.PropagationConstraint.AddConstraint;
|
||||
import org.gcube.informationsystem.model.embedded.PropagationConstraint.RemoveConstraint;
|
||||
import org.gcube.informationsystem.model.embedded.ValueSchema;
|
||||
import org.gcube.informationsystem.model.entity.Resource;
|
||||
import org.gcube.informationsystem.model.entity.facet.AccessPointFacet;
|
||||
import org.gcube.informationsystem.model.entity.facet.ServiceStateFacet;
|
||||
import org.gcube.informationsystem.model.entity.facet.SoftwareFacet;
|
||||
import org.gcube.informationsystem.model.entity.resource.EService;
|
||||
import org.gcube.informationsystem.model.entity.resource.HostingNode;
|
||||
import org.gcube.informationsystem.model.relation.ConsistsOf;
|
||||
import org.gcube.informationsystem.model.relation.IsIdentifiedBy;
|
||||
import org.gcube.informationsystem.model.relation.isrelatedto.Hosts;
|
||||
import org.gcube.informationsystem.model.impl.embedded.HeaderImpl;
|
||||
import org.gcube.informationsystem.model.impl.embedded.PropagationConstraintImpl;
|
||||
import org.gcube.informationsystem.model.impl.embedded.ValueSchemaImpl;
|
||||
import org.gcube.informationsystem.model.impl.relation.ConsistsOfImpl;
|
||||
import org.gcube.informationsystem.model.impl.relation.IsIdentifiedByImpl;
|
||||
import org.gcube.informationsystem.model.reference.embedded.Header;
|
||||
import org.gcube.informationsystem.model.reference.embedded.PropagationConstraint;
|
||||
import org.gcube.informationsystem.model.reference.embedded.ValueSchema;
|
||||
import org.gcube.informationsystem.model.reference.embedded.PropagationConstraint.AddConstraint;
|
||||
import org.gcube.informationsystem.model.reference.embedded.PropagationConstraint.RemoveConstraint;
|
||||
import org.gcube.informationsystem.model.reference.entity.Resource;
|
||||
import org.gcube.informationsystem.model.reference.relation.ConsistsOf;
|
||||
import org.gcube.informationsystem.model.reference.relation.IsIdentifiedBy;
|
||||
import org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException;
|
||||
import org.gcube.informationsystem.resourceregistry.api.exceptions.entity.resource.ResourceAvailableInAnotherContextException;
|
||||
import org.gcube.informationsystem.resourceregistry.api.exceptions.entity.resource.ResourceNotFoundException;
|
||||
|
@ -56,6 +45,17 @@ import org.gcube.informationsystem.resourceregistry.client.ResourceRegistryClien
|
|||
import org.gcube.informationsystem.resourceregistry.client.ResourceRegistryClientFactory;
|
||||
import org.gcube.informationsystem.resourceregistry.publisher.ResourceRegistryPublisher;
|
||||
import org.gcube.informationsystem.resourceregistry.publisher.ResourceRegistryPublisherFactory;
|
||||
import org.gcube.resourcemanagement.model.impl.entity.facet.AccessPointFacetImpl;
|
||||
import org.gcube.resourcemanagement.model.impl.entity.facet.ServiceStateFacetImpl;
|
||||
import org.gcube.resourcemanagement.model.impl.entity.facet.SoftwareFacetImpl;
|
||||
import org.gcube.resourcemanagement.model.impl.entity.resource.EServiceImpl;
|
||||
import org.gcube.resourcemanagement.model.impl.relation.isrelatedto.ActivatesImpl;
|
||||
import org.gcube.resourcemanagement.model.reference.entity.facet.AccessPointFacet;
|
||||
import org.gcube.resourcemanagement.model.reference.entity.facet.ServiceStateFacet;
|
||||
import org.gcube.resourcemanagement.model.reference.entity.facet.SoftwareFacet;
|
||||
import org.gcube.resourcemanagement.model.reference.entity.resource.EService;
|
||||
import org.gcube.resourcemanagement.model.reference.entity.resource.HostingNode;
|
||||
import org.gcube.resourcemanagement.model.reference.relation.isrelatedto.Activates;
|
||||
import org.gcube.smartgears.configuration.application.ApplicationConfiguration;
|
||||
import org.gcube.smartgears.configuration.container.ContainerConfiguration;
|
||||
import org.gcube.smartgears.context.Property;
|
||||
|
@ -311,7 +311,7 @@ public class EServiceManager extends ApplicationLifecycleHandler {
|
|||
|
||||
}
|
||||
|
||||
private Hosts<HostingNode, EService> createHostsRelation(EService eService,
|
||||
private Activates<HostingNode, EService> createActivatesRelation(EService eService,
|
||||
ResourceRegistryPublisher resourceRegistryPublisher) throws ResourceRegistryException{
|
||||
|
||||
HostingNode hostingNode = applicationContext.container().properties().lookup(Constants.HOSTING_NODE_PROPERTY).value(HostingNode.class);
|
||||
|
@ -321,22 +321,22 @@ public class EServiceManager extends ApplicationLifecycleHandler {
|
|||
PropagationConstraint propagationConstraint = new PropagationConstraintImpl();
|
||||
propagationConstraint.setRemoveConstraint(RemoveConstraint.cascade);
|
||||
propagationConstraint.setAddConstraint(AddConstraint.propagate);
|
||||
Hosts<HostingNode, EService> hosts = new HostsImpl<>(hostingNode, eService, propagationConstraint);
|
||||
Activates<HostingNode, EService> activates = new ActivatesImpl<>(hostingNode, eService, propagationConstraint);
|
||||
|
||||
try {
|
||||
hosts = resourceRegistryPublisher.createIsRelatedTo(hosts);
|
||||
activates = resourceRegistryPublisher.createIsRelatedTo(activates);
|
||||
} catch (ResourceNotFoundException e) {
|
||||
logger.error("THIS IS REALLY STRANGE. YOU SHOULD NE BE HERE. Error while creating {}.", hosts, e);
|
||||
logger.error("THIS IS REALLY STRANGE. YOU SHOULD NE BE HERE. Error while creating {}.", activates, e);
|
||||
throw e;
|
||||
} catch (ResourceRegistryException e) {
|
||||
logger.error("Error while creating {}", hosts, e);
|
||||
logger.error("Error while creating {}", activates, e);
|
||||
throw e;
|
||||
}
|
||||
|
||||
hostingNode.attachResource(hosts);
|
||||
hostingNode.attachResource(activates);
|
||||
shareHostingNode(hostingNode);
|
||||
|
||||
return hosts;
|
||||
return activates;
|
||||
|
||||
}
|
||||
|
||||
|
@ -350,7 +350,7 @@ public class EServiceManager extends ApplicationLifecycleHandler {
|
|||
eService = resourceRegistryClient.getInstance(EService.class, eServiceUUID);
|
||||
} catch (ResourceNotFoundException e) {
|
||||
eService = instantiateEService(eServiceUUID);
|
||||
eService = createHostsRelation(eService, resourceRegistryPublisher).getTarget();
|
||||
eService = createActivatesRelation(eService, resourceRegistryPublisher).getTarget();
|
||||
} catch (ResourceAvailableInAnotherContextException e) {
|
||||
addToContext(resourceRegistryPublisher);
|
||||
eService = resourceRegistryClient.getInstance(EService.class, eServiceUUID);
|
||||
|
|
|
@ -40,32 +40,13 @@ import org.gcube.common.authorization.client.proxy.AuthorizationProxy;
|
|||
import org.gcube.common.authorization.library.provider.SecurityTokenProvider;
|
||||
import org.gcube.common.events.Observes;
|
||||
import org.gcube.common.scope.api.ScopeProvider;
|
||||
import org.gcube.informationsystem.impl.embedded.HeaderImpl;
|
||||
import org.gcube.informationsystem.impl.entity.facet.CPUFacetImpl;
|
||||
import org.gcube.informationsystem.impl.entity.facet.ContainerStateFacetImpl;
|
||||
import org.gcube.informationsystem.impl.entity.facet.MemoryFacetImpl;
|
||||
import org.gcube.informationsystem.impl.entity.facet.NetworkingFacetImpl;
|
||||
import org.gcube.informationsystem.impl.entity.facet.SimplePropertyFacetImpl;
|
||||
import org.gcube.informationsystem.impl.entity.facet.SoftwareFacetImpl;
|
||||
import org.gcube.informationsystem.impl.entity.resource.HostingNodeImpl;
|
||||
import org.gcube.informationsystem.impl.relation.IsIdentifiedByImpl;
|
||||
import org.gcube.informationsystem.impl.relation.consistsof.HasPersistentMemoryImpl;
|
||||
import org.gcube.informationsystem.impl.relation.consistsof.HasVolatileMemoryImpl;
|
||||
import org.gcube.informationsystem.model.embedded.Header;
|
||||
import org.gcube.informationsystem.model.entity.Facet;
|
||||
import org.gcube.informationsystem.model.entity.Resource;
|
||||
import org.gcube.informationsystem.model.entity.facet.CPUFacet;
|
||||
import org.gcube.informationsystem.model.entity.facet.ContainerStateFacet;
|
||||
import org.gcube.informationsystem.model.entity.facet.MemoryFacet;
|
||||
import org.gcube.informationsystem.model.entity.facet.MemoryFacet.MemoryUnit;
|
||||
import org.gcube.informationsystem.model.entity.facet.NetworkingFacet;
|
||||
import org.gcube.informationsystem.model.entity.facet.SimplePropertyFacet;
|
||||
import org.gcube.informationsystem.model.entity.facet.SoftwareFacet;
|
||||
import org.gcube.informationsystem.model.entity.resource.HostingNode;
|
||||
import org.gcube.informationsystem.model.relation.ConsistsOf;
|
||||
import org.gcube.informationsystem.model.relation.IsIdentifiedBy;
|
||||
import org.gcube.informationsystem.model.relation.consistsof.HasPersistentMemory;
|
||||
import org.gcube.informationsystem.model.relation.consistsof.HasVolatileMemory;
|
||||
import org.gcube.informationsystem.model.impl.embedded.HeaderImpl;
|
||||
import org.gcube.informationsystem.model.impl.relation.IsIdentifiedByImpl;
|
||||
import org.gcube.informationsystem.model.reference.embedded.Header;
|
||||
import org.gcube.informationsystem.model.reference.entity.Facet;
|
||||
import org.gcube.informationsystem.model.reference.entity.Resource;
|
||||
import org.gcube.informationsystem.model.reference.relation.ConsistsOf;
|
||||
import org.gcube.informationsystem.model.reference.relation.IsIdentifiedBy;
|
||||
import org.gcube.informationsystem.resourceregistry.api.exceptions.ResourceRegistryException;
|
||||
import org.gcube.informationsystem.resourceregistry.api.exceptions.entity.resource.ResourceAlreadyPresentException;
|
||||
import org.gcube.informationsystem.resourceregistry.api.exceptions.entity.resource.ResourceAvailableInAnotherContextException;
|
||||
|
@ -75,6 +56,25 @@ import org.gcube.informationsystem.resourceregistry.client.ResourceRegistryClien
|
|||
import org.gcube.informationsystem.resourceregistry.client.ResourceRegistryClientFactory;
|
||||
import org.gcube.informationsystem.resourceregistry.publisher.ResourceRegistryPublisher;
|
||||
import org.gcube.informationsystem.resourceregistry.publisher.ResourceRegistryPublisherFactory;
|
||||
import org.gcube.resourcemanagement.model.impl.entity.facet.CPUFacetImpl;
|
||||
import org.gcube.resourcemanagement.model.impl.entity.facet.ContainerStateFacetImpl;
|
||||
import org.gcube.resourcemanagement.model.impl.entity.facet.MemoryFacetImpl;
|
||||
import org.gcube.resourcemanagement.model.impl.entity.facet.NetworkingFacetImpl;
|
||||
import org.gcube.resourcemanagement.model.impl.entity.facet.SimplePropertyFacetImpl;
|
||||
import org.gcube.resourcemanagement.model.impl.entity.facet.SoftwareFacetImpl;
|
||||
import org.gcube.resourcemanagement.model.impl.entity.resource.HostingNodeImpl;
|
||||
import org.gcube.resourcemanagement.model.impl.relation.consistsof.HasPersistentMemoryImpl;
|
||||
import org.gcube.resourcemanagement.model.impl.relation.consistsof.HasVolatileMemoryImpl;
|
||||
import org.gcube.resourcemanagement.model.reference.entity.facet.CPUFacet;
|
||||
import org.gcube.resourcemanagement.model.reference.entity.facet.ContainerStateFacet;
|
||||
import org.gcube.resourcemanagement.model.reference.entity.facet.MemoryFacet;
|
||||
import org.gcube.resourcemanagement.model.reference.entity.facet.NetworkingFacet;
|
||||
import org.gcube.resourcemanagement.model.reference.entity.facet.SimplePropertyFacet;
|
||||
import org.gcube.resourcemanagement.model.reference.entity.facet.SoftwareFacet;
|
||||
import org.gcube.resourcemanagement.model.reference.entity.facet.MemoryFacet.MemoryUnit;
|
||||
import org.gcube.resourcemanagement.model.reference.entity.resource.HostingNode;
|
||||
import org.gcube.resourcemanagement.model.reference.relation.consistsof.HasPersistentMemory;
|
||||
import org.gcube.resourcemanagement.model.reference.relation.consistsof.HasVolatileMemory;
|
||||
import org.gcube.smartgears.configuration.container.ContainerConfiguration;
|
||||
import org.gcube.smartgears.configuration.library.SmartGearsConfiguration;
|
||||
import org.gcube.smartgears.context.Property;
|
||||
|
|
Loading…
Reference in New Issue