From 6a63b53c6fd7766b5349c606404c296632b52544 Mon Sep 17 00:00:00 2001 From: Lucio Lelii Date: Tue, 10 Feb 2009 18:54:48 +0000 Subject: [PATCH] git-svn-id: http://svn.research-infrastructures.eu/public/d4science/gcube/trunk/vre-management/VREModeler@9586 82a268e6-3cf1-43bd-a215-b396298e98cf --- .../vremodeler/db/IStoDBUtil.java | 12 ++++----- .../impl/ModelerPersistenceDelegate.java | 26 +++++++++++++++++++ .../vremodeler/impl/ServiceContext.java | 13 +++++++--- .../impl/util/MFRelationNative.java | 2 +- .../vremodeler/impl/util/MetadataFormat.java | 2 +- .../vremodeler/impl/util/XMLUtil.java | 5 ++-- 6 files changed, 47 insertions(+), 13 deletions(-) create mode 100644 src/org/gcube/vremanagement/vremodeler/impl/ModelerPersistenceDelegate.java diff --git a/src/org/gcube/vremanagement/vremodeler/db/IStoDBUtil.java b/src/org/gcube/vremanagement/vremodeler/db/IStoDBUtil.java index 0c91057..8e6dbc6 100644 --- a/src/org/gcube/vremanagement/vremodeler/db/IStoDBUtil.java +++ b/src/org/gcube/vremanagement/vremodeler/db/IStoDBUtil.java @@ -88,12 +88,12 @@ public class IStoDBUtil { { try{ DBInterface.connect(); - DBInterface.deleteAll("VRERELATEDCOLLECTION"); - DBInterface.deleteAll("VRERELATEDCS"); - DBInterface.deleteAll("VRERELATEDMETADATAFORMAT"); - DBInterface.deleteAll("VRERELATEDFUNCT"); - DBInterface.deleteAll("VRERELATEDGHN"); - DBInterface.deleteAll("VRE"); + //DBInterface.deleteAll("VRERELATEDCOLLECTION"); + //DBInterface.deleteAll("VRERELATEDCS"); + //DBInterface.deleteAll("VRERELATEDMETADATAFORMAT"); + //DBInterface.deleteAll("VRERELATEDFUNCT"); + //DBInterface.deleteAll("VRERELATEDGHN"); + //DBInterface.deleteAll("VRE"); DBInterface.deleteAll("nativemdf"); DBInterface.deleteAll("derivablemdf"); DBInterface.deleteAll("mdformat"); diff --git a/src/org/gcube/vremanagement/vremodeler/impl/ModelerPersistenceDelegate.java b/src/org/gcube/vremanagement/vremodeler/impl/ModelerPersistenceDelegate.java new file mode 100644 index 0000000..0254b79 --- /dev/null +++ b/src/org/gcube/vremanagement/vremodeler/impl/ModelerPersistenceDelegate.java @@ -0,0 +1,26 @@ +package org.gcube.vremanagement.vremodeler.impl; + +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; + +import org.gcube.common.core.persistence.GCUBEWSFilePersistenceDelegate; + + +public class ModelerPersistenceDelegate extends GCUBEWSFilePersistenceDelegate{ + + + protected void onLoad(ModelerResource resource, ObjectInputStream ois) throws Exception { + super.onLoad(resource, ois); + resource.setId((String)ois.readObject()); + resource.setReportFirstStep((String)ois.readObject()); + resource.setReportSecondStep((String)ois.readObject()); + } + + + protected void onStore(ModelerResource resource,ObjectOutputStream oos) throws Exception { + super.onStore(resource, oos); + oos.writeObject(resource.getId()); + oos.writeObject(resource.getReportFirstStep()); + oos.writeObject(resource.getReportSecondStep()); + } +} diff --git a/src/org/gcube/vremanagement/vremodeler/impl/ServiceContext.java b/src/org/gcube/vremanagement/vremodeler/impl/ServiceContext.java index b842700..ec9d985 100644 --- a/src/org/gcube/vremanagement/vremodeler/impl/ServiceContext.java +++ b/src/org/gcube/vremanagement/vremodeler/impl/ServiceContext.java @@ -1,6 +1,8 @@ package org.gcube.vremanagement.vremodeler.impl; import org.gcube.common.core.contexts.GCUBEServiceContext; +import org.gcube.common.core.resources.GCUBERunningInstance; +import org.gcube.common.core.resources.runninginstance.DeploymentData; import org.gcube.vremanagement.vremodeler.db.IStoDBUtil; public class ServiceContext extends GCUBEServiceContext{ @@ -18,9 +20,14 @@ public class ServiceContext extends GCUBEServiceContext{ protected String getJNDIName() {return "gcube/vremanagement/vremodeler";} protected void onReady() throws Exception{ - logger.info("ready event invoked on " + this.getName()); - IStoDBUtil.initDB(ServiceContext.getContext().getStartScopes()[0].isInfrastructure()? ServiceContext.getContext().getStartScopes()[1]: ServiceContext.getContext().getStartScopes()[0]); - + try{ + logger.info("ready event invoked on " + this.getName()); + IStoDBUtil.initDB(ServiceContext.getContext().getStartScopes()[0].isInfrastructure()? ServiceContext.getContext().getStartScopes()[1]: ServiceContext.getContext().getStartScopes()[0]); + ModelerContext.getPortTypeContext().getWSHome().checkResourceScope(); + }catch (Exception e){ + this.setStatus(Status.FAILED, true); + throw e; + } } } diff --git a/src/org/gcube/vremanagement/vremodeler/impl/util/MFRelationNative.java b/src/org/gcube/vremanagement/vremodeler/impl/util/MFRelationNative.java index 597d258..88f3b89 100644 --- a/src/org/gcube/vremanagement/vremodeler/impl/util/MFRelationNative.java +++ b/src/org/gcube/vremanagement/vremodeler/impl/util/MFRelationNative.java @@ -28,6 +28,6 @@ public class MFRelationNative implements Listable{ public boolean equals(Object o){ MFRelationNative mf= (MFRelationNative) o; - return (this.metaCollectionID==mf.getMetadataCollectionId()) && (this.metaFormatID==mf.getMetadataFormatId()); + return (this.metaCollectionID.compareTo(mf.getMetadataCollectionId())==0) && (this.metaFormatID.compareTo(mf.getMetadataFormatId())==0); } } diff --git a/src/org/gcube/vremanagement/vremodeler/impl/util/MetadataFormat.java b/src/org/gcube/vremanagement/vremodeler/impl/util/MetadataFormat.java index 0beb0eb..7af4d7d 100644 --- a/src/org/gcube/vremanagement/vremodeler/impl/util/MetadataFormat.java +++ b/src/org/gcube/vremanagement/vremodeler/impl/util/MetadataFormat.java @@ -61,7 +61,7 @@ public class MetadataFormat implements Listable{ return ((this.name.compareTo(mf.getName())==0) && (languageControl) && - (this.schemaURI.compareTo(mf.getSchemaURI())==0)); + (this.schemaURI.toString().compareTo(mf.getSchemaURI().toString())==0)); } public List getAsStringList(){ diff --git a/src/org/gcube/vremanagement/vremodeler/impl/util/XMLUtil.java b/src/org/gcube/vremanagement/vremodeler/impl/util/XMLUtil.java index 64345f9..b9189b0 100644 --- a/src/org/gcube/vremanagement/vremodeler/impl/util/XMLUtil.java +++ b/src/org/gcube/vremanagement/vremodeler/impl/util/XMLUtil.java @@ -198,7 +198,8 @@ public class XMLUtil { //setting the derivable MDF - while(resDerivable.next()){ + /* TODO: when metadataBroker will be ready for transformation + * while(resDerivable.next()){ Element tmpKeyEl= addElements(doc, "Collection", new Element[]{ createTextElement(doc,"CollectionID" , resDerivable.getString(1)), createTextElement(doc,"Name" , resDerivable.getString(2)), @@ -227,7 +228,7 @@ public class XMLUtil { MDFHash.put(resDerivable.getString(1), new Couple>(tmpKeyEl, tempArray) ); } } - + */ }catch(SQLException e){logger.error("hsqldb error"); e.printStackTrace(); }catch(Exception e){