This commit is contained in:
Lucio Lelii 2008-11-13 17:50:41 +00:00
parent 63ad88d371
commit 3a0a4da776
2 changed files with 217 additions and 182 deletions

View File

@ -16,12 +16,24 @@
<Dependency>
<Service>
<Class>VREManagement</Class>
<Name>VREModeler</Name>
<Name>VREModeler</Name>
<Version>1.0.0</Version>
</Service>
<Package>VREModeler-stubs</Package>
<Version>1.0.0</Version>
<Scope level="GHN"/>
<Optional>false</Optional>
</Dependency>
<Dependency>
<Service>
<Class>VREManagement</Class>
<Name>VREManager</Name>
<Version>1.0.0</Version>
</Service>
<Package>VREManager-stubs</Package>
<Version>1.00.02</Version>
<Scope level="GHN"/>
<Optional>false</Optional>
</Dependency>
</Dependencies>
<GARArchive>org.gcube.vremanagement.vremodeler.gar</GARArchive>

View File

@ -3,9 +3,13 @@ package org.gcube.vremanagement.vremodeler.impl;
import java.rmi.RemoteException;
import java.sql.Date;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Hashtable;
import java.util.List;
import javax.xml.rpc.ServiceException;
import org.gcube.common.core.contexts.GHNContext;
import org.gcube.common.core.faults.GCUBEFault;
import org.gcube.common.core.informationsystem.client.AtomicCondition;
@ -14,6 +18,7 @@ import org.gcube.common.core.informationsystem.client.queries.GCUBERIQuery;
import org.gcube.common.core.resources.GCUBECollection;
import org.gcube.common.core.resources.GCUBEMCollection;
import org.gcube.common.core.resources.GCUBERunningInstance;
import org.gcube.common.core.resources.impl.kxml.KGCUBEResource;
import org.gcube.common.core.types.VOID;
import org.gcube.common.core.utils.logging.GCUBELog;
import org.gcube.vremanagement.vremanager.stubs.vremanager.AddResourcesParameters;
@ -38,11 +43,11 @@ import org.globus.wsrf.encoding.SerializationException;
public class ModelerService {
private static final GCUBELog logger = new GCUBELog(ModelerService.class.getName());
protected ModelerResource getResource() throws ResourceException{
return (ModelerResource) ModelerContext.getPortTypeContext().getWSHome().find();
}
/**
*
* @param request void
@ -51,7 +56,7 @@ public class ModelerService {
*
*/
public void setVREModel(VRERequest request) throws GCUBEFault{
Date dateFrom=null, dateTo=null;
ResultSet res=null;
try {
@ -60,33 +65,33 @@ public class ModelerService {
{
dateFrom=new Date(request.getStartTime());
dateTo=new Date(request.getEndTime());
DBInterface.queryDB("update VRE set name='"+request.getVREName()+"', description='"+request.getVREDescription()+"', dldesigner='"+request.getVREDesigner()+"', dlmanager= '"+request.getVREManager()+"', intervalfrom='"+dateFrom+"', intervalto='"+dateTo+"' where DL.id='"+getResource().getID()+"'; ");
DBInterface.queryDB("update VRE set name='"+request.getVREName()+"', description='"+request.getVREDescription()+"', vredesigner='"+request.getVREDesigner()+"', vremanager= '"+request.getVREManager()+"', intervalfrom='"+dateFrom+"', intervalto='"+dateTo+"' where VRE.id='"+getResource().getID()+"'; ");
}else{
dateFrom=new Date(request.getStartTime());
dateTo=new Date(request.getEndTime());
String eprToString;
try {
eprToString = ObjectSerializer.toString(getResource().getEPR());
//logger.debug("EPR: "+eprToString);
//logger.debug("EPR: "+eprToString);
} catch (SerializationException e) {
//logger.error("VDL Model Service: error serializing EPR");
throw new RemoteException("VDL Model Service: error serializing EPR",e);
}
DBInterface.ExecuteUpdate("insert into VRE values('"+getResource().getID()+"','"+request.getVREName()+"','"+request.getVREDescription()+"','"+request.getVREDesigner()+"','"+request.getVREManager()+"','"+dateFrom+"','"+dateTo+"','"+eprToString+"','In Progress'); ");
}
} catch (Exception e) {
//logger.error(e.getMessage());
//e.printStackTrace();
throw new GCUBEFault(e);
}
}
/**
*
*
@ -95,11 +100,11 @@ public class ModelerService {
* @throws RemoteException -
*/
public String getVREModel(VOID var) throws GCUBEFault{
String toReturn =null;
ResultSet res=null;
//logger.debug("Request DL with ID "+ID);
try {
String ID=getResource().getId();
@ -112,7 +117,7 @@ public class ModelerService {
}
return toReturn;
}
/**
* return an XML containing the DHN list
*
@ -127,19 +132,19 @@ public class ModelerService {
try{
DBInterface.connect();
res= DBInterface.queryDB("select * from GHN;");
ResultSet resRelated= DBInterface.queryDB("select ghnid from VRERELATEDGHN where VRERELATEDGHN.vreid='"+getResource().getId()+"';");
while(resRelated.next())
relatedGHN.add(resRelated.getString(1));
}catch(Exception e) {
logger.error("VDL Model: error retreiving GHNs"+e);
throw new GCUBEFault(e);}
return XMLUtil.PrepareGHNsXML(res, relatedGHN);
}
/**
* Set the selected DHN
*
@ -151,9 +156,9 @@ public class ModelerService {
try{
String instanceID=(String) getResource().getId();
DBInterface.ExecuteUpdate("DELETE FROM VRERELATEDDHN WHERE VRERELATEDDHN.vreid='"+instanceID+"';");
String dlKey=instanceID;
ArrayList<List<String>> values= new ArrayList<List<String>>(request.getGHNElement().length);
ArrayList<String> row=null;
for (int i=0; i<request.getGHNElement().length; i++)
@ -163,13 +168,13 @@ public class ModelerService {
row.add(request.getGHNElement()[i]);
values.add(row);
}
DBInterface.InsertInto("VRERELATEDGHN", values);
}catch(Exception e){throw new GCUBEFault(e);}
}
/**
*
* Return an XML with all the collection selectable
@ -184,18 +189,18 @@ public class ModelerService {
try{
DBInterface.connect();
res= DBInterface.queryDB("select * from COLLECTION;");
ResultSet resRelated= DBInterface.queryDB("select collid from VRERELATEDCOLLECTION where VRERELATEDCOLLECTION.dlid='"+getResource().getId()+"';");
while(resRelated.next()){
relatedCollection.add(resRelated.getString(1));
}
}catch(Exception e) {//logger.error("VDL Model: error on DB");
throw new GCUBEFault(e);}
return XMLUtil.PrepareCollectionXML(res, relatedCollection);
}
/**
*
* Insert in the DB the selected collection
@ -208,9 +213,9 @@ public class ModelerService {
try{
DBInterface.connect();
DBInterface.ExecuteUpdate("DELETE FROM VRERELATEDCOLLECTION WHERE VRERELATEDCOLLECTION.vreid='"+getResource().getID()+"';");
String dlKey=(String) getResource().getId();
ArrayList<List<String>> values= new ArrayList<List<String>>(request.getCollectionElement().length);
ArrayList<String> row=null;
for (int i=0; i<request.getCollectionElement().length; i++)
@ -222,9 +227,9 @@ public class ModelerService {
DBInterface.connect();
DBInterface.InsertInto("VRERELATEDCOLLECTION", values);
}catch(Exception e){throw new GCUBEFault(e);}
}
/**
* Return the possibles metadata format for selected collection
*
@ -235,12 +240,12 @@ public class ModelerService {
public String getMetadataRelatedToCollection() throws GCUBEFault {
ResultSet resDerivable, resNative, collectionRelated, totalMF;
String preparedWhere="";
Hashtable<String, ArrayList<String>> selectedMetadataStructure= new Hashtable<String, ArrayList<String>>();
boolean enter=false;
try{
DBInterface.connect();
collectionRelated= DBInterface.queryDB("select VRERELATEDCOLLECTION.collid from VRERELATEDCOLLECTION where DLRELATEDCOLLECTION.dlid='"+getResource().getId()+"';");
//select only the resuls related with selected collection
preparedWhere= " and ( ";
@ -248,9 +253,9 @@ public class ModelerService {
enter=true;
preparedWhere+= " mdc.collid='"+collectionRelated.getString(1)+"' or ";
}
ResultSet metadataSelected= DBInterface.queryDB("select collid, mfid from VRERELATEDMETADATAFORMAT where vreid='"+getResource().getID()+"';");
//recovering possible previsious selection for metadataFormat
while (metadataSelected.next()){
if(selectedMetadataStructure.containsKey(metadataSelected.getString(1)))
@ -261,30 +266,30 @@ public class ModelerService {
selectedMetadataStructure.put(metadataSelected.getString(1), temp);
}
}
if(!enter) throw new RemoteException("no collection selected for this DL");
else preparedWhere=preparedWhere.substring(0, preparedWhere.length()-4)+") ";
totalMF = DBInterface.queryDB("select MDFORMAT.id, MDFORMAT.name, MDFORMAT.schemauri, MDFORMAT.language from MDFORMAT;");
resDerivable= DBInterface.queryDB("select mdc.collid, mdc.collname, mdc.colldesc , collmdf.id as mdfid from (select * from DERIVABLEMDF INNER JOIN MDFORMAT on DERIVABLEMDF.mdfid= MDFORMAT.id) " +
"as COLLMDF,(select COLLECTION.id as collid, COLLECTION.name as collname, COLLECTION.description as colldesc, MDCOLLECTION.id as mdid from COLLECTION INNER JOIN MDCOLLECTION " +
"ON COLLECTION.id = MDCOLLECTION.relatedcollectionid) as MDC where COLLMDF.mdcollid= MDC.mdid "+preparedWhere+";");
resNative= DBInterface.queryDB("select mdc.collid, mdc.collname, mdc.colldesc , collmdf.id as mdfid from (select * from NATIVEMDF INNER JOIN MDFORMAT on NATIVEMDF.mdfid= MDFORMAT.id) " +
"as COLLMDF,(select COLLECTION.id as collid, COLLECTION.name as collname, COLLECTION.description as colldesc, MDCOLLECTION.id as mdid from COLLECTION INNER JOIN MDCOLLECTION " +
"ON COLLECTION.id = MDCOLLECTION.relatedcollectionid) as MDC where COLLMDF.mdcollid= MDC.mdid "+preparedWhere+";");
"ON COLLECTION.id = MDCOLLECTION.relatedcollectionid) as MDC where COLLMDF.mdcollid= MDC.mdid "+preparedWhere+";");
}catch(Exception e) {//logger.error("ModelService: "+e.getMessage());
throw new GCUBEFault(e);
}
return XMLUtil.PrepareMCFormatXML(null, null, null, selectedMetadataStructure);
}
/**
*
* Sets selected Metadata Format
@ -298,7 +303,7 @@ public class ModelerService {
DBInterface.ExecuteUpdate("DELETE FROM VRERELATEDMETADATAFORMAT WHERE VRERELATEDMETADATAFORMAT.vreid='"+getResource().getId()+"';");
//String[] singleElement;
String key=(String) getResource().getId();
//logger.debug(request.getCollectionIDArray().length+" "+request.getMdFormatIDArray().length+" "+request.getCheckedArray().length+" "+request.getCheckedArray(0).getCheckedRowElement().length);
ArrayList<List<String>> values= new ArrayList<List<String>>(request.getCollectionIDArray().length);
ArrayList<String> row=null;
@ -311,15 +316,15 @@ public class ModelerService {
row.add(request.getCollectionIDArray(i));
row.add(request.getMdFormatIDArray(j));
values.add(row);
}
}
DBInterface.InsertInto("VRERELATEDMETADATAFORMAT", values);
}catch(Exception e){throw new GCUBEFault(e);}
}
/**
* Return an xml with the selectable functionalities
* String
@ -329,13 +334,13 @@ public class ModelerService {
* @throws RemoteException -
*/
public String getFunctionality(VOID var) throws GCUBEFault {
ResultSet resFunct=null;
ResultSet selectedFuncRes=null;
ResultSet selectedCSRes=null;
ArrayList<Integer> selectedFunctionality= new ArrayList<Integer>();
ArrayList<String> selectedCS= new ArrayList<String>();
try {
DBInterface.connect();
resFunct= DBInterface.queryDB("select * from functionality where father is null;");
@ -350,11 +355,11 @@ public class ModelerService {
e.printStackTrace();
throw new GCUBEFault(e);
}
return XMLUtil.PrepareFunctionalityXML(resFunct, selectedFunctionality, selectedCS);
}
/**
*
*
@ -366,11 +371,11 @@ public class ModelerService {
try{
DBInterface.ExecuteUpdate("DELETE FROM VRERELATEDFUNCT WHERE VRERELATEDFUNCT.vreid='"+getResource().getId()+"';");
DBInterface.ExecuteUpdate("DELETE FROM VRERELATEDCS WHERE VRERELATEDCS.vreid='"+getResource().getId()+"';");
String dlKey=(String) getResource().getId();
//logger.debug("KEY: "+dlKey);
if (request.getFunctionalityIDElement()!=null){
ArrayList<List<String>> values= new ArrayList<List<String>>(request.getFunctionalityIDElement().length);
ArrayList<String> row=null;
@ -381,15 +386,15 @@ public class ModelerService {
row.add(request.getFunctionalityIDElement()[i]);
values.add(row);
}
DBInterface.InsertInto("VRERELATEDFUNCT", values);
}
if (request.getCsIDElement()!=null)
{
ArrayList<List<String>> values= new ArrayList<List<String>>(request.getCsIDElement().length);
ArrayList<String> row=null;
for (int i=0; i<request.getCsIDElement().length; i++)
{
row= new ArrayList<String>(2);
@ -397,13 +402,13 @@ public class ModelerService {
row.add(request.getCsIDElement()[i]);
values.add(row);
}
DBInterface.InsertInto("VRERELATEDCS", values);
}
}catch(Exception e){throw new GCUBEFault(e);}
}
/**
* Return an XML with Quality parameter to insert
*
@ -414,8 +419,8 @@ public class ModelerService {
public String getQuality(VOID var) throws GCUBEFault{
return XMLUtil.PrepareQualityXML();
}
/**
* Sets Quality parameters
*
@ -423,9 +428,9 @@ public class ModelerService {
* @throws RemoteException -
*/
public void setQuality(String request) throws GCUBEFault{
}
/**
*
* set the DL state to Pending
@ -439,7 +444,7 @@ public class ModelerService {
DBInterface.ExecuteUpdate("UPDATE VRE SET STATUS='Pending' WHERE VRE.id='"+getResource().getId()+"';");
}catch(Exception e){throw new GCUBEFault(e);}
}
/**
*
* @param request
@ -447,103 +452,121 @@ public class ModelerService {
* @throws RemoteException -
*/
public void deployVRE(VOID var) throws GCUBEFault{
boolean contactedVRE= false;
try {
DBInterface.ExecuteUpdate("UPDATE VRE SET STATUS='Deploying' WHERE VRE.id='"+getResource().getId()+"';");
} catch (ResourceException e1) {
throw new GCUBEFault(e1);
}
VREManagerServiceAddressingLocator vreManAL= new VREManagerServiceAddressingLocator();
VREManagerPortType vreManagerPT= null;
try {
List<GCUBERunningInstance> ris= null;
try{
ISClient client= GHNContext.getImplementation(ISClient.class);
GCUBERIQuery query=client.getQuery(GCUBERIQuery.class);
query.addAtomicConditions(new AtomicCondition("//ServiceName", "VREManager"));
query.addAtomicConditions(new AtomicCondition("//ServiceClass", "VREManagement"));
List<GCUBERunningInstance> ris= client.execute(query, ServiceContext.getContext().getScope());
ris = client.execute(query, ServiceContext.getContext().getScope());
}catch (Exception e) { logger.error("Error Excecuting Query"); throw new GCUBEFault(e);}
for (GCUBERunningInstance ri: ris){
try{
vreManagerPT=vreManAL.getVREManagerPortTypePort(ri.getAccessPoint().getEndpoint("gcube/vremanagement/VREManager"));
//TODO: set properties values
OptionsParameters ops=new OptionsParameters();
ScopeOption[] scopeOptionList= new ScopeOption[6];
ScopeOption soDesigner= new ScopeOption();
soDesigner.setName("DESIGNER");
scopeOptionList[0]= soDesigner;
ScopeOption soCreator= new ScopeOption();
soCreator.setName("CREATOR");
scopeOptionList[1]= soCreator;
ScopeOption soEndtime= new ScopeOption();
soEndtime.setName("ENDTIME");
scopeOptionList[2]= soEndtime;
ScopeOption soStarttime= new ScopeOption();
soStarttime.setName("STARTTIME");
scopeOptionList[3]= soStarttime;
ScopeOption soDescription= new ScopeOption();
soDescription.setName("DESCRIPTION");
scopeOptionList[4]= soDescription;
ScopeOption soDisplayname= new ScopeOption();
soDisplayname.setName("DISPLAYNAME");
scopeOptionList[5]= soDisplayname;
ops.setScopeOptionList(scopeOptionList);
vreManagerPT.setScopeOptions(ops);
//ResourceItem resItem= new ResourceItem();
AddResourcesParameters arp= new AddResourcesParameters();
ResourceList rl= new ResourceList();
List<ResourceItem> resItemList= new ArrayList<ResourceItem>();
ResourceItem resItem= null;
//retrieving Collection
ResultSet resRelatedCol =DBInterface.queryDB("select DLRELATEDCOLLECTION.collid from DLRELATEDCOLLECTION where DLRELATEDCOLLECTION.dlid='"+getResource().getId()+"';");
while (resRelatedCol.next()){
resItem= new ResourceItem();
resItem.setID(resRelatedCol.getString(1));
resItem.setType(GCUBECollection.TYPE);
}
ResultSet resRelatedMetadataCol =DBInterface.queryDB("select VRERELATEDCOLLECTION.collid from DLRELATEDCOLLECTION where VRERELATEDCOLLECTION.dlid='"+getResource().getId()+"';");
while (resRelatedCol.next()){
resItem= new ResourceItem();
resItem.setID(resRelatedCol.getString(1));
resItem.setType(GCUBEMCollection.TYPE);
}
//retrieving MetadataCollection
//vreManagerPT.addResources(arg0)
}catch(Exception e){logger.debug("trying next ri");}
}
} catch (Exception e) {
throw new GCUBEFault("cannot retrieve VREManager");
String resourceID;
try {
resourceID = getResource().getId();
} catch (ResourceException e) {
logger.error("Error retrieving the Resource Query"); throw new GCUBEFault(e);
}
/*
for (GCUBERunningInstance ri: ris){
try{
vreManagerPT=vreManAL.getVREManagerPortTypePort(ri.getAccessPoint().getEndpoint("gcube/vremanagement/VREManager"));
OptionsParameters ops;
try{
ResultSet resGenericInfo=DBInterface.queryDB("select * from VRE where VRE.id='"+resourceID+"'; ");
if (!resGenericInfo.next()) throw new GCUBEFault("The VRE with ID "+resourceID+" cannot be retrieved");
//TODO: set properties values
ops=new OptionsParameters();
ScopeOption[] scopeOptionList= new ScopeOption[6];
ScopeOption soDesigner= new ScopeOption();
soDesigner.setName("DESIGNER");
soDesigner.setValue(resGenericInfo.getString("vredesigner"));
scopeOptionList[0]= soDesigner;
ScopeOption soCreator= new ScopeOption();
soCreator.setName("CREATOR");
soCreator.setValue(resGenericInfo.getString("vremanager"));
scopeOptionList[1]= soCreator;
ScopeOption soEndtime= new ScopeOption();
soEndtime.setName("ENDTIME");
soEndtime.setValue(KGCUBEResource.toXMLDateAndTime(resGenericInfo.getDate("IntervalTo")));
scopeOptionList[2]= soEndtime;
ScopeOption soStarttime= new ScopeOption();
soStarttime.setName("STARTTIME");
soStarttime.setValue(KGCUBEResource.toXMLDateAndTime(resGenericInfo.getDate("IntervalFrom")));
scopeOptionList[3]= soStarttime;
ScopeOption soDescription= new ScopeOption();
soDescription.setName("DESCRIPTION");
soDescription.setValue(resGenericInfo.getString("description"));
scopeOptionList[4]= soDescription;
ScopeOption soDisplayname= new ScopeOption();
soDisplayname.setName("DISPLAYNAME");
soDisplayname.setValue(resGenericInfo.getString("name"));
scopeOptionList[5]= soDisplayname;
ops.setScopeOptionList(scopeOptionList);
}catch(SQLException e) {logger.error("cannot retreive the VRE"); throw new GCUBEFault(e);}
//sending scope options
vreManagerPT.setScopeOptions(ops);
AddResourcesParameters arp= new AddResourcesParameters();
ResourceList rl= new ResourceList();
List<ResourceItem> resItemList= new ArrayList<ResourceItem>();
ResourceItem resItem= null;
//retrieving Collection
try{
ResultSet resRelatedCol =DBInterface.queryDB("select VRERELATEDCOLLECTION.collid from VRERELATEDCOLLECTION where VRERELATEDCOLLECTION.dlid='"+resourceID+"';");
while (resRelatedCol.next()){
resItem= new ResourceItem();
resItem.setID(resRelatedCol.getString(1));
resItem.setType(GCUBECollection.TYPE);
resItemList.add(resItem);
}
}catch(SQLException sqle){logger.error("Error contacting HSQLDB");}
/*
ResultSet resRelatedMetadataCol =DBInterface.queryDB("select VRERELATEDCOLLECTION.collid from DLRELATEDCOLLECTION where VRERELATEDCOLLECTION.dlid='"+getResource().getId()+"';");
while (resRelatedCol.next()){
resItem= new ResourceItem();
resItem.setID(resRelatedCol.getString(1));
resItem.setType(GCUBEMCollection.TYPE);
}
*/
contactedVRE= true;
}catch(RemoteException re){logger.warn("Error Contacting VREManager, trying next RI"); contactedVRE= false;}
catch(ServiceException se1){logger.warn("Error Contacting VREManager, trying next RI"); contactedVRE= false;}
}
if (!contactedVRE) {
logger.error("Error Contacting VREManager");
throw new GCUBEFault("Error Contacting VREManager");
}
/*
DLManagementFactoryServiceAddressingLocator dlMan=new DLManagementFactoryServiceAddressingLocator();
try {
//retreive and connect to the DLManagement
@ -558,7 +581,7 @@ public class ModelerService {
String dlId=(String)getResource().getId();
CreateDLMessage createDLMessage= new CreateDLMessage();
createDLMessage.setVDLUniqueID(dlId);
ResultSet dlGenRes= DBInterface.queryDB("select name, description, dldesigner, dlmanager, intervalto, id from DL where DL.id='"+dlId+"';");
if (dlGenRes.next()){
createDLMessage.setDLName((new NAL().getDefaultVO())+"/"+dlGenRes.getString(1));
@ -571,29 +594,29 @@ public class ModelerService {
createDLMessage.setVDLUniqueID(dlGenRes.getString(6));
createDLMessage.setIsSecurityEnabled(ModelFactoryService.isSecurityEnabled);
}else throw new RemoteException("VDLModel Service: impossible to retreive specific DL");
//logger.debug("Setted first parameters");
ArrayList<String> tempArray= new ArrayList<String>();
//retreive and set collection ids
ResultSet dlCollRes= DBInterface.queryDB("select collid from DLRELATEDCOLLECTION where DLRELATEDCOLLECTION.dlid='"+dlId+"';");
for (int i=0; dlCollRes.next(); i++)
tempArray.add(dlCollRes.getString(1));
createDLMessage.setColIDsList(tempArray.toArray(new String[0]));
tempArray= new ArrayList<String>();
//retreive Metadata IDs
ResultSet dlMetadataRes=DBInterface.queryDB("select DISTINCT NATIVEMDF.MDCOLLID from DLRELATEDMETADATAFORMAT, NATIVEMDF where DLRELATEDMETADATAFORMAT.mfid=NATIVEMDF.mdfid and DLRELATEDMETADATAFORMAT.dlid='"+dlId+"';");
for (int i=0; dlMetadataRes.next(); i++)
tempArray.add(dlMetadataRes.getString(1));
createDLMessage.setMcIDsList(tempArray.toArray(new String[0]));
//TODO: TP retriving is a mistery :)
//adding functionality to DLManagement request
tempArray= new ArrayList<String>();
ResultSet dlRelatedFunctionality=DBInterface.queryDB("select RELATEDSERVICEID.id from RELATEDSERVICEID, SERVICES, DLRELATEDFUNCT where DLRELATEDFUNCT.dlid='"+dlId+"' and SERVICES.id=DLRELATEDFUNCT.funcid and SERVICES.class=RELATEDSERVICEID.class and SERVICES.name=RELATEDSERVICEID.name;");
@ -602,38 +625,38 @@ public class ModelerService {
logger.debug("ServiceID: "+dlRelatedFunctionality.getString(1));
}
createDLMessage.setServiceIDsList(tempArray.toArray(new String[0]));
//adding DHN to DLManagement request
tempArray= new ArrayList<String>();
ResultSet dlRelatedDHN=DBInterface.queryDB("select DLRELATEDDHN.dhnid from DLRELATEDDHN where DLRELATEDDHN.dlid='"+dlId+"'");
for (int i=0; dlRelatedDHN.next(); i++)
tempArray.add(dlRelatedDHN.getString(1));
createDLMessage.setDhnIDsList(tempArray.toArray(new String[0]));
//adding cs to DLManagement request
tempArray= new ArrayList<String>();
ResultSet dlCSRes= DBInterface.queryDB("select csid from DLRELATEDCS where DLRELATEDCS.dlid='"+getResource().getId()+"';");
for (int i=0; dlCSRes.next(); i++)
tempArray.add(dlCSRes.getString(1));
createDLMessage.setCsIDsList(tempArray.toArray(new String[0]));
//DLManagement invocation
dlManagementFactory.createDL(createDLMessage);
} catch (Exception e) {
logger.error("VDLModel Service: Error Deploying DL "+e.getMessage());
e.printStackTrace();
DBInterface.ExecuteUpdate("UPDATE DL SET STATUS='Failed' WHERE DL.id='"+getResource().getId()+"';");
throw new RemoteException("VDLModel Service: Error Deploying DL" ,e);
}
*/
}
*/
}
}