package com.photon.phresco.service.tools; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import com.photon.phresco.exception.PhrescoException; import com.photon.phresco.model.Database; import com.photon.phresco.service.client.api.ServiceClientConstant; import com.photon.phresco.service.client.api.ServiceContext; import com.photon.phresco.service.client.api.ServiceManager; import com.photon.phresco.service.client.factory.ServiceClientFactory; import com.photon.phresco.service.client.impl.RestClient; import com.photon.phresco.util.ServiceConstants; import com.photon.phresco.util.TechnologyTypes; public class DatabaseInfoGenerator implements ServiceConstants { public ServiceContext context = null; public ServiceManager serviceManager = null; public DatabaseInfoGenerator() throws PhrescoException { context = new ServiceContext(); context.put(ServiceClientConstant.SERVICE_URL, "http://localhost:3030/service/rest/api"); context.put(ServiceClientConstant.SERVICE_USERNAME, "demouser"); context.put(ServiceClientConstant.SERVICE_PASSWORD, "phresco"); serviceManager = ServiceClientFactory.getServiceManager(context); } private List<Database> createDatabases() { List<Database> databases = new ArrayList<Database>(); List<String> versions = new ArrayList<String>(2); versions.add("5.5.1"); versions.add("5.5"); versions.add("5.1"); versions.add("5.0"); versions.add("4.1"); versions.add("4.0"); databases.add(new Database("MySQL", versions, "My SQL DB",createTech())); versions = new ArrayList<String>(2); versions.add("11gR2"); versions.add("11gR1"); versions.add("10gR2"); versions.add("10gR1"); versions.add("9iR2"); versions.add("9iR1"); versions.add("8iR3"); versions.add("8iR2"); versions.add("8iR1"); versions.add("8i"); databases.add(new Database("Oracle", versions, "Oracle DB",createTech())); versions = new ArrayList<String>(2); versions.add("2.0.4"); versions.add("1.8.5 "); databases.add(new Database("MongoDB", versions, "Mongo DB", createTech())); versions = new ArrayList<String>(2); versions.add("10"); versions.add("9.7"); versions.add("9.5"); versions.add("9"); databases.add(new Database("DB2", versions, "DB2 DB", createTech())); versions = new ArrayList<String>(2); versions.add("2012"); versions.add("2008 R2"); versions.add("2008"); versions.add("2005"); databases.add(new Database("MSSQL", versions, "MSSQL DB", createTech())); return databases; } private List<String> createTech() { String[] techs = new String[]{TechnologyTypes.PHP, TechnologyTypes.PHP_DRUPAL6, TechnologyTypes.PHP_DRUPAL7, TechnologyTypes.JAVA_WEBSERVICE, TechnologyTypes.HTML5_MOBILE_WIDGET, TechnologyTypes.HTML5_MULTICHANNEL_JQUERY_WIDGET, TechnologyTypes.HTML5_WIDGET, TechnologyTypes.WORDPRESS, TechnologyTypes.NODE_JS_WEBSERVICE}; return Arrays.asList(techs); } private void generate() throws PhrescoException { List<Database> databases = createDatabases(); RestClient<Database> restClient = serviceManager.getRestClient(REST_API_COMPONENT + REST_API_DATABASES); restClient.create(databases); } public static void main(String[] args) throws PhrescoException { DatabaseInfoGenerator generator = new DatabaseInfoGenerator(); generator.generate(); } }