You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ch...@apache.org on 2015/06/04 22:34:22 UTC
[34/51] [abbrv] [partial] airavata git commit: registry refactoring
http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/ResourceType.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/ResourceType.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/ResourceType.java
deleted file mode 100644
index ea66a90..0000000
--- a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/ResourceType.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
-*/
-package org.apache.airavata.experiment.catalog;
-
-public enum ResourceType {
- GATEWAY,
- PROJECT,
- USER,
- PROJECT_USER,
- CONFIGURATION,
- GATEWAY_WORKER,
- EXPERIMENT,
- EXPERIMENT_SUMMARY,
- NOTIFICATION_EMAIL,
- EXPERIMENT_INPUT,
- EXPERIMENT_OUTPUT,
- WORKFLOW_NODE_DETAIL,
- TASK_DETAIL,
- ERROR_DETAIL,
- APPLICATION_INPUT,
- APPLICATION_OUTPUT,
- NODE_INPUT,
- NODE_OUTPUT,
- JOB_DETAIL,
- DATA_TRANSFER_DETAIL,
- STATUS,
- CONFIG_DATA,
- COMPUTATIONAL_RESOURCE_SCHEDULING,
- ADVANCE_INPUT_DATA_HANDLING,
- ADVANCE_OUTPUT_DATA_HANDLING,
- QOS_PARAM
-}
http://git-wip-us.apache.org/repos/asf/airavata/blob/ec8c6202/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/ResourceUtils.java
----------------------------------------------------------------------
diff --git a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/ResourceUtils.java b/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/ResourceUtils.java
deleted file mode 100644
index a8d8e83..0000000
--- a/modules/registry/experiment-catalog/src/main/java/org/apache/airavata/experiment/catalog/ResourceUtils.java
+++ /dev/null
@@ -1,525 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
-*/
-package org.apache.airavata.experiment.catalog;
-
-import org.apache.airavata.experiment.catalog.model.*;
-import org.apache.airavata.experiment.catalog.resources.*;
-import org.apache.airavata.experiment.catalog.utils.QueryGenerator;
-import org.apache.airavata.registry.cpi.RegistryException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import javax.persistence.EntityManager;
-import javax.persistence.EntityManagerFactory;
-import javax.persistence.Persistence;
-import javax.persistence.Query;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class ResourceUtils {
- private final static Logger logger = LoggerFactory.getLogger(ResourceUtils.class);
- private static final String PERSISTENCE_UNIT_NAME = "airavata_data";
- protected static EntityManagerFactory factory;
-
- public static void reset(){
- factory=null;
- }
-
- public static EntityManager getEntityManager(){
- if (factory == null) {
- String connectionProperties = "DriverClassName=" + Utils.getJDBCDriver() + "," + "Url=" + Utils.getJDBCURL() + "?autoReconnect=true,," +
- "Username=" + Utils.getJDBCUser() + "," + "Password=" + Utils.getJDBCPassword() + ",validationQuery=" +
- Utils.getValidationQuery();
- System.out.println(connectionProperties);
- Map<String, String> properties = new HashMap<String, String>();
- properties.put("openjpa.ConnectionDriverName", "org.apache.commons.dbcp.BasicDataSource");
- properties.put("openjpa.ConnectionProperties", connectionProperties);
- properties.put("openjpa.DynamicEnhancementAgent", "true");
- properties.put("openjpa.RuntimeUnenhancedClasses", "unsupported");
- properties.put("openjpa.DataCache","" + Utils.isCachingEnabled() + "(CacheSize=" + Utils.getJPACacheSize() + ", SoftReferenceSize=0)");
- properties.put("openjpa.QueryCache","" + Utils.isCachingEnabled() + "(CacheSize=" + Utils.getJPACacheSize() + ", SoftReferenceSize=0)");
- properties.put("openjpa.RemoteCommitProvider","sjvm");
- properties.put("openjpa.Log","DefaultLevel=INFO, Runtime=INFO, Tool=INFO, SQL=INFO");
- properties.put("openjpa.jdbc.DBDictionary","SupportsMultipleNontransactionalResultSets=false");
-// properties.put("openjpa.ReadLockLevel", "none");
-// properties.put("openjpa.WriteLockLevel", "none");
-// properties.put("openjpa.LockTimeout", "30000");
-// properties.put("openjpa.LockManager", "none");
- properties.put("openjpa.jdbc.SynchronizeMappings", "buildSchema(ForeignKeys=true)");
- properties.put("openjpa.ConnectionFactoryProperties", "PrettyPrint=true, PrettyPrintLineLength=72, PrintParameters=true, MaxActive=10, MaxIdle=5, MinIdle=2, MaxWait=31536000, autoReconnect=true");
- properties.put("openjpa.jdbc.QuerySQLCache", "false");
- factory = Persistence.createEntityManagerFactory(PERSISTENCE_UNIT_NAME, properties);
- }
- return factory.createEntityManager();
- }
-
- /**
- * @param gatewayId
- * @return
- */
- public static Resource createGateway(String gatewayId) throws RegistryException {
- if (!isGatewayExist(gatewayId)) {
- GatewayResource gatewayResource = new GatewayResource();
- gatewayResource.setGatewayId(gatewayId);
- return gatewayResource;
- }else {
- return getGateway(gatewayId);
- }
- }
-
- public static UserResource createUser(String username, String password) throws RegistryException {
- if (!isUserExist(username)) {
- UserResource userResource = new UserResource();
- userResource.setUserName(username);
- userResource.setPassword(password);
- return userResource;
- }else {
- return (UserResource)getUser(username);
- }
-
- }
-
- public static Resource getGateway(String gatewayId) throws RegistryException{
- EntityManager em = null;
- try {
- if (isGatewayExist(gatewayId)) {
- em = getEntityManager();
- Gateway gateway = em.find(Gateway.class, gatewayId);
- GatewayResource gatewayResource = (GatewayResource)Utils.getResource(ResourceType.GATEWAY, gateway);
- em.close();
- return gatewayResource;
- }
- }catch (Exception e){
- logger.error(e.getMessage(), e);
- throw new RegistryException(e);
- }finally {
- if (em != null && em.isOpen()){
- if (em.getTransaction().isActive()){
- em.getTransaction().rollback();
- }
- em.close();
- }
- }
- return null;
- }
-
- public static void addUser (String userName, String password) throws RegistryException{
- UserResource resource = new UserResource();
- resource.setUserName(userName);
- resource.setPassword(password);
- resource.save();
- }
-
- public static boolean isUserExist (String username) throws RegistryException{
- EntityManager em = null;
- try {
- em = getEntityManager();
- em.getTransaction().begin();
- QueryGenerator generator = new QueryGenerator(AbstractResource.USERS);
- generator.setParameter(AbstractResource.UserConstants.USERNAME, username);
- Query q = generator.selectQuery(em);
- int size = q.getResultList().size();
- em.getTransaction().commit();
- em.close();
- return size>0;
- } catch (Exception e){
- logger.error(e.getMessage(), e);
- throw new RegistryException(e);
- }finally {
- if (em != null && em.isOpen()){
- if (em.getTransaction().isActive()){
- em.getTransaction().rollback();
- }
- em.close();
- }
- }
- }
-
-
- public static Resource getUser(String userName) throws RegistryException{
- EntityManager em = null;
- try {
- if (isUserExist(userName)) {
- em = getEntityManager();
- Users user = em.find(Users.class, userName);
- UserResource userResource = (UserResource)Utils.getResource(ResourceType.USER, user);
- em.close();
- return userResource;
- }
- }catch (Exception e){
- logger.error(e.getMessage(), e);
- throw new RegistryException(e);
- }finally {
- if (em != null && em.isOpen()){
- if (em.getTransaction().isActive()){
- em.getTransaction().rollback();
- }
- em.close();
- }
- }
- return null;
-
- }
-
- public static Resource getWorker(String gatewayId, String userName) throws RegistryException{
- EntityManager em = null;
- try {
- em = getEntityManager();
- Gateway_Worker gatewayWorker = em.find(Gateway_Worker.class, new Gateway_Worker_PK(gatewayId, userName));
- WorkerResource workerResource = (WorkerResource) Utils.getResource(ResourceType.GATEWAY_WORKER, gatewayWorker);
- em.close();
- return workerResource;
- }catch (Exception e){
- logger.error(e.getMessage(), e);
- throw new RegistryException(e);
- }finally {
- if (em != null && em.isOpen()){
- if (em.getTransaction().isActive()){
- em.getTransaction().rollback();
- }
- em.close();
- }
- }
-
-
- }
-
-
- /**
- * @param gatewayId
- * @return
- */
- public static boolean isGatewayExist(String gatewayId) throws RegistryException{
- EntityManager em = null;
- try {
- em = getEntityManager();
- em.getTransaction().begin();
- QueryGenerator generator = new QueryGenerator(AbstractResource.GATEWAY);
- generator.setParameter(AbstractResource.GatewayConstants.GATEWAY_ID, gatewayId);
- Query q = generator.selectQuery(em);
- int size = q.getResultList().size();
- em.getTransaction().commit();
- em.close();
- return size>0;
- }catch (Exception e){
- logger.error(e.getMessage(), e);
- throw new RegistryException(e);
- }finally {
- if (em != null && em.isOpen()){
- if (em.getTransaction().isActive()){
- em.getTransaction().rollback();
- }
- em.close();
- }
- }
-
- }
-
- public static List<Resource> getAllGateways() throws RegistryException{
- List<Resource> resourceList = new ArrayList<Resource>();
- EntityManager em = null;
- try {
- em = getEntityManager();
- em.getTransaction().begin();
- QueryGenerator generator = new QueryGenerator(AbstractResource.GATEWAY);
- Query q = generator.selectQuery(em);
- List results = q.getResultList();
- if (results.size() != 0) {
- for (Object result : results) {
- Gateway gateway = (Gateway) result;
- GatewayResource gatewayResource =
- (GatewayResource) Utils.getResource(ResourceType.GATEWAY, gateway);
- resourceList.add(gatewayResource);
- }
- }
- em.getTransaction().commit();
- em.close();
- }catch (Exception e){
- logger.error(e.getMessage(), e);
- throw new RegistryException(e);
- }finally {
- if (em != null && em.isOpen()){
- if (em.getTransaction().isActive()){
- em.getTransaction().rollback();
- }
- em.close();
- }
- }
- return resourceList;
- }
-
- /**
- * @param gatewayId
- * @return
- */
- public static boolean removeGateway(String gatewayId) {
- EntityManager em = null;
- try {
- em = getEntityManager();
- em.getTransaction().begin();
- QueryGenerator generator = new QueryGenerator(AbstractResource.GATEWAY);
- generator.setParameter(AbstractResource.GatewayConstants.GATEWAY_ID, gatewayId);
- Query q = generator.deleteQuery(em);
- q.executeUpdate();
- em.getTransaction().commit();
- em.close();
- return true;
- } catch (Exception e) {
- logger.error(e.getMessage(), e);
- return false;
- }finally {
- if (em != null && em.isOpen()){
- if (em.getTransaction().isActive()){
- em.getTransaction().rollback();
- }
- em.close();
- }
- }
- }
-
- /**
- * @param gatewayResource
- * @param userResource
- */
- public static WorkerResource addGatewayWorker(GatewayResource gatewayResource, UserResource userResource) throws RegistryException{
- EntityManager em = null;
- try {
- em = getEntityManager();
- em.getTransaction().begin();
- if (!isGatewayExist(gatewayResource.getGatewayName())){
- gatewayResource.save();
- }
- if (!isUserExist(userResource.getUserName())){
- userResource.save();
- }
- Gateway gateway = em.find(Gateway.class, gatewayResource.getGatewayId());
- Users user = em.find(Users.class, userResource.getUserName());
- Gateway_Worker gatewayWorker = new Gateway_Worker();
- gatewayWorker.setGateway(gateway);
- gatewayWorker.setUser(user);
- em.persist(gatewayWorker);
- em.getTransaction().commit();
- em.close();
- return (WorkerResource)Utils.getResource(ResourceType.GATEWAY_WORKER, gatewayWorker);
- } catch (Exception e){
- logger.error(e.getMessage(), e);
- throw new RegistryException(e);
- }finally {
- if (em != null && em.isOpen()){
- if (em.getTransaction().isActive()){
- em.getTransaction().rollback();
- }
- em.close();
- }
- }
- }
-
- /**
- * @param gatewayResource
- * @param userResource
- * @return
- */
- public static boolean removeGatewayWorker(GatewayResource gatewayResource, UserResource userResource) {
- EntityManager em = null;
- try {
- em = getEntityManager();
- em.getTransaction().begin();
- QueryGenerator generator = new QueryGenerator(AbstractResource.GATEWAY_WORKER);
- generator.setParameter(AbstractResource.GatewayWorkerConstants.GATEWAY_ID,
- gatewayResource.getGatewayName());
- generator.setParameter(AbstractResource.UserConstants.USERNAME, userResource.getUserName());
- Query q = generator.deleteQuery(em);
- q.executeUpdate();
- em.getTransaction().commit();
- em.close();
- return true;
- } catch (Exception e) {
- logger.error(e.getMessage(), e);
- return false;
- }finally {
- if (em != null && em.isOpen()){
- if (em.getTransaction().isActive()){
- em.getTransaction().rollback();
- }
- em.close();
- }
- }
-
- }
-
- /**
- * @param configKey
- * @return
- */
- public static List<ConfigurationResource> getConfigurations(String configKey){
- List<ConfigurationResource> list = new ArrayList<ConfigurationResource>();
- EntityManager em = null;
- try {
- em = getEntityManager();
- em.getTransaction().begin();
- QueryGenerator generator = new QueryGenerator(AbstractResource.CONFIGURATION);
- generator.setParameter(AbstractResource.ConfigurationConstants.CONFIG_KEY, configKey);
- Query q = generator.selectQuery(em);
- List<?> resultList = q.getResultList();
- if (resultList.size() != 0) {
- for (Object result : resultList) {
- ConfigurationResource configurationResource = createConfigurationResourceObject(result);
- list.add(configurationResource);
- }
- }
- em.getTransaction().commit();
- em.close();
- }catch (Exception e) {
- logger.error(e.getMessage(), e);
- }finally {
- if (em != null && em.isOpen()){
- if (em.getTransaction().isActive()){
- em.getTransaction().rollback();
- }
- em.close();
- }
- }
- return list;
- }
-
- /**
- * @param configKey
- * @return
- */
- public static ConfigurationResource getConfiguration(String configKey){
- List<ConfigurationResource> configurations = getConfigurations(configKey);
- return (configurations != null && configurations.size() > 0) ? configurations.get(0) : null;
- }
-
- /**
- * @param configKey
- * @return
- */
- public static boolean isConfigurationExist(String configKey){
- List<ConfigurationResource> configurations = getConfigurations(configKey);
- return (configurations != null && configurations.size() > 0);
- }
-
- /**
- * @param configKey
- * @return
- */
- public static ConfigurationResource createConfiguration(String configKey) {
- ConfigurationResource config = new ConfigurationResource();
- config.setConfigKey(configKey);
- return config;
- }
-
- /**
- * @param result
- * @return
- */
- private static ConfigurationResource createConfigurationResourceObject(
- Object result) {
- Configuration configuration = (Configuration) result;
- ConfigurationResource configurationResource = new ConfigurationResource(configuration.getConfig_key(), configuration.getConfig_val());
- configurationResource.setExpireDate(configuration.getExpire_date());
- return configurationResource;
- }
-
- /**
- * @param configkey
- * @param configValue
- */
- public static void removeConfiguration(String configkey, String configValue) throws RegistryException{
- QueryGenerator queryGenerator = new QueryGenerator(AbstractResource.CONFIGURATION);
- queryGenerator.setParameter(AbstractResource.ConfigurationConstants.CONFIG_KEY, configkey);
- queryGenerator.setParameter(AbstractResource.ConfigurationConstants.CONFIG_VAL, configValue);
- EntityManager em = null;
- try {
- if(isConfigurationExists(configkey, configValue)){
- em = getEntityManager();
- em.getTransaction().begin();
- Query q = queryGenerator.deleteQuery(em);
- q.executeUpdate();
- em.getTransaction().commit();
- em.close();
- }
- }catch (Exception e){
- logger.error(e.getMessage(), e);
- throw new RegistryException(e);
- }finally {
- if (em != null && em.isOpen()){
- if (em.getTransaction().isActive()){
- em.getTransaction().rollback();
- }
- em.close();
- }
- }
- }
-
- /**
- * @param configkey
- */
- public static void removeConfiguration(String configkey) throws RegistryException{
- QueryGenerator queryGenerator = new QueryGenerator(AbstractResource.CONFIGURATION);
- queryGenerator.setParameter(AbstractResource.ConfigurationConstants.CONFIG_KEY, configkey);
- EntityManager em = null;
- try {
- if(isConfigurationExist(configkey)){
- em = getEntityManager();
- em.getTransaction().begin();
- Query q = queryGenerator.deleteQuery(em);
- q.executeUpdate();
- em.getTransaction().commit();
- em.close();
- }
- }catch (Exception e){
- logger.error(e.getMessage(), e);
- throw new RegistryException(e);
- }finally {
- if (em != null && em.isOpen()){
- if (em.getTransaction().isActive()){
- em.getTransaction().rollback();
- }
- em.close();
- }
- }
- }
-
- public static boolean isConfigurationExists(String configKey, String configVal) throws RegistryException{
- EntityManager em = null;
- try{
- //Currently categoryID is hardcoded value
- em = ResourceUtils.getEntityManager();
- Configuration existing = em.find(Configuration.class, new Configuration_PK(configKey, configVal, AbstractResource.ConfigurationConstants.CATEGORY_ID_DEFAULT_VALUE));
- em.close();
- return existing!= null;
- } catch (Exception e){
- logger.error(e.getMessage(), e);
- throw new RegistryException(e);
- }finally {
- if (em != null && em.isOpen()){
- if (em.getTransaction().isActive()){
- em.getTransaction().rollback();
- }
- em.close();
- }
- }
- }
-}