From 1adb55d4e0a78ed2f59a505318bae9ca8683569d Mon Sep 17 00:00:00 2001 From: Luca Frosini Date: Tue, 6 Oct 2015 12:47:55 +0000 Subject: [PATCH] refs #579: Use Persistence to persist Scheduled Task configuration on smart-executor https://support.d4science.org/issues/579 Added RunningOn also when is not possible to retreive it git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/vre-management/smart-executor@119446 82a268e6-3cf1-43bd-a215-b396298e98cf --- .../couchdb/PluginStateEvolutionObjectNode.java | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/gcube/vremanagement/executor/persistence/couchdb/PluginStateEvolutionObjectNode.java b/src/main/java/org/gcube/vremanagement/executor/persistence/couchdb/PluginStateEvolutionObjectNode.java index caaa4f5..cf6e4ae 100644 --- a/src/main/java/org/gcube/vremanagement/executor/persistence/couchdb/PluginStateEvolutionObjectNode.java +++ b/src/main/java/org/gcube/vremanagement/executor/persistence/couchdb/PluginStateEvolutionObjectNode.java @@ -3,6 +3,8 @@ */ package org.gcube.vremanagement.executor.persistence.couchdb; +import java.util.UUID; + import org.codehaus.jackson.map.ObjectMapper; import org.codehaus.jackson.node.ObjectNode; import org.gcube.common.resources.gcore.GCoreEndpoint; @@ -30,12 +32,19 @@ public class PluginStateEvolutionObjectNode { public final static String SCOPE_FIELD = "scope"; + public final static String LOCALHOST = "localhost"; + protected static ObjectNode getRunOn(){ ObjectMapper objectMapper = new ObjectMapper(); ObjectNode objectNode = objectMapper.createObjectNode(); - GCoreEndpoint gCoreEndpoint = SmartExecutorInitalizator.getCtx().profile(GCoreEndpoint.class); - objectNode.put(GHN_ID_FIELD, gCoreEndpoint.profile().ghnId()); - objectNode.put(GHN_HOSTNAME_FIELD, SmartExecutorInitalizator.getCtx().container().configuration().hostname()); + try { + GCoreEndpoint gCoreEndpoint = SmartExecutorInitalizator.getCtx().profile(GCoreEndpoint.class); + objectNode.put(GHN_ID_FIELD, gCoreEndpoint.profile().ghnId()); + objectNode.put(GHN_HOSTNAME_FIELD, SmartExecutorInitalizator.getCtx().container().configuration().hostname()); + }catch(Exception e){ + objectNode.put(GHN_ID_FIELD, LOCALHOST + "_" + UUID.randomUUID()); + objectNode.put(GHN_HOSTNAME_FIELD, LOCALHOST); + } return objectNode; }