You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sa...@apache.org on 2014/04/14 20:30:34 UTC

[32/90] [abbrv] [partial] AIRAVATA-1124

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/resources/PublishWorkflowRegistryResource.java
----------------------------------------------------------------------
diff --git a/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/resources/PublishWorkflowRegistryResource.java b/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/resources/PublishWorkflowRegistryResource.java
deleted file mode 100644
index 5eecb01..0000000
--- a/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/resources/PublishWorkflowRegistryResource.java
+++ /dev/null
@@ -1,289 +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.services.registry.rest.resources;
-
-import org.apache.airavata.registry.api.AiravataRegistry2;
-import org.apache.airavata.registry.api.exception.RegistryException;
-import org.apache.airavata.registry.api.exception.gateway.PublishedWorkflowAlreadyExistsException;
-import org.apache.airavata.registry.api.exception.gateway.PublishedWorkflowDoesNotExistsException;
-import org.apache.airavata.registry.api.exception.worker.UserWorkflowDoesNotExistsException;
-import org.apache.airavata.rest.mappings.resourcemappings.PublishWorkflowNamesList;
-import org.apache.airavata.rest.mappings.resourcemappings.Workflow;
-import org.apache.airavata.rest.mappings.resourcemappings.WorkflowList;
-import org.apache.airavata.rest.mappings.utils.ResourcePathConstants;
-import org.apache.airavata.rest.mappings.utils.RegPoolUtils;
-import org.apache.airavata.services.registry.rest.utils.WebAppUtil;
-
-import javax.servlet.ServletContext;
-import javax.ws.rs.*;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-/**
- * This class is the REST interface for all the operations related to published workflows that has
- * been exposed by Airavata Registry API
- */
-@Path(ResourcePathConstants.PublishedWFConstants.REGISTRY_API_PUBLISHWFREGISTRY)
-public class PublishWorkflowRegistryResource {
-
-    @Context
-    ServletContext context;
-
-    /**---------------------------------Published Workflow Registry----------------------------------**/
-
-    /**
-     * This method will check whether a given published workflow name already exists
-     *
-     * @param workflowname publish workflow name
-     * @return HTTP response
-     */
-    @GET
-    @Path(ResourcePathConstants.PublishedWFConstants.PUBLISHWF_EXIST)
-    @Produces(MediaType.TEXT_PLAIN)
-    public Response isPublishedWorkflowExists(@QueryParam("workflowName") String workflowname) {
-        AiravataRegistry2 airavataRegistry = RegPoolUtils.acquireRegistry(context);
-        try {
-            boolean workflowExists = airavataRegistry.isPublishedWorkflowExists(workflowname);
-            if (workflowExists) {
-                Response.ResponseBuilder builder = Response.status(Response.Status.OK);
-                builder.entity("True");
-                return builder.build();
-            } else {
-                Response.ResponseBuilder builder = Response.status(Response.Status.OK);
-                builder.entity("False");
-                return builder.build();
-            }
-        } catch (Throwable e) {
-            return WebAppUtil.reportInternalServerError(ResourcePathConstants.PublishedWFConstants.PUBLISHWF_EXIST, e);
-        } finally {
-            if (airavataRegistry != null) {
-                RegPoolUtils.releaseRegistry(context, airavataRegistry);
-            }
-        }
-    }
-
-    /**
-     * This method will make a user workflow as a published workflow with the given name
-     *
-     * @param workflowName        user workflow name
-     * @param publishWorkflowName name need to save the published workflow as
-     * @return HTTP response
-     */
-    @POST
-    @Path(ResourcePathConstants.PublishedWFConstants.PUBLISH_WORKFLOW)
-    @Produces(MediaType.TEXT_PLAIN)
-    public Response publishWorkflow(@FormParam("workflowName") String workflowName,
-                                    @FormParam("publishWorkflowName") String publishWorkflowName) {
-        AiravataRegistry2 airavataRegistry = RegPoolUtils.acquireRegistry(context);
-        try {
-            airavataRegistry.publishWorkflow(workflowName, publishWorkflowName);
-            Response.ResponseBuilder builder = Response.status(Response.Status.OK);
-            builder.entity("Workflow published successfully...");
-            return builder.build();
-        } catch (UserWorkflowDoesNotExistsException e) {
-            Response.ResponseBuilder builder = Response.status(Response.Status.BAD_REQUEST);
-            builder.entity(e.getMessage());
-            return builder.build();
-        } catch (PublishedWorkflowAlreadyExistsException e) {
-            Response.ResponseBuilder builder = Response.status(Response.Status.BAD_REQUEST);
-            builder.entity(e.getMessage());
-            return builder.build();
-        } catch (Throwable e) {
-            return WebAppUtil.reportInternalServerError(ResourcePathConstants.PublishedWFConstants.PUBLISH_WORKFLOW, e);
-        } finally {
-            if (airavataRegistry != null) {
-                RegPoolUtils.releaseRegistry(context, airavataRegistry);
-            }
-        }
-    }
-
-    /**
-     * This method will publish a workflow with the default workflow name
-     *
-     * @param workflowName workflow name
-     * @return HTTP response
-     */
-    @POST
-    @Path(ResourcePathConstants.PublishedWFConstants.PUBLISH_DEFAULT_WORKFLOW)
-    @Produces(MediaType.TEXT_PLAIN)
-    public Response publishWorkflow(@FormParam("workflowName") String workflowName) {
-        AiravataRegistry2 airavataRegistry = RegPoolUtils.acquireRegistry(context);
-        try {
-            airavataRegistry.publishWorkflow(workflowName);
-            Response.ResponseBuilder builder = Response.status(Response.Status.OK);
-            builder.entity("Workflow published successfully...");
-            return builder.build();
-        } catch (UserWorkflowDoesNotExistsException e) {
-            Response.ResponseBuilder builder = Response.status(Response.Status.BAD_REQUEST);
-            builder.entity(e.getMessage());
-            return builder.build();
-        } catch (PublishedWorkflowAlreadyExistsException e) {
-            Response.ResponseBuilder builder = Response.status(Response.Status.BAD_REQUEST);
-            builder.entity(e.getMessage());
-            return builder.build();
-        } catch (Throwable e) {
-            return WebAppUtil.reportInternalServerError(ResourcePathConstants.PublishedWFConstants.PUBLISH_DEFAULT_WORKFLOW, e);
-        } finally {
-            if (airavataRegistry != null) {
-                RegPoolUtils.releaseRegistry(context, airavataRegistry);
-            }
-        }
-    }
-
-    /**
-     * This method will return the worklflow graph
-     *
-     * @param workflowName workflow name
-     * @return HTTP response
-     */
-    @GET
-    @Path(ResourcePathConstants.PublishedWFConstants.GET_PUBLISHWORKFLOWGRAPH)
-    @Produces(MediaType.APPLICATION_FORM_URLENCODED)
-    public Response getPublishedWorkflowGraphXML(@QueryParam("workflowName") String workflowName) {
-        AiravataRegistry2 airavataRegistry = RegPoolUtils.acquireRegistry(context);
-        try {
-            String publishedWorkflowGraphXML =
-                    airavataRegistry.getPublishedWorkflowGraphXML(workflowName);
-            if (publishedWorkflowGraphXML != null) {
-                Response.ResponseBuilder builder = Response.status(Response.Status.OK);
-                builder.entity(publishedWorkflowGraphXML);
-                return builder.build();
-            } else {
-                Response.ResponseBuilder builder = Response.status(Response.Status.NO_CONTENT);
-                return builder.build();
-            }
-        } catch (PublishedWorkflowDoesNotExistsException e) {
-            Response.ResponseBuilder builder = Response.status(Response.Status.BAD_REQUEST);
-            builder.entity(e.getMessage());
-            return builder.build();
-        } catch (Throwable e) {
-            return WebAppUtil.reportInternalServerError(ResourcePathConstants.PublishedWFConstants.GET_PUBLISHWORKFLOWGRAPH, e);
-        } finally {
-            if (airavataRegistry != null) {
-                RegPoolUtils.releaseRegistry(context, airavataRegistry);
-            }
-        }
-    }
-
-    /**
-     * This method will return all the published workflow names
-     *
-     * @return HTTP response
-     */
-    @GET
-    @Path(ResourcePathConstants.PublishedWFConstants.GET_PUBLISHWORKFLOWNAMES)
-    @Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML})
-    public Response getPublishedWorkflowNames() {
-        AiravataRegistry2 airavataRegistry = RegPoolUtils.acquireRegistry(context);
-        try {
-            List<String> publishedWorkflowNames = airavataRegistry.getPublishedWorkflowNames();
-            PublishWorkflowNamesList publishWorkflowNamesList = new PublishWorkflowNamesList();
-            publishWorkflowNamesList.setPublishWorkflowNames(publishedWorkflowNames);
-            if (publishedWorkflowNames.size() != 0) {
-                Response.ResponseBuilder builder = Response.status(Response.Status.OK);
-                builder.entity(publishWorkflowNamesList);
-                return builder.build();
-            } else {
-                Response.ResponseBuilder builder = Response.status(Response.Status.NO_CONTENT);
-                return builder.build();
-            }
-        } catch (Throwable e) {
-            return WebAppUtil.reportInternalServerError(ResourcePathConstants.PublishedWFConstants.GET_PUBLISHWORKFLOWNAMES, e);
-        } finally {
-            if (airavataRegistry != null) {
-                RegPoolUtils.releaseRegistry(context, airavataRegistry);
-            }
-        }
-    }
-
-    /**
-     * This method will return all the published workflows
-     *
-     * @return HTTP response
-     */
-    @GET
-    @Path(ResourcePathConstants.PublishedWFConstants.GET_PUBLISHWORKFLOWS)
-    @Produces({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})
-    public Response getPublishedWorkflows() {
-        AiravataRegistry2 airavataRegistry = RegPoolUtils.acquireRegistry(context);
-        try {
-            Map<String, String> publishedWorkflows = airavataRegistry.getPublishedWorkflows();
-            WorkflowList workflowList = new WorkflowList();
-            List<Workflow> workflowsModels = new ArrayList<Workflow>();
-            for (String workflowName : publishedWorkflows.keySet()) {
-                Workflow workflow = new Workflow();
-                workflow.setWorkflowName(workflowName);
-                workflow.setWorkflowGraph(publishedWorkflows.get(workflowName));
-                workflowsModels.add(workflow);
-            }
-            workflowList.setWorkflowList(workflowsModels);
-            if (publishedWorkflows.size() != 0) {
-                Response.ResponseBuilder builder = Response.status(Response.Status.OK);
-                builder.entity(workflowList);
-                return builder.build();
-            } else {
-                Response.ResponseBuilder builder = Response.status(Response.Status.NO_CONTENT);
-                return builder.build();
-            }
-
-        } catch (Throwable e) {
-            return WebAppUtil.reportInternalServerError(ResourcePathConstants.PublishedWFConstants.GET_PUBLISHWORKFLOWS, e);
-        } finally {
-            if (airavataRegistry != null) {
-                RegPoolUtils.releaseRegistry(context, airavataRegistry);
-            }
-        }
-    }
-
-    /**
-     * This method will delete a published workflow with the given published workflow name
-     *
-     * @param workflowName published workflow name
-     * @return HTTP response
-     */
-    @DELETE
-    @Path(ResourcePathConstants.PublishedWFConstants.REMOVE_PUBLISHWORKFLOW)
-    @Produces(MediaType.TEXT_PLAIN)
-    public Response removePublishedWorkflow(@QueryParam("workflowName") String workflowName) {
-        AiravataRegistry2 airavataRegistry = RegPoolUtils.acquireRegistry(context);
-        try {
-            airavataRegistry.removePublishedWorkflow(workflowName);
-            Response.ResponseBuilder builder = Response.status(Response.Status.OK);
-            builder.entity("Publish workflow removed successfully...");
-            return builder.build();
-        } catch (PublishedWorkflowDoesNotExistsException e) {
-            Response.ResponseBuilder builder = Response.status(Response.Status.BAD_REQUEST);
-            builder.entity(e.getMessage());
-            return builder.build();
-        } catch (Throwable e) {
-            return WebAppUtil.reportInternalServerError(ResourcePathConstants.PublishedWFConstants.REMOVE_PUBLISHWORKFLOW, e);
-        } finally {
-            if (airavataRegistry != null) {
-                RegPoolUtils.releaseRegistry(context, airavataRegistry);
-            }
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/resources/UserRegistryResource.java
----------------------------------------------------------------------
diff --git a/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/resources/UserRegistryResource.java b/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/resources/UserRegistryResource.java
deleted file mode 100644
index 36b7a4a..0000000
--- a/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/resources/UserRegistryResource.java
+++ /dev/null
@@ -1,81 +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.services.registry.rest.resources;
-
-import java.util.List;
-
-import javax.servlet.ServletContext;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response;
-
-import org.apache.airavata.registry.api.AiravataRegistry2;
-import org.apache.airavata.registry.api.AiravataUser;
-import org.apache.airavata.rest.mappings.resourcemappings.UserList;
-import org.apache.airavata.rest.mappings.utils.RegPoolUtils;
-import org.apache.airavata.rest.mappings.utils.ResourcePathConstants;
-import org.apache.airavata.services.registry.rest.utils.WebAppUtil;
-
-/**
- * This class provides a REST interface to all the user management related operations
- */
-@Path(ResourcePathConstants.UserResourceConstants.REGISTRY_API_USERREGISTRY)
-public class UserRegistryResource {
-
-    @Context
-    ServletContext context;
-
-    /**
-     * This method gets all users of Airavata present in the registry
-     *
-     * @return HTTP response - List of AiravataUsers
-     */
-    @GET
-    @Path(ResourcePathConstants.UserResourceConstants.GET_ALL_USERS)
-    @Produces({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})
-    public Response getAllUsers() {
-        AiravataRegistry2 airavataRegistry = RegPoolUtils.acquireRegistry(context);
-        try {
-        	List<AiravataUser> users = airavataRegistry.getUsers();
-        	UserList userList = new UserList();
-        	userList.setUserList(users);
-            if (users.size() != 0) {
-                Response.ResponseBuilder builder = Response.status(Response.Status.OK);
-                builder.entity(userList);
-                return builder.build();
-            } else {
-                Response.ResponseBuilder builder = Response.status(Response.Status.NO_CONTENT);
-                return builder.build();
-            }
-        } catch (Throwable e) {
-            return WebAppUtil.reportInternalServerError(ResourcePathConstants.UserResourceConstants.GET_ALL_USERS, e);
-        } finally {
-            if (airavataRegistry != null) {
-                RegPoolUtils.releaseRegistry(context, airavataRegistry);
-            }
-        }
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/resources/UserWorkflowRegistryResource.java
----------------------------------------------------------------------
diff --git a/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/resources/UserWorkflowRegistryResource.java b/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/resources/UserWorkflowRegistryResource.java
deleted file mode 100644
index c2fc066..0000000
--- a/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/resources/UserWorkflowRegistryResource.java
+++ /dev/null
@@ -1,291 +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.services.registry.rest.resources;
-
-import de.odysseus.staxon.json.JsonXMLConfig;
-import de.odysseus.staxon.json.JsonXMLConfigBuilder;
-import de.odysseus.staxon.json.JsonXMLOutputFactory;
-import org.apache.airavata.registry.api.AiravataRegistry2;
-import org.apache.airavata.registry.api.exception.worker.UserWorkflowAlreadyExistsException;
-import org.apache.airavata.registry.api.exception.worker.UserWorkflowDoesNotExistsException;
-import org.apache.airavata.rest.mappings.resourcemappings.Workflow;
-import org.apache.airavata.rest.mappings.resourcemappings.WorkflowList;
-import org.apache.airavata.rest.mappings.utils.ResourcePathConstants;
-import org.apache.airavata.rest.mappings.utils.RegPoolUtils;
-import org.apache.airavata.services.registry.rest.utils.WebAppUtil;
-
-import javax.servlet.ServletContext;
-import javax.ws.rs.*;
-import javax.ws.rs.core.Context;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response;
-import javax.xml.stream.XMLEventReader;
-import javax.xml.stream.XMLEventWriter;
-import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLStreamException;
-import java.io.*;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-/**
- * This class is a REST interface to all the operations related to user workflows that has been
- * exposed by Airavata Registry API
- */
-@Path(ResourcePathConstants.UserWFConstants.REGISTRY_API_USERWFREGISTRY)
-public class UserWorkflowRegistryResource {
-
-    @Context
-    ServletContext context;
-
-    /**---------------------------------User Workflow Registry----------------------------------**/
-
-    /**
-     * This method will check whether a given user workflow name already exists
-     *
-     * @param workflowName workflow name
-     * @return HTTP response
-     */
-    @GET
-    @Path(ResourcePathConstants.UserWFConstants.WORKFLOW_EXIST)
-    @Consumes({MediaType.APPLICATION_FORM_URLENCODED, MediaType.APPLICATION_JSON})
-    @Produces(MediaType.TEXT_PLAIN)
-    public Response isWorkflowExists(@QueryParam("workflowName") String workflowName) {
-        AiravataRegistry2 airavataRegistry = RegPoolUtils.acquireRegistry(context);
-        try {
-            boolean workflowExists = airavataRegistry.isWorkflowExists(workflowName);
-            if (workflowExists) {
-                Response.ResponseBuilder builder = Response.status(Response.Status.OK);
-                builder.entity("True");
-                return builder.build();
-            } else {
-                Response.ResponseBuilder builder = Response.status(Response.Status.OK);
-                builder.entity("False");
-                return builder.build();
-            }
-        } catch (Throwable e) {
-            return WebAppUtil.reportInternalServerError(ResourcePathConstants.UserWFConstants.WORKFLOW_EXIST, e);
-        } finally {
-            if (airavataRegistry != null) {
-                RegPoolUtils.releaseRegistry(context, airavataRegistry);
-            }
-        }
-    }
-
-    /**
-     * This method will add a new workflow
-     *
-     * @param workflowName     workflow name
-     * @param workflowGraphXml workflow content
-     * @return HTTP response
-     */
-    @POST
-    @Path(ResourcePathConstants.UserWFConstants.ADD_WORKFLOW)
-    @Consumes({MediaType.APPLICATION_FORM_URLENCODED,MediaType.APPLICATION_JSON})
-    @Produces(MediaType.TEXT_PLAIN)
-    public Response addWorkflow(@FormParam("workflowName") String workflowName,
-                                @FormParam("workflowGraphXml") String workflowGraphXml) {
-        AiravataRegistry2 airavataRegistry = RegPoolUtils.acquireRegistry(context);
-        try {
-            airavataRegistry.addWorkflow(workflowName, workflowGraphXml);
-            Response.ResponseBuilder builder = Response.status(Response.Status.OK);
-            builder.entity("Workflow added successfully...");
-            return builder.build();
-        } catch (UserWorkflowAlreadyExistsException e) {
-            Response.ResponseBuilder builder = Response.status(Response.Status.BAD_REQUEST);
-            builder.entity(e.getMessage());
-            return builder.build();
-        } catch (Throwable e) {
-            return WebAppUtil.reportInternalServerError(ResourcePathConstants.UserWFConstants.ADD_WORKFLOW, e);
-        } finally {
-            if (airavataRegistry != null) {
-                RegPoolUtils.releaseRegistry(context, airavataRegistry);
-            }
-        }
-    }
-
-    /**
-     * This method will update the workflow
-     *
-     * @param workflowName     workflow name
-     * @param workflowGraphXml workflow content
-     * @return HTTP response
-     */
-    @POST
-    @Path(ResourcePathConstants.UserWFConstants.UPDATE_WORKFLOW)
-    @Consumes({MediaType.APPLICATION_FORM_URLENCODED, MediaType.APPLICATION_JSON})
-    @Produces(MediaType.TEXT_PLAIN)
-    public Response updateWorkflow(@FormParam("workflowName") String workflowName,
-                                   @FormParam("workflowGraphXml") String workflowGraphXml) {
-        AiravataRegistry2 airavataRegistry = RegPoolUtils.acquireRegistry(context);
-        try {
-            airavataRegistry.updateWorkflow(workflowName, workflowGraphXml);
-            Response.ResponseBuilder builder = Response.status(Response.Status.OK);
-            builder.entity("Workflow updated successfully...");
-            return builder.build();
-        } catch (UserWorkflowAlreadyExistsException e) {
-            Response.ResponseBuilder builder = Response.status(Response.Status.BAD_REQUEST);
-            builder.entity(e.getMessage());
-            return builder.build();
-        } catch (Throwable e) {
-            return WebAppUtil.reportInternalServerError(ResourcePathConstants.UserWFConstants.UPDATE_WORKFLOW, e);
-        } finally {
-            if (airavataRegistry != null) {
-                RegPoolUtils.releaseRegistry(context, airavataRegistry);
-            }
-        }
-    }
-
-    /**
-     * This method will return the content of the given workflow
-     *
-     * @param workflowName workflow name
-     * @return HTTP response
-     */
-    @GET
-    @Path(ResourcePathConstants.UserWFConstants.GET_WORKFLOWGRAPH)
-    @Produces({MediaType.APPLICATION_FORM_URLENCODED, MediaType.APPLICATION_JSON})
-    public Response getWorkflowGraphXML(@DefaultValue("false") @QueryParam("isJson") boolean isJson,
-                                        @QueryParam("workflowName") String workflowName) {
-        AiravataRegistry2 airavataRegistry = RegPoolUtils.acquireRegistry(context);
-        try {
-            String workflowGraphXML = airavataRegistry.getWorkflowGraphXML(workflowName);
-            if (workflowGraphXML != null) {
-                if (isJson && workflowGraphXML.startsWith("<")) {
-                    workflowGraphXML = getJSONWorkflowGraph(workflowGraphXML);
-                }
-                Response.ResponseBuilder builder = Response.status(Response.Status.OK);
-                builder.entity(workflowGraphXML);
-                return builder.build();
-            } else {
-                Response.ResponseBuilder builder = Response.status(Response.Status.NO_CONTENT);
-                return builder.build();
-            }
-        } catch (UserWorkflowDoesNotExistsException e) {
-            Response.ResponseBuilder builder = Response.status(Response.Status.BAD_REQUEST);
-            builder.entity(e.getMessage());
-            return builder.build();
-        } catch (Throwable e) {
-            return WebAppUtil.reportInternalServerError(ResourcePathConstants.UserWFConstants.GET_WORKFLOWGRAPH, e);
-        } finally {
-            if (airavataRegistry != null) {
-                RegPoolUtils.releaseRegistry(context, airavataRegistry);
-            }
-        }
-    }
-
-    /**
-     * This method will return all the user workflows
-     *
-     * @return HTTP response
-     */
-    @GET
-    @Path(ResourcePathConstants.UserWFConstants.GET_WORKFLOWS)
-    @Produces({MediaType.APPLICATION_XML, MediaType.APPLICATION_JSON})
-    public Response getWorkflows(@DefaultValue("false") @QueryParam("isJson") boolean isJson) {
-        AiravataRegistry2 airavataRegistry = RegPoolUtils.acquireRegistry(context);
-        try {
-            Map<String, String> workflows = airavataRegistry.getWorkflows();
-            WorkflowList workflowList = new WorkflowList();
-            List<Workflow> workflowsModels = new ArrayList<Workflow>();
-            for (String workflowName : workflows.keySet()) {
-                Workflow workflow = new Workflow();
-                workflow.setWorkflowName(workflowName);
-                String workflowGraph = workflows.get(workflowName);
-                if (isJson && workflowGraph.startsWith("<")) {
-                    workflowGraph = getJSONWorkflowGraph(workflowGraph);
-                }
-                workflow.setWorkflowGraph(workflowGraph);
-                workflowsModels.add(workflow);
-            }
-            workflowList.setWorkflowList(workflowsModels);
-            Response.ResponseBuilder builder = Response.status(Response.Status.OK);
-            builder.entity(workflowList);
-            return builder.build();
-        } catch (Throwable e) {
-            return WebAppUtil.reportInternalServerError(ResourcePathConstants.UserWFConstants.GET_WORKFLOWS, e);
-        } finally {
-            if (airavataRegistry != null) {
-                RegPoolUtils.releaseRegistry(context, airavataRegistry);
-            }
-        }
-    }
-
-    /**
-     * This method will delete a user workflow with the given user workflow name
-     *
-     * @param workflowName user workflow name
-     * @return HTTP response
-     */
-    @DELETE
-    @Path(ResourcePathConstants.UserWFConstants.REMOVE_WORKFLOW)
-    @Produces(MediaType.TEXT_PLAIN)
-    public Response removeWorkflow(@QueryParam("workflowName") String workflowName) {
-        AiravataRegistry2 airavataRegistry = RegPoolUtils.acquireRegistry(context);
-        try {
-            airavataRegistry.removeWorkflow(workflowName);
-            Response.ResponseBuilder builder = Response.status(Response.Status.OK);
-            builder.entity("Workflow removed successfully...");
-            return builder.build();
-        } catch (UserWorkflowDoesNotExistsException e) {
-            Response.ResponseBuilder builder = Response.status(Response.Status.BAD_REQUEST);
-            builder.entity(e.getMessage());
-            return builder.build();
-        } catch (Throwable e) {
-            return WebAppUtil.reportInternalServerError(ResourcePathConstants.UserWFConstants.REMOVE_WORKFLOW, e);
-        } finally {
-            if (airavataRegistry != null) {
-                RegPoolUtils.releaseRegistry(context, airavataRegistry);
-            }
-        }
-    }
-
-
-    private String getJSONWorkflowGraph(String workflowGraphXML) throws XMLStreamException, IOException {
-        String workflowGraphJSON;
-        ByteArrayOutputStream output = new ByteArrayOutputStream();
-        ByteArrayInputStream input = new ByteArrayInputStream(workflowGraphXML.getBytes());
-        try {
-            JsonXMLConfig config = new JsonXMLConfigBuilder()
-                    .autoArray(true)
-                    .autoPrimitive(true)
-                    .prettyPrint(true)
-                    .build();
-            XMLEventReader reader = XMLInputFactory.newInstance().
-                    createXMLEventReader(input);
-
-            XMLEventWriter writer = new JsonXMLOutputFactory(config).createXMLEventWriter(output);
-            writer.add(reader);
-            reader.close();
-            workflowGraphJSON = output.toString("UTF-8");
-            writer.close();
-        } finally {
-            /*
-			 * As per StAX specification, XMLEventReader/Writer.close() doesn't close
-			 * the underlying stream.
-			 */
-            output.close();
-            input.close();
-        }
-        return workflowGraphJSON;
-    }
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/HttpAuthenticatorFilter.java
----------------------------------------------------------------------
diff --git a/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/HttpAuthenticatorFilter.java b/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/HttpAuthenticatorFilter.java
deleted file mode 100644
index 8865a0e..0000000
--- a/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/HttpAuthenticatorFilter.java
+++ /dev/null
@@ -1,191 +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.services.registry.rest.security;
-
-import org.apache.airavata.security.AuthenticationException;
-import org.apache.airavata.security.Authenticator;
-import org.apache.airavata.security.configurations.AuthenticatorConfigurationReader;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.xml.sax.SAXException;
-
-import javax.servlet.*;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.xml.parsers.ParserConfigurationException;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.Calendar;
-import java.util.List;
-
-/**
- * A servlet filter class which intercepts the request and do authentication.
- */
-public class HttpAuthenticatorFilter implements Filter {
-
-    private List<Authenticator> authenticatorList;
-
-    private static Logger log = LoggerFactory.getLogger(HttpAuthenticatorFilter.class);
-
-    private ServletRequestHelper servletRequestHelper = new ServletRequestHelper();
-
-    @Override
-    public void init(FilterConfig filterConfig) throws ServletException {
-        String authenticatorConfiguration = filterConfig.getInitParameter("authenticatorConfigurations");
-
-        //TODO make this able to read from a file as well
-
-
-        InputStream configurationFileStream = HttpAuthenticatorFilter.class.getClassLoader().
-                getResourceAsStream(authenticatorConfiguration);
-
-        if (configurationFileStream == null) {
-            String msg = "Invalid authenticator configuration. Cannot read file - ".concat(authenticatorConfiguration);
-            log.error(msg);
-            throw new ServletException(msg);
-        }
-
-        AuthenticatorConfigurationReader authenticatorConfigurationReader
-                = new AuthenticatorConfigurationReader();
-        try {
-            authenticatorConfigurationReader.init(configurationFileStream);
-        } catch (IOException e) {
-            String msg = "Error reading authenticator configurations.";
-
-            log.error(msg, e);
-            throw new ServletException(msg, e);
-        } catch (ParserConfigurationException e) {
-            String msg = "Error parsing authenticator configurations.";
-
-            log.error(msg, e);
-            throw new ServletException(msg, e);
-        } catch (SAXException e) {
-            String msg = "Error parsing authenticator configurations.";
-
-            log.error(msg, e);
-            throw new ServletException(msg, e);
-        } finally {
-            try {
-                configurationFileStream.close();
-            } catch (IOException e) {
-                log.error("Error closing authenticator file stream.", e);
-            }
-        }
-
-        this.authenticatorList = authenticatorConfigurationReader.getAuthenticatorList();
-
-        if (this.authenticatorList.isEmpty()) {
-            String msg = "No authenticators registered in the system. System cannot function without authenticators";
-            log.error(msg);
-            throw new ServletException(msg);
-        }
-
-    }
-
-    @Override
-    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
-
-        // Firs check whether authenticators are disabled
-        if (! AuthenticatorConfigurationReader.isAuthenticationEnabled()) {
-
-            // Extract user id and gateway id
-            try {
-                servletRequestHelper.addIdentityInformationToSession((HttpServletRequest) servletRequest);
-            } catch (AuthenticationException e) {
-                log.warn("Error adding identity information to session.", e);
-                populateUnauthorisedData(servletResponse, "Error adding identity information to session.");
-
-            }
-
-            filterChain.doFilter(servletRequest, servletResponse);
-            return;
-        }
-
-        HttpServletRequest httpServletRequest = (HttpServletRequest) servletRequest;
-
-        Authenticator authenticator = getAuthenticator(httpServletRequest);
-
-        if (authenticator == null) {
-            //sendUnauthorisedError(servletResponse, "Invalid request. Request does not contain sufficient credentials to authenticate");
-            populateUnauthorisedData(servletResponse, "Invalid request. Request does not contain sufficient credentials to authenticate");
-        } else {
-            if (authenticator.isAuthenticated(httpServletRequest)) {
-                // Allow request to flow
-                filterChain.doFilter(servletRequest, servletResponse);
-            } else {
-                try {
-                    if (!authenticator.authenticate(httpServletRequest)) {
-                        //sendUnauthorisedError(servletResponse, "Unauthorised : Provided credentials are not valid.");
-                        populateUnauthorisedData(servletResponse, "Invalid request. Request does not contain sufficient credentials to authenticate");
-                    } else {
-                        // Allow request to flow
-                        filterChain.doFilter(servletRequest, servletResponse);
-                    }
-                } catch (AuthenticationException e) {
-                    String msg = "An error occurred while authenticating request.";
-                    log.error(msg, e);
-                    //sendUnauthorisedError(servletResponse, e.getMessage());
-                    populateUnauthorisedData(servletResponse, "Invalid request. Request does not contain sufficient credentials to authenticate");
-                }
-            }
-        }
-    }
-
-    public static void sendUnauthorisedError(ServletResponse servletResponse, String message) throws IOException {
-        HttpServletResponse httpServletResponse = (HttpServletResponse) servletResponse;
-        httpServletResponse.sendError(HttpServletResponse.SC_UNAUTHORIZED, message);
-    }
-
-    @Override
-    public void destroy() {
-
-        this.authenticatorList = null;
-    }
-
-    private Authenticator getAuthenticator(HttpServletRequest httpServletRequest) {
-
-        for (Authenticator authenticator : authenticatorList) {
-            if (authenticator.canProcess(httpServletRequest)) {
-                return authenticator;
-            }
-        }
-
-        return null;
-    }
-
-    /**
-     * This method will create a 401 unauthorized response to be sent.
-     *
-     * @param servletResponse The HTTP response.
-     */
-    public static void populateUnauthorisedData(ServletResponse servletResponse, String message) {
-
-        HttpServletResponse httpServletResponse = (HttpServletResponse)servletResponse;
-
-        httpServletResponse.setStatus(HttpServletResponse.SC_UNAUTHORIZED);
-        httpServletResponse.addHeader("Server", "Airavata Server");
-        httpServletResponse.addHeader("Description", message);
-        httpServletResponse.addDateHeader("Date", Calendar.getInstance().getTimeInMillis());
-        httpServletResponse.addHeader("WWW-Authenticate", "Basic realm=Airavata");
-        httpServletResponse.setContentType("text/html");
-
-    }
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/ServletRequestHelper.java
----------------------------------------------------------------------
diff --git a/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/ServletRequestHelper.java b/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/ServletRequestHelper.java
deleted file mode 100644
index a8e5dbc..0000000
--- a/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/ServletRequestHelper.java
+++ /dev/null
@@ -1,118 +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.services.registry.rest.security;
-
-import org.apache.airavata.common.context.RequestContext;
-import org.apache.airavata.common.context.WorkflowContext;
-import org.apache.airavata.common.exception.ApplicationSettingsException;
-import org.apache.airavata.common.utils.Constants;
-import org.apache.airavata.common.utils.ServerSettings;
-import org.apache.airavata.security.AuthenticationException;
-import org.apache.commons.codec.binary.Base64;
-
-import javax.servlet.http.HttpServletRequest;
-
-/**
- * Helper class to extract request information.
- */
-public class ServletRequestHelper {
-
-    /**
-     * Header names
-     */
-    public static final String AUTHORISATION_HEADER_NAME = "Authorization";
-
-    protected void addIdentityInformationToSession(HttpServletRequest servletRequest) throws AuthenticationException {
-
-        addUserToSession(null, servletRequest);
-    }
-
-    public void addUserToSession(String userName, HttpServletRequest servletRequest) throws AuthenticationException {
-
-        if (userName == null) {
-            userName = getUserName(servletRequest);
-        }
-
-        String gatewayId = getGatewayId(servletRequest);
-
-        if (servletRequest.getSession() != null) {
-            servletRequest.getSession().setAttribute(Constants.USER_IN_SESSION, userName);
-            servletRequest.getSession().setAttribute(Constants.GATEWAY_NAME, gatewayId);
-        }
-
-        addToContext(userName, gatewayId);
-    }
-
-    String getUserName(HttpServletRequest httpServletRequest) throws AuthenticationException {
-
-        String basicHeader = httpServletRequest.getHeader(AUTHORISATION_HEADER_NAME);
-
-        if (basicHeader == null) {
-            throw new AuthenticationException("Authorization Required");
-        }
-
-        String[] userNamePasswordArray = basicHeader.split(" ");
-
-        if (userNamePasswordArray == null || userNamePasswordArray.length != 2) {
-            throw new AuthenticationException("Authorization Required");
-        }
-
-        String decodedString = decode(userNamePasswordArray[1]);
-
-        String[] array = decodedString.split(":");
-
-        if (array == null || array.length != 1) {
-            throw new AuthenticationException("Authorization Required");
-        }
-
-        return array[0];
-
-    }
-
-    public String decode(String encoded) {
-        return new String(Base64.decodeBase64(encoded.getBytes()));
-    }
-
-    String getGatewayId(HttpServletRequest request) throws AuthenticationException {
-        String gatewayId = request.getHeader(Constants.GATEWAY_NAME);
-
-        if (gatewayId == null) {
-            try {
-                gatewayId = ServerSettings.getSystemUserGateway();
-            } catch (ApplicationSettingsException e) {
-                throw new AuthenticationException("Unable to retrieve default gateway", e);
-            }
-        }
-
-        return gatewayId;
-    }
-
-    public void addToContext(String userName, String gatewayId) {
-
-        RequestContext requestContext = new RequestContext();
-        requestContext.setUserIdentity(userName);
-        requestContext.setGatewayId(gatewayId);
-
-        WorkflowContext.set(requestContext);
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/basic/BasicAccessAuthenticator.java
----------------------------------------------------------------------
diff --git a/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/basic/BasicAccessAuthenticator.java b/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/basic/BasicAccessAuthenticator.java
deleted file mode 100644
index 8908743..0000000
--- a/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/basic/BasicAccessAuthenticator.java
+++ /dev/null
@@ -1,220 +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.services.registry.rest.security.basic;
-
-import org.apache.airavata.common.exception.ApplicationSettingsException;
-import org.apache.airavata.common.utils.Constants;
-import org.apache.airavata.common.utils.ServerSettings;
-import org.apache.airavata.security.AbstractAuthenticator;
-import org.apache.airavata.security.AuthenticationException;
-import org.apache.airavata.security.UserStoreException;
-import org.apache.airavata.services.registry.rest.security.ServletRequestHelper;
-import org.apache.commons.codec.binary.Base64;
-import org.w3c.dom.Node;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpSession;
-
-/**
- * This authenticator handles basic access authentication requests. In basic access authentication
- * we get user name and password as HTTP headers. The password is encoded with base64.
- * More information @link{http://en.wikipedia.org/wiki/Basic_access_authentication}
- */
-public class BasicAccessAuthenticator extends AbstractAuthenticator {
-
-
-    private static final String AUTHENTICATOR_NAME = "BasicAccessAuthenticator";
-
-    private ServletRequestHelper servletRequestHelper = new ServletRequestHelper();
-
-    public BasicAccessAuthenticator() {
-        super(AUTHENTICATOR_NAME);
-    }
-
-
-    /**
-     * Returns user name and password as an array. The first element is user name and second is password.
-     *
-     * @param httpServletRequest The servlet request.
-     * @return User name password pair as an array.
-     * @throws AuthenticationException If an error occurred while extracting user name and password.
-     */
-    private String[] getUserNamePassword(HttpServletRequest httpServletRequest) throws AuthenticationException {
-
-        String basicHeader = httpServletRequest.getHeader(ServletRequestHelper.AUTHORISATION_HEADER_NAME);
-
-        if (basicHeader == null) {
-            throw new AuthenticationException("Authorization Required");
-        }
-
-        String[] userNamePasswordArray = basicHeader.split(" ");
-
-        if (userNamePasswordArray == null || userNamePasswordArray.length != 2) {
-            throw new AuthenticationException("Authorization Required");
-        }
-
-        String decodedString = servletRequestHelper.decode(userNamePasswordArray[1]);
-
-        String[] array = decodedString.split(":");
-
-        if (array == null || array.length != 2) {
-            throw new AuthenticationException("Authorization Required");
-        }
-
-        return array;
-
-    }
-
-    @Override
-    protected boolean doAuthentication(Object credentials) throws AuthenticationException {
-        if (this.getUserStore() == null) {
-            throw new AuthenticationException("Authenticator is not initialized. Error processing request.");
-        }
-
-        if (credentials == null)
-            return false;
-
-        HttpServletRequest httpServletRequest = (HttpServletRequest) credentials;
-
-        String[] array = getUserNamePassword(httpServletRequest);
-
-        String userName = array[0];
-        String password = array[1];
-
-        try {
-            return this.getUserStore().authenticate(userName, password);
-
-        } catch (UserStoreException e) {
-            throw new AuthenticationException("Error querying database for session information.", e);
-        }
-    }
-
-
-
-    @Override
-    public void onSuccessfulAuthentication(Object authenticationInfo) {
-
-        HttpServletRequest httpServletRequest = (HttpServletRequest) authenticationInfo;
-
-        try {
-            String[] array = getUserNamePassword(httpServletRequest);
-
-            StringBuilder stringBuilder = new StringBuilder("User : ");
-
-            if (array != null) {
-
-                servletRequestHelper.addUserToSession(array[0], httpServletRequest);
-
-                stringBuilder.append(array[0]).append(" successfully logged into system at ").append(getCurrentTime());
-                log.debug(stringBuilder.toString());
-
-            } else {
-                log.error("System error occurred while extracting user name after authentication. " +
-                        "Couldn't extract user name from the request.");
-            }
-        } catch (AuthenticationException e) {
-            log.error("System error occurred while extracting user name after authentication.", e);
-        }
-
-    }
-
-    @Override
-    public void onFailedAuthentication(Object authenticationInfo) {
-
-        HttpServletRequest httpServletRequest = (HttpServletRequest) authenticationInfo;
-
-        try {
-            String[] array = getUserNamePassword(httpServletRequest);
-
-            StringBuilder stringBuilder = new StringBuilder("User : ");
-
-            if (array != null) {
-
-                stringBuilder.append(array[0]).append(" Failed login attempt to system at ").append(getCurrentTime());
-                log.warn(stringBuilder.toString());
-
-            } else {
-                stringBuilder.append("Failed login attempt to system at ").append(getCurrentTime()).append( ". User unknown.");
-                log.warn(stringBuilder.toString());
-            }
-        } catch (AuthenticationException e) {
-            log.error("System error occurred while extracting user name after authentication.", e);
-        }
-    }
-
-    @Override
-    public boolean isAuthenticated(Object credentials) {
-        HttpServletRequest httpServletRequest = (HttpServletRequest) credentials;
-
-        HttpSession httpSession = httpServletRequest.getSession();
-
-        boolean seenInSession = false;
-
-        if (httpSession != null) {
-            String user = (String)httpSession.getAttribute(Constants.USER_IN_SESSION);
-            String gateway = (String)httpSession.getAttribute(Constants.GATEWAY_NAME);
-
-            if (user != null && gateway != null) {
-                servletRequestHelper.addToContext(user, gateway);
-                seenInSession = true;
-            }
-        }
-
-        return seenInSession;
-
-    }
-
-    @Override
-    public boolean canProcess(Object credentials) {
-
-        HttpServletRequest httpServletRequest = (HttpServletRequest) credentials;
-
-        return (httpServletRequest.getHeader(ServletRequestHelper.AUTHORISATION_HEADER_NAME) != null);
-    }
-
-
-
-    @Override
-    public void configure(Node node) throws RuntimeException {
-
-        /**
-         <specificConfigurations>
-         <database>
-         <jdbcUrl></jdbcUrl>
-         <databaseDriver></databaseDriver>
-         <userName></userName>
-         <password></password>
-         <userTableName></userTableName>
-         <userNameColumnName></userNameColumnName>
-         <passwordColumnName></passwordColumnName>
-         </database>
-         </specificConfigurations>
-         */
-
-        try {
-            this.getUserStore().configure(node);
-        } catch (UserStoreException e) {
-            throw new RuntimeException("Error while configuring authenticator user store", e);
-        }
-
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/local/LocalUserStore.java
----------------------------------------------------------------------
diff --git a/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/local/LocalUserStore.java b/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/local/LocalUserStore.java
deleted file mode 100644
index c4ec4c1..0000000
--- a/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/local/LocalUserStore.java
+++ /dev/null
@@ -1,339 +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.services.registry.rest.security.local;
-
-import java.security.NoSuchAlgorithmException;
-import java.sql.Connection;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-import javax.servlet.ServletContext;
-
-import org.apache.airavata.common.utils.DBUtil;
-import org.apache.airavata.common.utils.SecurityUtil;
-import org.apache.airavata.registry.api.util.RegistrySettings;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * User store to maintain internal DB database.
- */
-public class LocalUserStore {
-
-    protected static Logger log = LoggerFactory.getLogger(LocalUserStore.class);
-
-    private DBUtil dbUtil;
-
-    private String hashMethod;
-
-    public LocalUserStore(ServletContext servletContext) throws Exception {
-        // Properties properties = WebAppUtil.getAiravataProperties(servletContext);
-
-        hashMethod = RegistrySettings.getSetting("default.registry.password.hash.method");
-
-        dbUtil = new DBUtil(RegistrySettings.getSetting("registry.jdbc.url"),
-                RegistrySettings.getSetting("registry.jdbc.user"),
-                RegistrySettings.getSetting("registry.jdbc.password"),
-                RegistrySettings.getSetting("registry.jdbc.driver"));
-
-    }
-
-    public LocalUserStore(DBUtil db) {
-        dbUtil = db;
-    }
-
-    public void addUser(String userName, String password) {
-
-        String sql = "insert into Users values (?, ?)";
-
-        Connection connection = null;
-        PreparedStatement preparedStatement = null;
-
-        try {
-            connection = dbUtil.getConnection();
-            preparedStatement = connection.prepareStatement(sql);
-
-            preparedStatement.setString(1, userName);
-            preparedStatement.setString(2, SecurityUtil.digestString(password, hashMethod));
-
-            preparedStatement.executeUpdate();
-
-            connection.commit();
-
-            log.debug("User " + userName + " successfully added.");
-
-        } catch (SQLException e) {
-            StringBuilder stringBuilder = new StringBuilder("Error persisting user information.");
-            stringBuilder.append(" user - ").append(userName);
-
-            log.error(stringBuilder.toString(), e);
-
-            throw new RuntimeException(stringBuilder.toString(), e);
-        } catch (NoSuchAlgorithmException e) {
-            String stringBuilder = "Error creating hash value for password.";
-            log.error(stringBuilder, e);
-
-            throw new RuntimeException(stringBuilder, e);
-        } finally {
-
-            dbUtil.cleanup(preparedStatement, connection);
-        }
-
-    }
-
-    protected String getPassword(String userName, Connection connection) {
-
-        String sql = "select password from Users where user_name = ?";
-
-        PreparedStatement preparedStatement = null;
-        ResultSet resultSet = null;
-
-        try {
-            preparedStatement = connection.prepareStatement(sql);
-
-            preparedStatement.setString(1, userName);
-
-            resultSet = preparedStatement.executeQuery();
-
-            if (resultSet.next()) {
-                return resultSet.getString("password");
-            }
-
-        } catch (SQLException e) {
-            StringBuilder stringBuilder = new StringBuilder("Error retrieving credentials for user.");
-            stringBuilder.append("name - ").append(userName);
-
-            log.error(stringBuilder.toString(), e);
-
-            throw new RuntimeException(stringBuilder.toString(), e);
-        } finally {
-
-            if (resultSet != null) {
-                try {
-                    resultSet.close();
-                } catch (SQLException e) {
-                    log.error("Error closing result set", e);
-                }
-            }
-
-            if (preparedStatement != null) {
-                try {
-                    preparedStatement.close();
-                } catch (SQLException e) {
-                    log.error("Error closing prepared statement", e);
-                }
-            }
-        }
-
-        return null;
-    }
-
-    public void changePassword(String userName, String oldPassword, String newPassword) {
-
-        Connection connection = null;
-        PreparedStatement preparedStatement = null;
-
-        try {
-            connection = dbUtil.getConnection();
-
-            String storedPassword = getPassword(userName, connection);
-
-            String oldDigestedPassword = SecurityUtil.digestString(oldPassword, hashMethod);
-
-            if (storedPassword != null) {
-                if (!storedPassword.equals(oldDigestedPassword)) {
-                    throw new RuntimeException("Previous password did not match correctly. Please specify old password"
-                            + " correctly.");
-                }
-            }
-
-            String sql = "update Users set password = ? where user_name = ?";
-
-            preparedStatement = connection.prepareStatement(sql);
-
-            preparedStatement.setString(1, SecurityUtil.digestString(newPassword, hashMethod));
-            preparedStatement.setString(2, userName);
-
-            preparedStatement.executeUpdate();
-
-            connection.commit();
-
-            log.debug("Password changed for user " + userName);
-
-        } catch (SQLException e) {
-            StringBuilder stringBuilder = new StringBuilder("Error updating credentials.");
-            stringBuilder.append(" user - ").append(userName);
-
-            log.error(stringBuilder.toString(), e);
-
-            throw new RuntimeException(stringBuilder.toString(), e);
-        } catch (NoSuchAlgorithmException e) {
-            String stringBuilder = "Error creating hash value for password.";
-            log.error(stringBuilder, e);
-
-            throw new RuntimeException(stringBuilder, e);
-        } finally {
-
-            dbUtil.cleanup(preparedStatement, connection);
-        }
-
-    }
-
-    public void changePasswordByAdmin(String userName, String newPassword) {
-
-        Connection connection = null;
-        PreparedStatement preparedStatement = null;
-
-        try {
-            connection = dbUtil.getConnection();
-
-            String sql = "update Users set password = ? where user_name = ?";
-
-            preparedStatement = connection.prepareStatement(sql);
-
-            preparedStatement.setString(1, SecurityUtil.digestString(newPassword, hashMethod));
-            preparedStatement.setString(2, userName);
-
-            preparedStatement.executeUpdate();
-
-            connection.commit();
-
-            log.debug("Admin changed password of user " + userName);
-
-        } catch (SQLException e) {
-            StringBuilder stringBuilder = new StringBuilder("Error updating credentials.");
-            stringBuilder.append(" user - ").append(userName);
-
-            log.error(stringBuilder.toString(), e);
-
-            throw new RuntimeException(stringBuilder.toString(), e);
-        } catch (NoSuchAlgorithmException e) {
-            String stringBuilder = "Error creating hash value for password.";
-            log.error(stringBuilder, e);
-
-            throw new RuntimeException(stringBuilder, e);
-        } finally {
-
-            dbUtil.cleanup(preparedStatement, connection);
-        }
-
-    }
-
-    public void deleteUser(String userName) {
-
-        String sql = "delete from Users where user_name=?";
-
-        Connection connection = null;
-        PreparedStatement preparedStatement = null;
-
-        try {
-            connection = dbUtil.getConnection();
-            preparedStatement = connection.prepareStatement(sql);
-
-            preparedStatement.setString(1, userName);
-
-            preparedStatement.executeUpdate();
-
-            connection.commit();
-
-            log.debug("User " + userName + " deleted.");
-
-        } catch (SQLException e) {
-            StringBuilder stringBuilder = new StringBuilder("Error deleting user.");
-            stringBuilder.append("user - ").append(userName);
-
-            log.error(stringBuilder.toString(), e);
-
-            throw new RuntimeException(stringBuilder.toString(), e);
-        } finally {
-            dbUtil.cleanup(preparedStatement, connection);
-        }
-
-    }
-
-    public List<String> getUsers() {
-
-        List<String> userList = new ArrayList<String>();
-
-        String sql = "select user_name from Users";
-
-        PreparedStatement preparedStatement = null;
-        ResultSet resultSet = null;
-        Connection connection = null;
-
-        try {
-
-            connection = dbUtil.getConnection();
-            preparedStatement = connection.prepareStatement(sql);
-
-            resultSet = preparedStatement.executeQuery();
-
-            while (resultSet.next()) {
-                userList.add(resultSet.getString("user_name"));
-            }
-
-        } catch (SQLException e) {
-            String errorString = "Error retrieving Users.";
-            log.error(errorString, e);
-
-            throw new RuntimeException(errorString, e);
-        } finally {
-
-            if (resultSet != null) {
-                try {
-                    resultSet.close();
-                } catch (SQLException e) {
-                    log.error("Error closing result set", e);
-                }
-            }
-
-            if (preparedStatement != null) {
-                try {
-                    preparedStatement.close();
-                } catch (SQLException e) {
-                    log.error("Error closing prepared statement", e);
-                }
-            }
-
-            if (connection != null) {
-                try {
-                    connection.close();
-                } catch (SQLException e) {
-                    log.error("Error closing connection", e);
-                }
-            }
-        }
-
-        Collections.sort(userList);
-
-        return userList;
-
-    }
-
-    public static String getPasswordRegularExpression() {
-        return "'^[a-zA-Z0-9_-]{6,15}$'";
-    }
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/session/SessionAuthenticator.java
----------------------------------------------------------------------
diff --git a/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/session/SessionAuthenticator.java b/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/session/SessionAuthenticator.java
deleted file mode 100644
index 86299a4..0000000
--- a/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/security/session/SessionAuthenticator.java
+++ /dev/null
@@ -1,120 +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.services.registry.rest.security.session;
-
-import org.apache.airavata.security.AbstractAuthenticator;
-import org.apache.airavata.security.AuthenticationException;
-import org.apache.airavata.security.UserStoreException;
-import org.w3c.dom.Node;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpSession;
-
-/**
- * This authenticator will authenticate requests based on a session (NOT HTTP Session) id stored
- * in the database.
- */
-public class SessionAuthenticator extends AbstractAuthenticator {
-
-    private static final String AUTHENTICATOR_NAME = "SessionAuthenticator";
-
-    private static final String SESSION_TICKET = "sessionTicket";
-
-    public SessionAuthenticator() {
-        super(AUTHENTICATOR_NAME);
-    }
-
-    @Override
-    public boolean doAuthentication(Object credentials) throws AuthenticationException {
-
-       if (credentials == null)
-            return false;
-
-        HttpServletRequest httpServletRequest = (HttpServletRequest)credentials;
-        String sessionTicket = httpServletRequest.getHeader(SESSION_TICKET);
-        try {
-            return this.getUserStore().authenticate(sessionTicket);
-        } catch (UserStoreException e) {
-            throw new AuthenticationException("Error querying database for session information.", e);
-        }
-    }
-
-    @Override
-    public boolean canProcess(Object credentials) {
-
-        if (credentials instanceof HttpServletRequest) {
-            HttpServletRequest request = (HttpServletRequest) credentials;
-
-            String ticket = request.getHeader(SESSION_TICKET);
-            if (ticket != null) {
-                return true;
-            }
-        }
-
-        return false;
-    }
-
-    @Override
-    public void onSuccessfulAuthentication(Object authenticationInfo) {
-
-        HttpServletRequest httpServletRequest = (HttpServletRequest)authenticationInfo;
-        String sessionTicket = httpServletRequest.getHeader(SESSION_TICKET);
-
-        // Add sessionTicket to http session
-        HttpSession httpSession = httpServletRequest.getSession();
-
-        if (httpSession != null) {
-            httpSession.setAttribute(SESSION_TICKET, sessionTicket);
-        }
-
-        log.debug("A request with a session ticket is successfully logged in.");
-
-    }
-
-    @Override
-    public void onFailedAuthentication(Object authenticationInfo) {
-        log.warn("Failed attempt to login.");
-    }
-
-    @Override
-    public void configure(Node node) throws RuntimeException {
-
-        try {
-            this.getUserStore().configure(node);
-        } catch (UserStoreException e) {
-            throw new RuntimeException("Error while configuring authenticator user store", e);
-        }
-    }
-
-
-    @Override
-    public boolean isAuthenticated(Object credentials) {
-        HttpServletRequest httpServletRequest = (HttpServletRequest)credentials;
-
-        if (httpServletRequest.getSession() != null) {
-            String sessionTicket = (String)httpServletRequest.getSession().getAttribute(SESSION_TICKET);
-            return (sessionTicket != null);
-        }
-
-        return false;
-
-    }
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/utils/WebAppUtil.java
----------------------------------------------------------------------
diff --git a/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/utils/WebAppUtil.java b/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/utils/WebAppUtil.java
deleted file mode 100644
index 6a58c56..0000000
--- a/modules/rest/service/src/main/java/org/apache/airavata/services/registry/rest/utils/WebAppUtil.java
+++ /dev/null
@@ -1,64 +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.services.registry.rest.utils;
-
-import java.io.IOException;
-import java.net.URL;
-import java.util.Properties;
-
-import javax.servlet.ServletContext;
-import javax.ws.rs.core.Response;
-
-import org.apache.airavata.rest.mappings.utils.RestServicesConstants;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * A utility class for webapp operations.
- */
-public class WebAppUtil {
-
-    protected static Logger log = LoggerFactory.getLogger(WebAppUtil.class);
-
-    public static Response reportInternalServerError(String resourceMethod, Throwable t) {
-
-        log.error("Resource Method : " + resourceMethod + " : Internal Server Error ", t);
-        Response.ResponseBuilder builder = Response.status(Response.Status.INTERNAL_SERVER_ERROR);
-        builder.entity(t.getMessage());
-        return builder.build();
-    }
-
-    // public static Properties getAiravataProperties(ServletContext servletContext) throws IOException {
-    //
-    // URL url = WebAppUtil.class.getClassLoader().
-    // getResource(RestServicesConstants.AIRAVATA_SERVER_PROPERTIES);
-    // Properties properties = new Properties();
-    // try {
-    // properties.load(url.openStream());
-    // } catch (IOException e) {
-    // log.error("Error reading Airavata properties");
-    // throw e;
-    // }
-    //
-    // return properties;
-    // }
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/rest/service/src/main/java/org/apache/airavata/services/server/ServerConfigurationService.java
----------------------------------------------------------------------
diff --git a/modules/rest/service/src/main/java/org/apache/airavata/services/server/ServerConfigurationService.java b/modules/rest/service/src/main/java/org/apache/airavata/services/server/ServerConfigurationService.java
deleted file mode 100644
index ff6713c..0000000
--- a/modules/rest/service/src/main/java/org/apache/airavata/services/server/ServerConfigurationService.java
+++ /dev/null
@@ -1,32 +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.services.server;
-
-import javax.ws.rs.Path;
-
-import org.apache.airavata.rest.mappings.utils.ResourcePathConstants.ServerManagerConstants;
-import org.apache.airavata.services.registry.rest.resources.ConfigurationRegistryResource;
-
-@Path(ServerManagerConstants.PATH)
-public class ServerConfigurationService extends ConfigurationRegistryResource{
-
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/0e2c10f5/modules/rest/service/src/test/java/org/apache/airavata/services/registry/rest/security/AbstractAuthenticatorTest.java
----------------------------------------------------------------------
diff --git a/modules/rest/service/src/test/java/org/apache/airavata/services/registry/rest/security/AbstractAuthenticatorTest.java b/modules/rest/service/src/test/java/org/apache/airavata/services/registry/rest/security/AbstractAuthenticatorTest.java
deleted file mode 100644
index 65ca00f..0000000
--- a/modules/rest/service/src/test/java/org/apache/airavata/services/registry/rest/security/AbstractAuthenticatorTest.java
+++ /dev/null
@@ -1,84 +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.services.registry.rest.security;
-
-import junit.framework.TestCase;
-import org.apache.airavata.common.utils.DatabaseTestCases;
-import org.apache.airavata.common.utils.DerbyUtil;
-import org.apache.airavata.security.Authenticator;
-import org.apache.airavata.security.configurations.AuthenticatorConfigurationReader;
-import org.junit.AfterClass;
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-import java.util.List;
-
-/**
- * An abstract class to implement test cases for authenticators.
- */
-public abstract class AbstractAuthenticatorTest extends DatabaseTestCases {
-
-    private String authenticatorName;
-
-    protected Authenticator authenticator = null;
-
-    public AbstractAuthenticatorTest(String name) throws Exception {
-        authenticatorName = name;
-    }
-
-    protected AuthenticatorConfigurationReader authenticatorConfigurationReader;
-
-    @Before
-    public void setUp() throws Exception {
-
-        authenticatorConfigurationReader = new AuthenticatorConfigurationReader();
-        authenticatorConfigurationReader.init(this.getClass().getClassLoader()
-                .getResourceAsStream("authenticators.xml"));
-
-        List<Authenticator> listAuthenticators = authenticatorConfigurationReader.getAuthenticatorList();
-
-        if (listAuthenticators == null) {
-            throw new Exception("No authenticators found !");
-        }
-
-        for (Authenticator a : listAuthenticators) {
-            if (a.getAuthenticatorName().equals(authenticatorName)) {
-                authenticator = a;
-            }
-        }
-
-        if (authenticator == null) {
-            throw new Exception("Could not find an authenticator with name " + authenticatorName);
-        }
-
-    }
-
-    @Test
-    public abstract void testAuthenticateSuccess() throws Exception;
-
-    @Test
-    public abstract void testAuthenticateFail() throws Exception;
-
-    @Test
-    public abstract void testCanProcess() throws Exception;
-}