package org.gcube.dataanalysis.dataminer.poolmanager.clients; import static org.gcube.resources.discovery.icclient.ICFactory.client; import static org.gcube.resources.discovery.icclient.ICFactory.clientFor; import static org.gcube.resources.discovery.icclient.ICFactory.queryFor; import java.io.BufferedReader; import java.io.ByteArrayOutputStream; import java.io.File; ***REMOVED*** import java.io.InputStream; import java.io.InputStreamReader; import java.io.PrintStream; import java.io.StringWriter; ***REMOVED*** ***REMOVED*** import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; import java.util.Collections; import java.util.HashSet; import java.util.LinkedHashMap; import java.util.LinkedList; ***REMOVED*** import java.util.Map; import java.util.Scanner; ***REMOVED*** import java.util.TreeMap; import java.util.TreeSet; import java.util.Vector; ***REMOVED*** import org.gcube.common.resources.gcore.GenericResource; import org.gcube.common.resources.gcore.Resources; import org.gcube.common.resources.gcore.ServiceEndpoint; ***REMOVED*** ***REMOVED*** import org.gcube.dataanalysis.dataminer.poolmanager.datamodel.Cluster; import org.gcube.dataanalysis.dataminer.poolmanager.datamodel.Dependency; import org.gcube.dataanalysis.dataminer.poolmanager.datamodel.Domain; import org.gcube.dataanalysis.dataminer.poolmanager.datamodel.Host; import org.gcube.dataanalysis.dataminer.poolmanager.datamodel.comparator.HostComparator; ***REMOVED*** import org.gcube.informationsystem.publisher.AdvancedScopedPublisher; import org.gcube.informationsystem.publisher.RegistryPublisherFactory; import org.gcube.informationsystem.publisher.ScopedPublisher; import org.gcube.informationsystem.publisher.exception.RegistryNotFoundException; import org.gcube.resources.discovery.client.api.DiscoveryClient; import org.gcube.resources.discovery.client.queries.api.SimpleQuery; ***REMOVED*** ***REMOVED*** import org.tmatesoft.svn.core.SVNDepth; ***REMOVED*** import org.tmatesoft.svn.core.SVNURL; import org.tmatesoft.svn.core.auth.ISVNAuthenticationManager; import org.tmatesoft.svn.core.internal.io.dav.DAVRepositoryFactory; import org.tmatesoft.svn.core.io.SVNRepository; import org.tmatesoft.svn.core.io.SVNRepositoryFactory; import org.tmatesoft.svn.core.wc.ISVNOptions; import org.tmatesoft.svn.core.wc.SVNClientManager; import org.tmatesoft.svn.core.wc.SVNRevision; import org.tmatesoft.svn.core.wc.SVNUpdateClient; import org.tmatesoft.svn.core.wc.SVNWCUtil; import au.com.bytecode.opencsv.CSVReader; public class DMPMClientConfigurator ***REMOVED*** private static final Logger LOGGER = LoggerFactory.getLogger(DMPMClientConfigurator.class); public String getStagingHost() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/stage/ghost/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getProdHost() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/prod/ghost/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNStagingAlgorithmsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/stage/svn.stage.algorithms-list/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getStageRepository() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/stage/svn.stage.software.repo/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getGhostAlgoDirectory() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/stage/svn.stage.algo.ghost.repo/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNStagingLinuxCompiledDepsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/stage/svn.stage.deps-linux-compiled/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNStagingPreInstalledDepsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/stage/svn.stage.deps-pre-installed/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNStagingRBDepsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/stage/svn.stage.deps-r-blackbox/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNStagingCRANDepsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/stage/svn.stage.deps-r/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNStagingJavaDepsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/stage/svn.stage.deps-java/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNStagingKWDepsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/stage/svn.stage.deps-knime-workflow/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNStagingOctaveDepsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/stage/svn.stage.deps-octave/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNStagingPythonDepsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/stage/svn.stage.deps-python/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNStagingWCDepsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/stage/svn.stage.deps-windows-compiled/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNProdAlgorithmsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/prod/svn.prod.algorithms-list/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getProdRepository() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/prod/svn.prod.software.repo/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getProdGhostAlgoDirectory() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/prod/svn.prod.algo.ghost.repo/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNProdLinuxCompiledDepsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/prod/svn.prod.deps-linux-compiled/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNProdPreInstalledDepsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/prod/svn.prod.deps-pre-installed/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNProdRBDepsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/prod/svn.prod.deps-r-blackbox/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNProdCRANDepsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/prod/svn.prod.deps-r/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNProdJavaDepsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/prod/svn.prod.deps-java/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNProdKWDepsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/prod/svn.prod.deps-knime-workflow/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNProdOctaveDepsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/prod/svn.prod.deps-octave/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNProdPythonDepsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/prod/svn.prod.deps-python/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNProdWCDepsList() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource/Profile/Body/prod/svn.prod.deps-windows-compiled/text()"); DiscoveryClient client = client(); List ds = client.submit(query); for (String a : ds) ***REMOVED*** ghost = a; ***REMOVED*** return ghost.trim(); ***REMOVED*** public String getSVNRepository() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource"); DiscoveryClient client = clientFor(GenericResource.class); List ds = client.submit(query); for (GenericResource a : ds) ***REMOVED*** ghost = a.profile().body().getElementsByTagName("svn.repository").item(0).getTextContent(); ***REMOVED*** return ghost.trim(); ***REMOVED*** ***REMOVED*** public String getSVNRepo() ***REMOVED*** ***REMOVED******REMOVED*** ***REMOVED*** ***REMOVED*** String ghost = ""; ***REMOVED*** SimpleQuery query = queryFor(GenericResource.class); ***REMOVED*** query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource"); ***REMOVED*** DiscoveryClient client = clientFor(GenericResource.class); ***REMOVED*** List ds = client.submit(query); ***REMOVED*** for (GenericResource a : ds) ***REMOVED*** ***REMOVED*** ghost = a.profile().body().getElementsByTagName("svn_repo").item(0).getTextContent(); ***REMOVED*** ***REMOVED*** ***REMOVED*** return ghost; ***REMOVED******REMOVED*** public String getSVNMainAlgoRepo() ***REMOVED*** ***REMOVED*** String ghost = ""; SimpleQuery query = queryFor(GenericResource.class); query.addCondition("$resource/Profile/SecondaryType/text() eq 'DMPMConfigurator'").setResult("$resource"); DiscoveryClient client = clientFor(GenericResource.class); List ds = client.submit(query); for (GenericResource a : ds) ***REMOVED*** ghost = a.profile().body().getElementsByTagName("svn.algo.main.repo").item(0).getTextContent(); ***REMOVED*** return ghost.trim(); ***REMOVED*** public static void main(String[] args) throws IOException, SVNException ***REMOVED*** DMPMClientConfigurator a = new DMPMClientConfigurator(); ScopeProvider.instance.set("/gcube/devNext/NextNext"); ***REMOVED***SecurityTokenProvider.instance.set("***REMOVED***"); System.out.println(a.getSVNProdCRANDepsList()); ***REMOVED***System.out.println(a.getRepo()); ***REMOVED***System.out.println(a.getAlgoRepo()); ***REMOVED***System.out.println(a.getSVNRepo()); ***REMOVED*** ***REMOVED***