registry.removeApplicationDescriptor("testService", "testHost", "testApplication");
}
public void testUpdateApplicationDescriptorWithOtherDescriptors() throws Exception {
ApplicationDescription applicationDescription = new ApplicationDescription(ApplicationDeploymentDescriptionType.type);
ApplicationDeploymentDescriptionType.ApplicationName applicationName = applicationDescription.getType().addNewApplicationName();
applicationName.setStringValue("testApplication");
applicationDescription.getType().setApplicationName(applicationName);
applicationDescription.getType().setInputDataDirectory("/bin");
applicationDescription.getType().setExecutableLocation("/bin/echo");
applicationDescription.getType().setOutputDataDirectory("/tmp");
HostDescription hostDescription = new HostDescription(GlobusHostType.type);
hostDescription.getType().setHostName("testHost");
hostDescription.getType().setHostAddress("testHostAddress");
ServiceDescription serviceDescription = new ServiceDescription();
List<InputParameterType> inputParameters = new ArrayList<InputParameterType>();
List<OutputParameterType> outputParameters = new ArrayList<OutputParameterType>();
serviceDescription.getType().setName("testServiceDesc");
InputParameterType parameter = InputParameterType.Factory.newInstance();
parameter.setParameterName("input1");
parameter.setParameterDescription("testDesc");
ParameterType parameterType = parameter.addNewParameterType();
parameterType.setType(DataType.Enum.forString("testType"));
parameterType.setName("testParamtype");
inputParameters.add(parameter);
OutputParameterType outputParameter = OutputParameterType.Factory.newInstance();
outputParameter.setParameterName("input1");
outputParameter.setParameterDescription("testDesc");
ParameterType outputParaType = outputParameter.addNewParameterType();
outputParaType.setType(DataType.Enum.forString("testType"));
outputParaType.setName("testParamtype");
outputParameters.add(outputParameter);
serviceDescription.getType().setInputParametersArray(inputParameters.toArray(new InputParameterType[]{}));
serviceDescription.getType().setOutputParametersArray(outputParameters.toArray(new OutputParameterType[]{}));
registry.addApplicationDescriptor(serviceDescription, hostDescription, applicationDescription);
ApplicationDescription applicationDescriptor = registry.getApplicationDescriptor("testServiceDesc", "testHost", "testApplication");
applicationDescriptor.getType().setExecutableLocation("/bin/echo1");
registry.udpateApplicationDescriptor(serviceDescription, hostDescription, applicationDescriptor);
ApplicationDescription descriptor = registry.getApplicationDescriptor("testServiceDesc", "testHost", "testApplication");
String executableLocation = descriptor.getType().getExecutableLocation();
assertTrue("application descriptor updated successfully", executableLocation.equals("/bin/echo1"));
registry.removeApplicationDescriptor("testServiceDesc", "testHost", "testApplication");
}