diff options
Diffstat (limited to 'aria/aria-rest-java-client/src/main/java/com/gigaspaces')
22 files changed, 0 insertions, 1383 deletions
diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/AriaClient.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/AriaClient.java deleted file mode 100644 index d6e9f2434d..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/AriaClient.java +++ /dev/null @@ -1,201 +0,0 @@ -/*
- * ============LICENSE_START===================================================
- * Copyright (c) 2017 Cloudify.co. All rights reserved.
- * ===================================================================
- * Licensed 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.
- * ============LICENSE_END====================================================
-*/
-package com.gigaspaces.aria.rest.client;
-
-import com.gigaspaces.aria.rest.client.exceptions.StorageException;
-import com.gigaspaces.aria.rest.client.exceptions.ValidationException;
-
-import java.util.List;
-import java.util.Map;
-
-/**
- * Created by DeWayne on 7/12/2017.
- */
-public interface AriaClient {
-
- /**
- * Installs a service template
- *
- * @param template
- * @throws ValidationException
- * @throws StorageException
- */
- public void install_service_template(ServiceTemplate template)throws ValidationException, StorageException, Exception;
-
- /**
- * Validate a service template
- * @param template
- * @return
- */
- public ValidationResult validate_service_template(ServiceTemplate template)throws Exception;
-
- /**
- * Fetch a list of stored service templates
- *
- * @return
- */
- public List<? extends ServiceTemplate> list_service_templates();
-
- /**
- * Delete an existing template
- *
- * @param template_id
- * @throws IllegalArgumentException
- */
- public void delete_service_template(int template_id) throws IllegalArgumentException, Exception;
-
- /**
- * Returns a list of node templates for a given service template
- * @param template_id
- * @return
- */
- List<? extends NodeTemplate> list_nodes(int template_id);
-
- /**
- * Fetch a given node template
- *
- * @param node_id
- * @return
- * @throws IllegalArgumentException
- */
- public NodeTemplate get_node( int node_id) throws IllegalArgumentException;
-
- /**
- * List all services
- *
- * @return
- */
- public List<? extends Service> list_services();
-
- /**
- * Fetch the specified service
- *
- * @param service_id
- * @return
- * @throws IllegalArgumentException
- */
- public Service get_service(int service_id) throws IllegalArgumentException;
-
- /**
- * Fetch the outputs of the specified service
- *
- * @param service_id
- * @return
- * @throws IllegalArgumentException
- */
- public List<? extends Output> list_service_outputs(int service_id) throws IllegalArgumentException;
-
- /**
- * Fetch the inputs of the specified service
- *
- * @param service_id
- * @return
- * @throws IllegalArgumentException
- */
- public List<? extends Input> list_service_inputs(int service_id) throws IllegalArgumentException;
-
- /**
- * Create a service
- *
- * @param template_id
- * @param service_name
- * @param inputs
- * @throws Exception
- */
- public void create_service(int template_id, String service_name, List<Input> inputs)throws Exception;
-
- /**
- * Delete the specified service
- *
- * @param service_id
- * @throws IllegalArgumentException
- */
- public void delete_service(int service_id)throws Exception;
-
- /**
- * List workflows for the provided service
- *
- * @param service_id
- * @return
- * @throws IllegalArgumentException
- */
- public List<? extends Workflow> list_workflows(int service_id)throws IllegalArgumentException;
-
- /**
- * Fetch the specified workflow
- *
- * @param workflow_id
- * @return the requested Workflow
- * @throws IllegalArgumentException when the workflow_id doesn't exist
- */
- public Workflow get_workflow(int workflow_id)throws IllegalArgumentException;
-
- /**
- * List all executions
- *
- * @return
- * @throws Exception
- */
- public List<? extends Execution> list_executions()throws Exception;
-
- /**
- * List executions for provided service
- *
- * @param service_id
- * @return
- * @throws Exception
- */
- public List<? extends Execution> list_executions(int service_id)throws Exception;
-
- /**
- * Fetch the specified execution
- *
- * @param execution_id
- * @return
- * @throws IllegalArgumentException
- */
- public Execution get_execution(int execution_id)throws IllegalArgumentException;
-
- /**
- * Starts an execution
- *
- * @param service_id
- * @param workflow_name
- * @param details
- * @return the execution id
- * @throws Exception
- */
- public int start_execution(int service_id, String workflow_name, ExecutionDetails details)throws Exception;
-
- /**
- * Resumes an interrupted execution
- *
- * @param execution_id
- * @param details
- * @throws IllegalArgumentException
- */
- public void resume_execution(int execution_id, ExecutionDetails details)throws IllegalArgumentException;
-
- /**
- * Cancels the specified execution
- *
- * @param execution_id
- * @throws IllegalArgumentException
- */
- public void cancel_execution(int execution_id)throws Exception;
-}
diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/AriaClientFactory.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/AriaClientFactory.java deleted file mode 100644 index 7241b2ac65..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/AriaClientFactory.java +++ /dev/null @@ -1,31 +0,0 @@ -/*
- * ============LICENSE_START===================================================
- * Copyright (c) 2017 Cloudify.co. All rights reserved.
- * ===================================================================
- * Licensed 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.
- * ============LICENSE_END====================================================
-*/
-
-package com.gigaspaces.aria.rest.client;
-
-import java.net.URL;
-
-/**
- * Created by DeWayne on 7/12/2017.
- */
-public class AriaClientFactory {
-
- public AriaClient createRestClient(String protocol, String address, int port, String version){
- return new AriaRestClient(protocol, address, port, version);
- }
-}
diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/AriaRestClient.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/AriaRestClient.java deleted file mode 100644 index 5de2203b2f..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/AriaRestClient.java +++ /dev/null @@ -1,377 +0,0 @@ -/* - * ============LICENSE_START=================================================== - * Copyright (c) 2017 Cloudify.co. All rights reserved. - * =================================================================== - * Licensed 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. - * ============LICENSE_END==================================================== -*/ -package com.gigaspaces.aria.rest.client; - -import java.util.List; - -import javax.ws.rs.client.Client; -import javax.ws.rs.client.ClientBuilder; -import javax.ws.rs.client.Entity; -import javax.ws.rs.client.WebTarget; -import javax.ws.rs.core.GenericType; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; - -import org.codehaus.jackson.JsonFactory; -import org.codehaus.jackson.JsonNode; -import org.codehaus.jackson.jaxrs.JacksonJsonProvider; -import org.codehaus.jackson.map.ObjectMapper; -import com.gigaspaces.aria.rest.client.exceptions.StorageException; -import com.gigaspaces.aria.rest.client.exceptions.ValidationException; - -import sun.reflect.generics.reflectiveObjects.NotImplementedException; - -/** - * Created by DeWayne on 7/12/2017. - */ -public class AriaRestClient implements AriaClient { - private Client client = null; - private WebTarget base_target = null; - - /** - * Construct an Aria REST client - * - * @param protocol - * either http or https - * @param address - * the IP address or host name - * @param port - * the port of the service - * @param version - * the api version - */ - public AriaRestClient(String protocol, String address, int port, String version) { - this.client = ClientBuilder.newBuilder().register(JacksonJsonProvider.class).build(); - base_target = client.target(protocol + "://" + address + ":" + port + "/api/" + version); - } - - /** - * Installs a service template - * - * @param template - * the template object - * @throws ValidationException - * @throws StorageException - */ - public void install_service_template(ServiceTemplate template) - throws ValidationException, StorageException, Exception { - - byte[] csarBytes = template.getCSARBytes(); - Response response = null; - if (csarBytes == null) { - response = base_target.path("templates/" + template.getName()).request(MediaType.APPLICATION_JSON) - .put(Entity.entity( - "{\"service-template-path\":\"" + template.getURI().toString() + "\"" - + ",\"service-template-filename\":\"" + template.getFilename() + "\"", - MediaType.APPLICATION_JSON)); - } - else { - - response = base_target.path("templates/" + template.getName()).request("application/zip") - .put(Entity.entity(csarBytes, "application/zip")); - } - - if (response.getStatus() == 500) { - throw new StorageException(response.readEntity(String.class)); - } else if (response.getStatus() == 400) { - throw new ValidationException(response.readEntity(String.class)); - } else if (response.getStatus() > 199 && response.getStatus() < 300) { - return; - } else { - throw new Exception( - "Error installing template: " + response.getStatus() + " " + response.readEntity(String.class)); - } - } - - public ValidationResult validate_service_template(ServiceTemplate template) throws Exception { - Response response = base_target.path("templates").request(MediaType.APPLICATION_JSON) - .post(Entity.entity( - "{\"service-template-path\":\"" + template.getURI().toString() + "\"" - + ",\"service-template-filename\":\"" + template.getFilename() + "\"}", - MediaType.APPLICATION_JSON)); - - ValidationResultImpl result = new ValidationResultImpl(); - if (response.getStatus() >= 200 && response.getStatus() < 300) { - result.setFailed(false); - } else if (response.getStatus() == 400) { - result.setFailed(true); - } else { - throw new Exception( - "received error response '" + response.getStatus() + "':" + response.readEntity(String.class)); - } - return result; - - } - - /** - * - * @return a list of service templates - */ - public List<? extends ServiceTemplate> list_service_templates() { - List<? extends ServiceTemplate> templates = base_target.path("templates").request(MediaType.APPLICATION_JSON) - .get(new GenericType<List<ServiceTemplateImpl>>() { - }); - - return templates; - } - - /** - * Deletes the specified template. - * - * TODO: Error handling is a little blunt. Need to describe failures better - * - * @param template_id - * the template id to delete - * @throws IllegalArgumentException - * thrown when the template can't be deleted - * @throws Exception - * other server side errors - */ - public void delete_service_template(int template_id) throws IllegalArgumentException, Exception { - Response response = base_target.path("templates/" + template_id).request(MediaType.APPLICATION_JSON).delete(); - - if (response.getStatus() >= 200 && response.getStatus() < 300) { - return; - } else if (response.getStatus() == 400) { - throw new IllegalArgumentException("Error deleting template '" + template_id + "'"); - } else { - throw new Exception("Error processing request. Return code = " + response.getStatus()); - } - } - - /** - * List the node templates for a given template id - * - * @param template_id - * @return - */ - public List<? extends NodeTemplate> list_nodes(int template_id) { - List<? extends NodeTemplate> nodes = base_target.path("templates/" + template_id + "/nodes") - .request(MediaType.APPLICATION_JSON).get(new GenericType<List<NodeTemplateImpl>>() { - }); - return nodes; - } - - /** - * Get a specific node by id - * - * @param node_id - * the node id - * @return - * @throws IllegalArgumentException - */ - public NodeTemplate get_node(int node_id) throws IllegalArgumentException { - NodeTemplate node = base_target.path("nodes/" + node_id).request(MediaType.APPLICATION_JSON) - .get(NodeTemplateImpl.class); - return node; - } - - public List<? extends Service> list_services() { - List<? extends Service> services = base_target.path("services").request(MediaType.APPLICATION_JSON) - .get(new GenericType<List<ServiceImpl>>() { - }); - return services; - } - - public Service get_service(int service_id) throws IllegalArgumentException { - throw new NotImplementedException(); - } - - public List<? extends Output> list_service_outputs(int service_id) throws IllegalArgumentException { - List<? extends Output> outputs = base_target.path("services").request(MediaType.APPLICATION_JSON) - .get(new GenericType<List<OutputImpl>>() { - }); - return outputs; - } - - public List<? extends Input> list_service_inputs(int service_id) throws IllegalArgumentException { - List<? extends Input> inputs = base_target.path("services").request(MediaType.APPLICATION_JSON) - .get(new GenericType<List<InputImpl>>() { - }); - return inputs; - } - - /** - * Create a service based on the supplied template - * - * @param template_id - * the template to create the service for - * @param service_name - * a name for the service - * @param inputs - * an optional list of inputs for the service (can be null) - * @throws Exception - */ - public void create_service(int template_id, String service_name, List<Input> inputs) throws Exception { - - String json = "{" + inputsToJson(inputs) + "}"; - - Response response = base_target.path("templates/" + template_id + "/services/" + service_name) - .request(MediaType.APPLICATION_JSON).post(Entity.entity(json, MediaType.APPLICATION_JSON)); - - if (response.getStatus() < 200 || response.getStatus() > 299) { - throw new Exception( - "create service failed:" + response.getStatus() + " " + response.readEntity(String.class)); - } - } - - public void delete_service(int service_id) throws Exception { - Response response = base_target.path("services/" + service_id).request(MediaType.APPLICATION_JSON).delete(); - if (!responseOK(response)) { - throw new Exception( - "delete service failed: " + response.getStatus() + " " + response.readEntity(String.class)); - } - } - - /** - * List user workflows for supplied service - * - * @param service_id - * @return - * @throws IllegalArgumentException - */ - public List<? extends Workflow> list_workflows(int service_id) throws IllegalArgumentException { - List<? extends Workflow> workflows = base_target.path("services/" + service_id + "/workflows") - .request(MediaType.APPLICATION_JSON).get(new GenericType<List<WorkflowImpl>>() { - }); - return workflows; - } - - public Workflow get_workflow(int workflow_id) throws IllegalArgumentException { - throw new NotImplementedException(); - } - - /** - * List all executions - * - * @return - * @throws Exception - */ - public List<? extends Execution> list_executions() throws Exception { - List<? extends Execution> executions = base_target.path("executions").request(MediaType.APPLICATION_JSON) - .get(new GenericType<List<ExecutionImpl>>() { - }); - return executions; - } - - /** - * List executions for specified service - * - * @param service_id - * @return - * @throws Exception - */ - public List<? extends Execution> list_executions(int service_id) throws Exception { - List<? extends Execution> executions = base_target.path("services/" + service_id + "/executions") - .request(MediaType.APPLICATION_JSON).get(new GenericType<List<ExecutionImpl>>() { - }); - return executions; - } - - /** - * Get details about a specified execution - * - * @param execution_id - * @return - * @throws IllegalArgumentException - */ - public Execution get_execution(int execution_id) throws IllegalArgumentException { - Execution execution = base_target.path("executions/" + execution_id).request(MediaType.APPLICATION_JSON) - .get(ExecutionImpl.class); - return execution; - } - - /** - * Start an execution for the specified service - * - * @param service_id - * the service to run the execution for - * @param workflow_name - * the name of the workflow to execute - * @param details - * details controlling execution operation - * @return the execution id - * @throws Exception - */ - public int start_execution(int service_id, String workflow_name, ExecutionDetails details) throws Exception { - StringBuilder json = new StringBuilder("{"); - if (details.getExecutor().length() > 0) { - json.append("\"executor\":\"").append(details.getExecutor()).append("\","); - } - if (details.getInputs() != null) { - json.append(inputsToJson(details.getInputs())); - } - json.append("\"task_max_attempts\":").append(details.getTaskMaxAttempts()).append(","); - json.append("\"task_retry_interval\":").append(details.getTaskRetryInterval()).append("}"); - - System.out.println("JSON=" + json.toString()); - - Response response = base_target.path("services/" + service_id + "/executions/" + workflow_name) - .request(MediaType.APPLICATION_JSON).post(Entity.entity(json.toString(), MediaType.APPLICATION_JSON)); - - if (!responseOK(response)) { - throw new Exception( - "start execution failed: " + response.getStatus() + " " + response.readEntity(String.class)); - } - - ObjectMapper mapper = new ObjectMapper(new JsonFactory()); - JsonNode rootNode = mapper.readTree(response.readEntity(String.class)); - int id = rootNode.get("id").asInt(-1); - return id; - } - - public void resume_execution(int execution_id, ExecutionDetails details) throws IllegalArgumentException { - StringBuilder json = new StringBuilder("{"); - if (details.getExecutor().length() > 0) { - json.append("\"executor\":\"").append(details.getExecutor()).append("\","); - } - json.append("\"retry_failed_tasks\":").append(details.isRetry_failed_tasks()).append("}"); - Response response = base_target.path("executions/" + execution_id).request(MediaType.APPLICATION_JSON) - .post(Entity.entity(json.toString(), MediaType.APPLICATION_JSON)); - } - - public void cancel_execution(int execution_id) throws Exception { - Response response = base_target.path("executions/" + execution_id).request(MediaType.APPLICATION_JSON).delete(); - if (!responseOK(response)) { - throw new Exception( - "delete service failed: " + response.getStatus() + " " + response.readEntity(String.class)); - } - } - - /** - * ----- ----- PRIVATE METHODS ----- - */ - - private boolean responseOK(Response response) { - return response.getStatus() > 199 && response.getStatus() < 300; - } - - private String inputsToJson(List<Input> inputs) { - if (inputs == null) - return null; - - StringBuilder sb = new StringBuilder("\"inputs\":{"); - for (Input input : inputs) { - sb.append("\"").append(input.getName()).append("\":\"").append(input.getValue()).append("\","); - } - if (inputs.size() > 0) - sb.deleteCharAt(sb.length() - 1); // trim comma - - return sb.toString(); - } -} diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/Execution.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/Execution.java deleted file mode 100644 index ab742833e6..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/Execution.java +++ /dev/null @@ -1,29 +0,0 @@ -/*
- * ============LICENSE_START===================================================
- * Copyright (c) 2017 Cloudify.co. All rights reserved.
- * ===================================================================
- * Licensed 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.
- * ============LICENSE_END====================================================
-*/
-package com.gigaspaces.aria.rest.client;
-
-/**
- * Created by DeWayne on 7/12/2017.
- */
-public interface Execution {
- int getExecutionId();
- String getWorkflowName();
- String getServiceTemplateName();
- String getServiceName();
- String getStatus();
-}
diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ExecutionDetails.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ExecutionDetails.java deleted file mode 100644 index e7685a259c..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ExecutionDetails.java +++ /dev/null @@ -1,73 +0,0 @@ -/*
- * ============LICENSE_START===================================================
- * Copyright (c) 2017 Cloudify.co. All rights reserved.
- * ===================================================================
- * Licensed 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.
- * ============LICENSE_END====================================================
-*/
-package com.gigaspaces.aria.rest.client;
-
-import java.util.List;
-
-/**
- * Created by DeWayne on 7/12/2017.
- */
-public class ExecutionDetails {
- private String executor=""; //default
- private int task_max_attempts=30;
- private int task_retry_interval=30;
- private List<Input> inputs=null;
- private boolean retry_failed_tasks=false;
-
- public ExecutionDetails(){}
-
- public ExecutionDetails(String executor){
- this.executor=executor;
- }
-
- public ExecutionDetails(String executor, int task_max_attempts, int task_retry_interval, boolean retry_failed_tasks,
- List<Input> inputs){
- this.executor=executor;
- this.task_max_attempts=task_max_attempts;
- this.task_retry_interval=task_retry_interval;
- this.retry_failed_tasks = retry_failed_tasks;
- this.inputs=inputs;
- }
- public String getExecutor(){
- return executor;
- }
- public void setExecutor(String executor){
- this.executor=executor;
- }
- public int getTaskMaxAttempts(){
- return task_max_attempts;
- }
- public void setTaskMaxAttempts(int max){
- this.task_max_attempts=max;
- }
- public int getTaskRetryInterval(){
- return task_retry_interval;
- }
- public void setTaskRetryInterval(int interval){
- this.task_retry_interval=interval;
- }
- public List<Input> getInputs(){
- return inputs;
- }
- public void setInputs(List<Input> inputs){
- this.inputs=inputs;
- }
- public boolean isRetry_failed_tasks() {return retry_failed_tasks;}
- public void setRetry_failed_tasks(boolean retry_failed_tasks) {this.retry_failed_tasks = retry_failed_tasks;}
-
-}
diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ExecutionImpl.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ExecutionImpl.java deleted file mode 100644 index 3aac2a2ca9..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ExecutionImpl.java +++ /dev/null @@ -1,54 +0,0 @@ -/* - * ============LICENSE_START=================================================== - * Copyright (c) 2017 Cloudify.co. All rights reserved. - * =================================================================== - * Licensed 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. - * ============LICENSE_END==================================================== -*/ -package com.gigaspaces.aria.rest.client; - -import com.fasterxml.jackson.annotation.JsonProperty; - -/** - * Created by DeWayne on 7/17/2017. - */ -public class ExecutionImpl implements Execution { - @JsonProperty("execution_id") - int execution_id; - @JsonProperty("workflow_name") - String workflow_name; - @JsonProperty("service_template_name") - String service_template_name; - @JsonProperty("service_name") - String service_name; - String status; - - public int getExecutionId() { - return execution_id; - } - public String getWorkflowName() { - return workflow_name; - } - - public String getServiceTemplateName() { - return service_template_name; - } - - public String getServiceName() { - return service_name; - } - - public String getStatus() { - return status; - } -} diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/Input.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/Input.java deleted file mode 100644 index 595dfb1245..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/Input.java +++ /dev/null @@ -1,27 +0,0 @@ -/*
- * ============LICENSE_START===================================================
- * Copyright (c) 2017 Cloudify.co. All rights reserved.
- * ===================================================================
- * Licensed 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.
- * ============LICENSE_END====================================================
-*/
-package com.gigaspaces.aria.rest.client;
-
-/**
- * Created by DeWayne on 7/12/2017.
- */
-public interface Input {
- String getName();
- String getDescription();
- String getValue();
-}
diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/InputImpl.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/InputImpl.java deleted file mode 100644 index 3002b7b54e..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/InputImpl.java +++ /dev/null @@ -1,49 +0,0 @@ -/* - * ============LICENSE_START=================================================== - * Copyright (c) 2017 Cloudify.co. All rights reserved. - * =================================================================== - * Licensed 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. - * ============LICENSE_END==================================================== -*/ -package com.gigaspaces.aria.rest.client; - -/** - * Created by DeWayne on 7/17/2017. - */ -public class InputImpl implements Input { - private String name, description, value; - - public InputImpl(){} - - public InputImpl(String name,String value,String description){ - if(name==null || value==null){ - throw new IllegalArgumentException("null argument supplied"); - } - this.name=name; - this.value=value; - if(description!=null)this.description=description; - } - - public String getName() { - return name; - } - - public String getDescription() { - return description; - } - - public String getValue() { - return value; - } - -} diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/NodeTemplate.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/NodeTemplate.java deleted file mode 100644 index bc46d7f5b2..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/NodeTemplate.java +++ /dev/null @@ -1,29 +0,0 @@ -/*
- * ============LICENSE_START===================================================
- * Copyright (c) 2017 Cloudify.co. All rights reserved.
- * ===================================================================
- * Licensed 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.
- * ============LICENSE_END====================================================
-*/
-package com.gigaspaces.aria.rest.client;
-
-/**
- * Created by DeWayne on 7/12/2017.
- */
-public interface NodeTemplate {
- int getId();
- String getName();
- String getDescription();
- int getServiceTemplateId();
- String getTypeName();
-}
diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/NodeTemplateImpl.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/NodeTemplateImpl.java deleted file mode 100644 index 9190671c7a..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/NodeTemplateImpl.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * ============LICENSE_START=================================================== - * Copyright (c) 2017 Cloudify.co. All rights reserved. - * =================================================================== - * Licensed 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. - * ============LICENSE_END==================================================== -*/ -package com.gigaspaces.aria.rest.client; - -import com.fasterxml.jackson.annotation.JsonProperty; - -/** - * Created by DeWayne on 7/18/2017. - */ -public class NodeTemplateImpl implements NodeTemplate { - private int id; - private String name; - private String description=""; - @JsonProperty("service_template_id") - private int service_template_id; - @JsonProperty("type_name") - private String type_name=""; - - public NodeTemplateImpl(){} - - public NodeTemplateImpl(int id, String name, String description, int service_template_id, String type_name){ - this.id=id; - this.description=description; - this.service_template_id=service_template_id; - this.type_name=type_name; - } - - public int getId() { - return id; - } - - public String getDescription() { - return description; - } - - public int getServiceTemplateId() { - return service_template_id; - } - - public String getTypeName() { - return type_name; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - -} diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/Output.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/Output.java deleted file mode 100644 index 83363bad6c..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/Output.java +++ /dev/null @@ -1,27 +0,0 @@ -/*
- * ============LICENSE_START===================================================
- * Copyright (c) 2017 Cloudify.co. All rights reserved.
- * ===================================================================
- * Licensed 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.
- * ============LICENSE_END====================================================
-*/
-package com.gigaspaces.aria.rest.client;
-
-/**
- * Created by DeWayne on 7/12/2017.
- */
-public interface Output {
- String getName();
- String getDescription();
- String getValue();
-}
diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/OutputImpl.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/OutputImpl.java deleted file mode 100644 index 0a6cecc9c1..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/OutputImpl.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * ============LICENSE_START=================================================== - * Copyright (c) 2017 Cloudify.co. All rights reserved. - * =================================================================== - * Licensed 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. - * ============LICENSE_END==================================================== -*/ -package com.gigaspaces.aria.rest.client; - -/** - * Created by DeWayne on 7/17/2017. - */ -public class OutputImpl implements Output { - private String name, description, value; - - public String getName() { - return name; - } - - public String getDescription() { - return description; - } - - public String getValue() { - return value; - } -} diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/Service.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/Service.java deleted file mode 100644 index 9cf86ec73f..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/Service.java +++ /dev/null @@ -1,32 +0,0 @@ -/*
- * ============LICENSE_START===================================================
- * Copyright (c) 2017 Cloudify.co. All rights reserved.
- * ===================================================================
- * Licensed 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.
- * ============LICENSE_END====================================================
-*/
-package com.gigaspaces.aria.rest.client;
-
-import java.util.Date;
-
-/**
- * Created by DeWayne on 7/12/2017.
- */
-public interface Service {
- int getId();
- String getDescription();
- String getName();
- String getServiceTemplate();
- Date getCreated();
- Date getUpdated();
-}
diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ServiceImpl.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ServiceImpl.java deleted file mode 100644 index 456335cedc..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ServiceImpl.java +++ /dev/null @@ -1,58 +0,0 @@ -/* - * ============LICENSE_START=================================================== - * Copyright (c) 2017 Cloudify.co. All rights reserved. - * =================================================================== - * Licensed 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. - * ============LICENSE_END==================================================== -*/ -package com.gigaspaces.aria.rest.client; - -import java.net.URI; -import java.util.Date; - -/** - * - * - * Created by DeWayne on 7/17/2017. - */ -public class ServiceImpl implements Service { - private int id; - private String description, name, template; - private Date created, updated; - - public int getId(){ - return id; - } - - public String getDescription(){ - return description; - } - - public String getName(){ - return name; - } - - public String getServiceTemplate(){ - return template; - } - - public Date getCreated(){ - return created; - } - - public Date getUpdated(){ - return updated; - } - - -} diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ServiceTemplate.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ServiceTemplate.java deleted file mode 100644 index a2ca8cf662..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ServiceTemplate.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * ============LICENSE_START=================================================== - * Copyright (c) 2017 Cloudify.co. All rights reserved. - * =================================================================== - * Licensed 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. - * ============LICENSE_END==================================================== -*/ -package com.gigaspaces.aria.rest.client; - -import java.net.URI; - -/** - * Created by DeWayne on 7/12/2017. - */ -public interface ServiceTemplate { - String getName(); - URI getURI(); - int getId(); - String getFilename(); - String getDescription(); - byte[] getCSARBytes(); -} diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ServiceTemplateImpl.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ServiceTemplateImpl.java deleted file mode 100644 index 562fcb232e..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ServiceTemplateImpl.java +++ /dev/null @@ -1,93 +0,0 @@ -/* - * ============LICENSE_START=================================================== - * Copyright (c) 2017 Cloudify.co. All rights reserved. - * =================================================================== - * Licensed 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. - * ============LICENSE_END==================================================== -*/ -package com.gigaspaces.aria.rest.client; - -import java.net.URI; - -/** - * CSAR based implementation - * - * Created by DeWayne on 7/17/2017. - */ -public class ServiceTemplateImpl implements ServiceTemplate { - public static final String DEFAULT_TEMPLATE_NAME = "service-template.yaml"; - private String name; - private int id; - private URI uri; - private String filename = DEFAULT_TEMPLATE_NAME; - private String description; - private byte[] csar_blob; // for opaque binary - - public ServiceTemplateImpl(){} - - public ServiceTemplateImpl(String name, URI uri){ - this.name=name; - this.uri=uri; - } - - /** - * Construct service template from CSAR byte array - */ - public ServiceTemplateImpl(String name, byte[] csar){ - this.csar_blob = csar; - this.name = name; - } - - /** - * Construct an instance based on CSAR - * @param name a textual name for the template - * @param uri a URI to a CSAR - * @param filename the filename in the CSAR representing main yaml template - */ - public ServiceTemplateImpl(String name, URI uri, String filename, String description){ - this.name=name; - this.uri=uri; - this.filename=filename; - this.description=description; - } - - public int getId(){ - return id; - } - public void setId(int id){ - this.id=id; - } - public String getName() { - return name; - } - public void setName(String name){ - this.name=name; - } - public URI getURI() { - return uri; - } - public void setPath(String path){ - this.uri=uri; - } - public String getFilename() { - return filename; - } - public void setFilename(String filename){ - this.filename=filename; - } - public byte[] getCSARBytes() { - return csar_blob; - } - - public String getDescription(){ return description;} -} diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ValidationResult.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ValidationResult.java deleted file mode 100644 index 3d40dfa1ec..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ValidationResult.java +++ /dev/null @@ -1,26 +0,0 @@ -/*
- * ============LICENSE_START===================================================
- * Copyright (c) 2017 Cloudify.co. All rights reserved.
- * ===================================================================
- * Licensed 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.
- * ============LICENSE_END====================================================
-*/
-package com.gigaspaces.aria.rest.client;
-
-/**
- * Created by DeWayne on 7/12/2017.
- */
-public interface ValidationResult {
-
- boolean getFailed();
-}
diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ValidationResultImpl.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ValidationResultImpl.java deleted file mode 100644 index 22e34eb7b3..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/ValidationResultImpl.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * ============LICENSE_START=================================================== - * Copyright (c) 2017 Cloudify.co. All rights reserved. - * =================================================================== - * Licensed 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. - * ============LICENSE_END==================================================== -*/ -package com.gigaspaces.aria.rest.client; - -/** - * Created by DeWayne on 7/17/2017. - */ -public class ValidationResultImpl implements ValidationResult { - private boolean failed=false; - - public void setFailed(boolean failed){ - this.failed=failed; - } - public boolean getFailed() { - return failed; - } -} diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/Workflow.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/Workflow.java deleted file mode 100644 index 7dbab18943..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/Workflow.java +++ /dev/null @@ -1,25 +0,0 @@ -/*
- * ============LICENSE_START===================================================
- * Copyright (c) 2017 Cloudify.co. All rights reserved.
- * ===================================================================
- * Licensed 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.
- * ============LICENSE_END====================================================
-*/
-package com.gigaspaces.aria.rest.client;
-
-/**
- * Created by DeWayne on 7/12/2017.
- */
-public interface Workflow {
- String getName();
-}
diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/WorkflowImpl.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/WorkflowImpl.java deleted file mode 100644 index 41105df26a..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/WorkflowImpl.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * ============LICENSE_START=================================================== - * Copyright (c) 2017 Cloudify.co. All rights reserved. - * =================================================================== - * Licensed 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. - * ============LICENSE_END==================================================== -*/ -package com.gigaspaces.aria.rest.client; - -/** - * Created by DeWayne on 7/17/2017. - */ -public class WorkflowImpl implements Workflow{ - String name; - - public String getName() { - return name; - } -} diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/exceptions/StorageException.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/exceptions/StorageException.java deleted file mode 100755 index 50ff38da10..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/exceptions/StorageException.java +++ /dev/null @@ -1,27 +0,0 @@ -/*
- * ============LICENSE_START===================================================
- * Copyright (c) 2017 Cloudify.co. All rights reserved.
- * ===================================================================
- * Licensed 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.
- * ============LICENSE_END====================================================
-*/
-package com.gigaspaces.aria.rest.client.exceptions;
-
-/**
- * Created by DeWayne on 7/12/2017.
- */
-public class StorageException extends Exception {
- public StorageException(String message){
- super(message);
- }
-}
diff --git a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/exceptions/ValidationException.java b/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/exceptions/ValidationException.java deleted file mode 100755 index cbcee31cb4..0000000000 --- a/aria/aria-rest-java-client/src/main/java/com/gigaspaces/aria/rest/client/exceptions/ValidationException.java +++ /dev/null @@ -1,27 +0,0 @@ -/*
- * ============LICENSE_START===================================================
- * Copyright (c) 2017 Cloudify.co. All rights reserved.
- * ===================================================================
- * Licensed 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.
- * ============LICENSE_END====================================================
-*/
-package com.gigaspaces.aria.rest.client.exceptions;
-
-/**
- * Created by DeWayne on 7/12/2017.
- */
-public class ValidationException extends Exception {
- public ValidationException(String message){
- super(message);
- }
-}
|