http://git-wip-us.apache.org/repos/asf/airavata/blob/842004ee/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/tools/RegisterSampleApplications.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/tools/RegisterSampleApplications.java b/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/tools/RegisterSampleApplications.java index 75cb78c..7a8f51f 100644 --- a/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/tools/RegisterSampleApplications.java +++ b/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/tools/RegisterSampleApplications.java @@ -29,9 +29,7 @@ import java.util.*; import org.apache.airavata.api.Airavata; import org.apache.airavata.api.client.AiravataClientFactory; import org.apache.airavata.model.appcatalog.appdeployment.ApplicationParallelismType; -import org.apache.airavata.model.appcatalog.appinterface.DataType; -import org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType; -import org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType; +import org.apache.airavata.model.appcatalog.appinterface.*; import org.apache.airavata.model.appcatalog.computeresource.*; import org.apache.airavata.model.appcatalog.gatewayprofile.ComputeResourcePreference; import org.apache.airavata.model.appcatalog.gatewayprofile.GatewayResourceProfile; @@ -74,6 +72,7 @@ public class RegisterSampleApplications { private static final String mpiName = "HelloMPI"; private static final String monteXName = "TinkerMonte"; private static final String gaussianName = "Gaussian"; + private static final String gamessName = "Gamess"; //Appplication Descriptions private static final String echoDescription = "A Simple Echo Application"; @@ -89,6 +88,7 @@ public class RegisterSampleApplications { private static final String mpiDescription = "A Hello MPI Application"; private static final String monteXDescription = "Grid Chem Tinker Monte Application"; private static final String gaussianDescription = "Grid Chem Gaussian Application"; + private static final String gamessDescription = "A Gamess Application"; //App Module Id's private static String echoModuleId; @@ -104,6 +104,7 @@ public class RegisterSampleApplications { private static String mpiModuleId; private static String monteXModuleId; private static String gaussianModuleId; + private static String gamessModuleId; //App Interface Id's private static String echoInterfaceId = ""; @@ -118,6 +119,7 @@ public class RegisterSampleApplications { private static String trinityInterfaceId = ""; private static String wrfInterfaceId; private static String phastaInterfaceId; + private static String gamessInterfaceId; public RegisterSampleApplications(Airavata.Client airavataClient) { this.airavataClient = airavataClient; @@ -139,13 +141,13 @@ public class RegisterSampleApplications { // registerSampleApplications.registerGatewayResourceProfile(); //Register all application modules -// registerSampleApplications.registerAppModules(); + registerSampleApplications.registerAppModules(); //Register all application deployments -// registerSampleApplications.registerAppDeployments(); + registerSampleApplications.registerAppDeployments(); //Register all application interfaces -// registerSampleApplications.registerAppInterfaces(); + registerSampleApplications.registerAppInterfaces(); //write output into propertiesFile // registerSampleApplications.writeIdPropertyFile(); @@ -309,6 +311,13 @@ public class RegisterSampleApplications { gaussianModuleId = airavataClient.registerApplicationModule( RegisterSampleApplicationsUtils.createApplicationModule( gaussianName, "1.0", gaussianDescription)); + //Register GAMESS + gamessModuleId = airavataClient.registerApplicationModule( + RegisterSampleApplicationsUtils.createApplicationModule( + gamessName, "17May13", gamessDescription)); + System.out.println("Gamess Module Id " + gamessModuleId); + + } catch (TException e) { e.printStackTrace(); } @@ -337,7 +346,6 @@ public class RegisterSampleApplications { public void registerAppInterfaces() { System.out.println("\n #### Registering Application Interfaces #### \n"); -// registerGromaxWorkflowInterfaces(); //Registering local Echo // registerLocalEchoInterface(); @@ -362,6 +370,8 @@ public class RegisterSampleApplications { //Registering Lammps registerLammpsInterface(); + //Registrting Gamess + registerGamessInterface(); //Registering NWChem registerNWChemInterface(); @@ -378,140 +388,38 @@ public class RegisterSampleApplications { } - public void registerGromaxWorkflowInterfaces() { + public void registerGamessInterface() { try { - System.out.println("#### Registering Gromax Interface #### \n"); + System.out.println("#### Registering Gamess Interface #### \n"); List<String> appModules = new ArrayList<String>(); - appModules.add(gromacsModuleId); + appModules.add(gamessDescription); List<InputDataObjectType> applicationInputs = new ArrayList<InputDataObjectType>(); - applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("s_struct", "", - DataType.URI, null, 1, false, "Starting Structure File", null)); - + applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("gams_input", "", + DataType.URI, null, 1, ValidityType.REQUIRED, CommandLineType.EXCLUSIVE, false, "Gamess Input file", null)); + applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("EXT_FILE", "", + DataType.URI, null, 1, ValidityType.OPTIONAL, CommandLineType.INCLUSIVE, false, "Gamess EXT file", null)); List<OutputDataObjectType> applicationOutputs = new ArrayList<OutputDataObjectType>(); - applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("ffcomplient_struct", - "", DataType.URI)); - applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("topology", - "", DataType.URI)); - - gromacsInterfaceId = airavataClient.registerApplicationInterface( - RegisterSampleApplicationsUtils.createApplicationInterfaceDescription("pb2gmx", "pb2gmx", - appModules, applicationInputs, applicationOutputs)); - - - applicationInputs.clear(); - applicationInputs = new ArrayList<InputDataObjectType>(); - applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("ffcomplient_struct", "", - DataType.URI, null, 1, false, "FFComplient Structure File", null)); - applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("topology", "", - DataType.URI, null, 2, false, "Topology File", null)); - applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("control_param_emv", "", - DataType.URI, null, 3, false, "Controlled parameters array of EM Vacuum", null)); - - - applicationOutputs.clear(); - applicationOutputs = new ArrayList<OutputDataObjectType>(); - applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("energy_min_struct", - "", DataType.URI)); - - gromacsInterfaceId = airavataClient.registerApplicationInterface( - RegisterSampleApplicationsUtils.createApplicationInterfaceDescription("simulation1", "simulation1", - appModules, applicationInputs, applicationOutputs)); - - applicationInputs.clear(); - applicationInputs = new ArrayList<InputDataObjectType>(); - applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("energy_min_struct", "", - DataType.URI, null, 1, false, "Energy Minimized Structure File", null)); - - applicationOutputs.clear(); - applicationOutputs = new ArrayList<OutputDataObjectType>(); - applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("struct_with_pbc", - "", DataType.URI)); - - gromacsInterfaceId = airavataClient.registerApplicationInterface( - RegisterSampleApplicationsUtils.createApplicationInterfaceDescription("editconf", "Edit configuration", + applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("gams_output", + "", DataType.URI, ValidityType.REQUIRED, CommandLineType.EXCLUSIVE)); + applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("dat_file", + "", DataType.URI, ValidityType.REQUIRED, CommandLineType.INCLUSIVE)); + applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("trj_file", + "", DataType.URI, ValidityType.OPTIONAL, CommandLineType.INCLUSIVE)); + applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("rst_file", + "", DataType.URI, ValidityType.OPTIONAL, CommandLineType.INCLUSIVE)); + applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("f10_file", + "", DataType.URI, ValidityType.OPTIONAL, CommandLineType.INCLUSIVE)); + + + gamessInterfaceId = airavataClient.registerApplicationInterface( + RegisterSampleApplicationsUtils.createApplicationInterfaceDescription("gamess", "gamess", appModules, applicationInputs, applicationOutputs)); - - applicationInputs.clear(); - applicationInputs = new ArrayList<InputDataObjectType>(); - applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("struct_with_pbc", "", - DataType.URI, null, 1, false, "Structure with PBC File", null)); - applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("solvent_struct", "", - DataType.URI, null, 2, false, "Solvent Structure File", null)); - applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("topology", "", - DataType.URI, null, 3, false, "Topology File", null)); - - applicationOutputs.clear(); - applicationOutputs = new ArrayList<OutputDataObjectType>(); - applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("struct_with_water", - "", DataType.URI)); - applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("topology_with_water", - "", DataType.URI)); - - gromacsInterfaceId = airavataClient.registerApplicationInterface( - RegisterSampleApplicationsUtils.createApplicationInterfaceDescription("genbox", "genbox", - appModules, applicationInputs, applicationOutputs)); - - applicationInputs.clear(); - applicationInputs = new ArrayList<InputDataObjectType>(); - applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("struct_with_water", "", - DataType.URI, null, 1, false, "Structure with water File", null)); - applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("topology_with_water", "", - DataType.URI, null, 2, false, "Topology including water File", null)); - applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("control_param_emv", "", - DataType.URI, null, 3, false, "Controlled parameters array of EM Vacuum", null)); - - applicationOutputs.clear(); - applicationOutputs = new ArrayList<OutputDataObjectType>(); - applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("struct_topoogy", - "", DataType.URI)); - - gromacsInterfaceId = airavataClient.registerApplicationInterface( - RegisterSampleApplicationsUtils.createApplicationInterfaceDescription("grompp", "grompp", - appModules, applicationInputs, applicationOutputs)); - - applicationInputs.clear(); - applicationInputs = new ArrayList<InputDataObjectType>(); - applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("struct_topoogy", "", - DataType.URI, null, 1, false, "Structure and Topology File", null)); - applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("topology_with_water", "", - DataType.URI, null, 2, false, "Topology including water File", null)); - - applicationOutputs.clear(); - applicationOutputs = new ArrayList<OutputDataObjectType>(); - applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("sys_topoogy", - "", DataType.URI)); - - applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("sys_config", - "", DataType.URI)); - - gromacsInterfaceId = airavataClient.registerApplicationInterface( - RegisterSampleApplicationsUtils.createApplicationInterfaceDescription("genion", "grompp", - appModules, applicationInputs, applicationOutputs)); - - applicationInputs.clear(); - applicationInputs = new ArrayList<InputDataObjectType>(); - applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("sys_topoogy", "", - DataType.URI, null, 1, false, "Structure and Topology File", null)); - applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("sys_config", "", - DataType.URI, null, 2, false, "Topology including water File", null)); - applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("control_param_ems", "", - DataType.URI, null, 3, false, "Controlled parameters array of EM Solvent", null)); - - applicationOutputs.clear(); - applicationOutputs = new ArrayList<OutputDataObjectType>(); - applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("energymin_sys", - "", DataType.URI)); - - gromacsInterfaceId = airavataClient.registerApplicationInterface( - RegisterSampleApplicationsUtils.createApplicationInterfaceDescription("simulation2", "simulation2", - appModules, applicationInputs, applicationOutputs)); - - System.out.println("Gromax Application Interface Id " + echoInterfaceId); + System.out.println("GAMESS Application Interface Id " + gamessModuleId); } catch (TException e) { e.printStackTrace(); @@ -526,13 +434,13 @@ public class RegisterSampleApplications { appModules.add(echoModuleId); InputDataObjectType input1 = RegisterSampleApplicationsUtils.createAppInput("echo_input", "echo_output=Hello World", - DataType.STRING, null, 1, false, "A test string to Echo", null); + DataType.STRING, null, 1,null, null, false, "A test string to Echo", null); List<InputDataObjectType> applicationInputs = new ArrayList<InputDataObjectType>(); applicationInputs.add(input1); OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("echo_output", - "", DataType.STRING); + "", DataType.STRING, null, null); List<OutputDataObjectType> applicationOutputs = new ArrayList<OutputDataObjectType>(); applicationOutputs.add(output1); @@ -556,20 +464,20 @@ public class RegisterSampleApplications { InputDataObjectType input1 = RegisterSampleApplicationsUtils.createAppInput("Input_to_Echo", "", - DataType.STRING, null, 1, false, "A test string to Echo", null); + DataType.STRING, null, 1, null, null,false, "A test string to Echo", null); InputDataObjectType input2 = RegisterSampleApplicationsUtils.createAppInput("Input_to_Echo2", "", - DataType.URI, null, 2, false, "A sample input remote file", null); + DataType.URI, null, 2, null, null,false, "A sample input remote file", null); InputDataObjectType input3 = RegisterSampleApplicationsUtils.createAppInput("Input_to_Echo3", "file:///tmp/test.txt", - DataType.URI, null, 3, false, "A sample input local file", null); + DataType.URI, null, 3,null, null, false, "A sample input local file", null); List<InputDataObjectType> applicationInputs = new ArrayList<InputDataObjectType>(); applicationInputs.add(input1); applicationInputs.add(input2); applicationInputs.add(input3); OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("Echoed_Output", - "", DataType.STRING); + "", DataType.STRING, null, null); List<OutputDataObjectType> applicationOutputs = new ArrayList<OutputDataObjectType>(); applicationOutputs.add(output1); @@ -594,13 +502,13 @@ public class RegisterSampleApplications { appModules.add(mpiModuleId); InputDataObjectType input1 = RegisterSampleApplicationsUtils.createAppInput("Sample_Input", "", - DataType.STRING, null, 1, false, "An optional MPI source file", null); + DataType.STRING, null, 1,null, null, false, "An optional MPI source file", null); List<InputDataObjectType> applicationInputs = new ArrayList<InputDataObjectType>(); applicationInputs.add(input1); OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("Sample_Output", - "", DataType.STRING); + "", DataType.STRING, null, null); List<OutputDataObjectType> applicationOutputs = new ArrayList<OutputDataObjectType>(); applicationOutputs.add(output1); @@ -625,23 +533,23 @@ public class RegisterSampleApplications { appModules.add(amberModuleId); InputDataObjectType input1 = RegisterSampleApplicationsUtils.createAppInput("Heat_Restart_File", null, - DataType.URI, null, 1, false, "Heating up the system equilibration stage - 02_Heat.rst", null); + DataType.URI, null, 1, null, null,false, "Heating up the system equilibration stage - 02_Heat.rst", null); InputDataObjectType input2 = RegisterSampleApplicationsUtils.createAppInput("Production_Control_File", null, - DataType.URI, null, 2, false, "Constant pressure and temperature for production stage - 03_Prod.in", null); + DataType.URI, null, 2,null, null, false, "Constant pressure and temperature for production stage - 03_Prod.in", null); InputDataObjectType input3 = RegisterSampleApplicationsUtils.createAppInput("Parameter_Topology_File", null, - DataType.URI, null, 3, false, "Parameter and Topology coordinates - prmtop", null); + DataType.URI, null, 3,null, null, false, "Parameter and Topology coordinates - prmtop", null); List<InputDataObjectType> applicationInputs = new ArrayList<InputDataObjectType>(); applicationInputs.add(input1); applicationInputs.add(input2); applicationInputs.add(input3); - OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("AMBER_Execution_Summary",null,DataType.URI); - OutputDataObjectType output2 = RegisterSampleApplicationsUtils.createAppOutput("AMBER_Execution_log",null,DataType.URI); - OutputDataObjectType output3 = RegisterSampleApplicationsUtils.createAppOutput("AMBER_Trajectory_file",null,DataType.URI); - OutputDataObjectType output4 = RegisterSampleApplicationsUtils.createAppOutput("AMBER_Restart_file",null,DataType.URI); + OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("AMBER_Execution_Summary",null,DataType.URI, null, null); + OutputDataObjectType output2 = RegisterSampleApplicationsUtils.createAppOutput("AMBER_Execution_log",null,DataType.URI, null, null); + OutputDataObjectType output3 = RegisterSampleApplicationsUtils.createAppOutput("AMBER_Trajectory_file",null,DataType.URI, null, null); + OutputDataObjectType output4 = RegisterSampleApplicationsUtils.createAppOutput("AMBER_Restart_file",null,DataType.URI, null, null); List<OutputDataObjectType> applicationOutputs = new ArrayList<OutputDataObjectType>(); applicationOutputs.add(output1); @@ -667,13 +575,13 @@ public class RegisterSampleApplications { appModules.add(autoDockModuleId); InputDataObjectType input1 = RegisterSampleApplicationsUtils.createAppInput("Heat_Restart_File", null, - DataType.URI, null, 1, false, "Heating up the system equilibration stage", null); + DataType.URI, null, 1,null, null, false, "Heating up the system equilibration stage", null); InputDataObjectType input2 = RegisterSampleApplicationsUtils.createAppInput("Production_Control_File", null, - DataType.URI, null, 2, false, "Constant pressure and temperature for production stage", null); + DataType.URI, null, 2,null, null, false, "Constant pressure and temperature for production stage", null); InputDataObjectType input3 = RegisterSampleApplicationsUtils.createAppInput("Parameter_Topology_File", null, - DataType.URI, null, 3, false, "Parameter and Topology coordinates", null); + DataType.URI, null, 3,null, null, false, "Parameter and Topology coordinates", null); List<InputDataObjectType> applicationInputs = new ArrayList<InputDataObjectType>(); applicationInputs.add(input1); @@ -681,7 +589,7 @@ public class RegisterSampleApplications { applicationInputs.add(input3); OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("Echoed_Output", - "", DataType.STRING); + "", DataType.STRING, null, null); List<OutputDataObjectType> applicationOutputs = new ArrayList<OutputDataObjectType>(); applicationOutputs.add(output1); @@ -704,17 +612,17 @@ public class RegisterSampleApplications { appModules.add(espressoModuleId); InputDataObjectType input1 = RegisterSampleApplicationsUtils.createAppInput("AI_Primitive_Cell", null, - DataType.URI, null, 1, false, "AI_Metal_Input_File - Al.sample.in", null); + DataType.URI, null, 1, null, null,false, "AI_Metal_Input_File - Al.sample.in", null); InputDataObjectType input2 = RegisterSampleApplicationsUtils.createAppInput("AI_Pseudopotential_File", null, - DataType.URI, null, 2, false, "Constant pressure and temperature for production stage - Al.pz-vbc.UPF", null); + DataType.URI, null, 2, null, null,false, "Constant pressure and temperature for production stage - Al.pz-vbc.UPF", null); List<InputDataObjectType> applicationInputs = new ArrayList<InputDataObjectType>(); applicationInputs.add(input1); applicationInputs.add(input2); - OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("ESPRESSO_Execution_Log",null,DataType.URI); - OutputDataObjectType output2 = RegisterSampleApplicationsUtils.createAppOutput("ESPRESSO_WFC_Binary_file",null,DataType.URI); + OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("ESPRESSO_Execution_Log",null,DataType.URI, null, null); + OutputDataObjectType output2 = RegisterSampleApplicationsUtils.createAppOutput("ESPRESSO_WFC_Binary_file",null,DataType.URI, null, null); List<OutputDataObjectType> applicationOutputs = new ArrayList<OutputDataObjectType>(); applicationOutputs.add(output1); @@ -738,18 +646,18 @@ public class RegisterSampleApplications { appModules.add(gromacsModuleId); InputDataObjectType input1 = RegisterSampleApplicationsUtils.createAppInput("Portable_Input_Binary_File", null, - DataType.URI, null, 1, false, "Coordinates velocities, molecular topology and simulation parameters - pdb1y6l-EM-vacuum.tpr", null); + DataType.URI, null, 1, null, null, false, "Coordinates velocities, molecular topology and simulation parameters - pdb1y6l-EM-vacuum.tpr", null); InputDataObjectType input2 = RegisterSampleApplicationsUtils.createAppInput("GROMOS_Coordinate_File", null, - DataType.URI, null, 2, false, "Trajectory Coordinates Molecular Structure in Gromos87 format - pdb1y6l-EM-vacuum.gro", null); + DataType.URI, null, 2, null, null,false, "Trajectory Coordinates Molecular Structure in Gromos87 format - pdb1y6l-EM-vacuum.gro", null); List<InputDataObjectType> applicationInputs = new ArrayList<InputDataObjectType>(); applicationInputs.add(input1); applicationInputs.add(input2); - OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("GROMACS_Execution_Log",null,DataType.URI); - OutputDataObjectType output2 = RegisterSampleApplicationsUtils.createAppOutput("Full_Precision_Trajectory_file",null,DataType.URI); - OutputDataObjectType output3 = RegisterSampleApplicationsUtils.createAppOutput("Portable_Energy_file",null,DataType.URI); + OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("GROMACS_Execution_Log",null,DataType.URI, null, null); + OutputDataObjectType output2 = RegisterSampleApplicationsUtils.createAppOutput("Full_Precision_Trajectory_file",null,DataType.URI, null, null); + OutputDataObjectType output3 = RegisterSampleApplicationsUtils.createAppOutput("Portable_Energy_file",null,DataType.URI, null, null); List<OutputDataObjectType> applicationOutputs = new ArrayList<OutputDataObjectType>(); applicationOutputs.add(output1); @@ -774,12 +682,12 @@ public class RegisterSampleApplications { appModules.add(lammpsModuleId); InputDataObjectType input1 = RegisterSampleApplicationsUtils.createAppInput("Friction_Simulation_Input", null, - DataType.URI, null, 1, false, "Friction Simulation Input - in.friction", null); + DataType.URI, null, 1,null, null, false, "Friction Simulation Input - in.friction", null); List<InputDataObjectType> applicationInputs = new ArrayList<InputDataObjectType>(); applicationInputs.add(input1); - OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("LAMMPS_Simulation_Log",null,DataType.URI); + OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("LAMMPS_Simulation_Log",null,DataType.URI, null, null); List<OutputDataObjectType> applicationOutputs = new ArrayList<OutputDataObjectType>(); applicationOutputs.add(output1); @@ -802,12 +710,12 @@ public class RegisterSampleApplications { appModules.add(nwChemModuleId); InputDataObjectType input1 = RegisterSampleApplicationsUtils.createAppInput("Water_Molecule_Input", null, - DataType.URI, null, 1, false, "Water Molecule Input File - water.nw", null); + DataType.URI, null, 1,null, null, false, "Water Molecule Input File - water.nw", null); List<InputDataObjectType> applicationInputs = new ArrayList<InputDataObjectType>(); applicationInputs.add(input1); - OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("NWChem_Execution_Log",null,DataType.URI); + OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("NWChem_Execution_Log",null,DataType.URI, null, null); List<OutputDataObjectType> applicationOutputs = new ArrayList<OutputDataObjectType>(); applicationOutputs.add(output1); @@ -831,17 +739,17 @@ public class RegisterSampleApplications { appModules.add(trinityModuleId); InputDataObjectType input1 = RegisterSampleApplicationsUtils.createAppInput("RNA_Seq_Left_Input", null, - DataType.URI, null, 1, false, "RNA-Seq Left Library - reads.left.fq", null); + DataType.URI, null, 1,null, null, false, "RNA-Seq Left Library - reads.left.fq", null); InputDataObjectType input2 = RegisterSampleApplicationsUtils.createAppInput("RNA_Seq_Right_Input", null, - DataType.URI, null, 2, false, "RNA-Seq Right Library - reads.right.fq", null); + DataType.URI, null, 2, null, null,false, "RNA-Seq Right Library - reads.right.fq", null); List<InputDataObjectType> applicationInputs = new ArrayList<InputDataObjectType>(); applicationInputs.add(input1); applicationInputs.add(input2); - OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("Trinity_Execution_Log",null,DataType.URI); - OutputDataObjectType output2 = RegisterSampleApplicationsUtils.createAppOutput("Trinity_FASTA_File",null,DataType.URI); + OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("Trinity_Execution_Log",null,DataType.URI, null, null); + OutputDataObjectType output2 = RegisterSampleApplicationsUtils.createAppOutput("Trinity_FASTA_File",null,DataType.URI, null, null); List<OutputDataObjectType> applicationOutputs = new ArrayList<OutputDataObjectType>(); applicationOutputs.add(output1); @@ -866,13 +774,13 @@ public class RegisterSampleApplications { appModules.add(wrfModuleId); InputDataObjectType input1 = RegisterSampleApplicationsUtils.createAppInput("Config_Namelist_File", null, - DataType.URI, null, 1, false, "Namelist Configuration File - namelist.input", null); + DataType.URI, null, 1,null, null, false, "Namelist Configuration File - namelist.input", null); InputDataObjectType input2 = RegisterSampleApplicationsUtils.createAppInput("WRF_Initial_Conditions", null, - DataType.URI, null, 2, false, "Initial Conditions File - wrfinput_d01", null); + DataType.URI, null, 2, null, null,false, "Initial Conditions File - wrfinput_d01", null); InputDataObjectType input3 = RegisterSampleApplicationsUtils.createAppInput("WRF_Boundary_File", null, - DataType.URI, null, 3, false, "Boundary Conditions File - wrfbdy_d01", null); + DataType.URI, null, 3,null, null, false, "Boundary Conditions File - wrfbdy_d01", null); List<InputDataObjectType> applicationInputs = new ArrayList<InputDataObjectType>(); applicationInputs.add(input1); @@ -880,10 +788,10 @@ public class RegisterSampleApplications { applicationInputs.add(input3); OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("WRF_Output", - "", DataType.URI); + "", DataType.URI, null, null); OutputDataObjectType output2 = RegisterSampleApplicationsUtils.createAppOutput("WRF_Execution_Log", - "", DataType.URI); + "", DataType.URI, null, null); List<OutputDataObjectType> applicationOutputs = new ArrayList<OutputDataObjectType>(); applicationOutputs.add(output1); @@ -907,21 +815,21 @@ public class RegisterSampleApplications { appModules.add(phastaModuleId); InputDataObjectType input1 = RegisterSampleApplicationsUtils.createAppInput("Parasolid_Geometric_Model", null, - DataType.URI, null, 1, false, "Parasolid geometric model - geom.xmt_txt", null); + DataType.URI, null, 1, null, null,false, "Parasolid geometric model - geom.xmt_txt", null); InputDataObjectType input2 = RegisterSampleApplicationsUtils.createAppInput("Problem_Definition", null, - DataType.URI, null, 2, false, "problem definition - geom.smd", null); + DataType.URI, null, 2,null, null, false, "problem definition - geom.smd", null); InputDataObjectType input3 = RegisterSampleApplicationsUtils.createAppInput("Mesh_Description_File", null, - DataType.URI, null, 3, false, "Mesh Description - geom.sms", null); + DataType.URI, null, 3, null, null,false, "Mesh Description - geom.sms", null); List<InputDataObjectType> applicationInputs = new ArrayList<InputDataObjectType>(); applicationInputs.add(input1); applicationInputs.add(input2); applicationInputs.add(input3); - OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("PHASTA_Execution_Log",null,DataType.URI); - OutputDataObjectType output2 = RegisterSampleApplicationsUtils.createAppOutput("PHASTA_Output_tar",null,DataType.URI); + OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("PHASTA_Execution_Log",null,DataType.URI, null, null); + OutputDataObjectType output2 = RegisterSampleApplicationsUtils.createAppOutput("PHASTA_Output_tar",null,DataType.URI, null, null); List<OutputDataObjectType> applicationOutputs = new ArrayList<OutputDataObjectType>(); applicationOutputs.add(output1); @@ -943,7 +851,7 @@ public class RegisterSampleApplications { //Register Echo String echoAppDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(echoModuleId, localhostId, - "/bin/echo", ApplicationParallelismType.SERIAL, echoDescription)); + "/bin/echo", ApplicationParallelismType.SERIAL, echoDescription, null)); System.out.println("Echo on localhost Id " + echoAppDeployId); @@ -960,13 +868,13 @@ public class RegisterSampleApplications { appModules.add(gaussianModuleId); InputDataObjectType input1 = RegisterSampleApplicationsUtils.createAppInput("MainInputFile", null, - DataType.URI, null, 1, false, "Gaussian main input file", null); + DataType.URI, null, 1,null, null, false, "Gaussian main input file", null); List<InputDataObjectType> applicationInputs = new ArrayList<InputDataObjectType>(); applicationInputs.add(input1); OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("gaussian.out", - "", DataType.URI); + "", DataType.URI, null, null); List<OutputDataObjectType> applicationOutputs = new ArrayList<OutputDataObjectType>(); applicationOutputs.add(output1); @@ -989,19 +897,19 @@ public class RegisterSampleApplications { appModules.add(monteXModuleId); InputDataObjectType input1 = RegisterSampleApplicationsUtils.createAppInput("xyzf", "O16.xyz", - DataType.STRING, null, 1, false, "Tinker monte input_1", null); + DataType.STRING, null, 1, null, null, false, "Tinker monte input_1", null); InputDataObjectType input2 = RegisterSampleApplicationsUtils.createAppInput("keyf", "O16.key", - DataType.STRING, "-k", 2, false, "Tinker monte input_2", null); + DataType.STRING, "-k", 2, null, null, false, "Tinker monte input_2", null); InputDataObjectType input3 = RegisterSampleApplicationsUtils.createAppInput("stps", "20000", - DataType.STRING, null, 3, false, "Tinker monte input_3", null); + DataType.STRING, null, 3, null, null,false, "Tinker monte input_3", null); InputDataObjectType input4 = RegisterSampleApplicationsUtils.createAppInput("Ctc", "C", - DataType.STRING, null, 4, false, "Tinker monte input_4", null); + DataType.STRING, null, 4,null, null, false, "Tinker monte input_4", null); InputDataObjectType input5 = RegisterSampleApplicationsUtils.createAppInput("stpsZ", "3.0", - DataType.STRING, null, 5, false, "Tinker monte input_5", null); + DataType.STRING, null, 5,null, null, false, "Tinker monte input_5", null); InputDataObjectType input6 = RegisterSampleApplicationsUtils.createAppInput("temp", "298", - DataType.STRING, null, 6, false, "Tinker monte input_6", null); + DataType.STRING, null, 6,null, null, false, "Tinker monte input_6", null); InputDataObjectType input7 = RegisterSampleApplicationsUtils.createAppInput("Rconv", "0.01", - DataType.STRING, null, 7, false, "Tinker monte input_7", null); + DataType.STRING, null, 7,null, null, false, "Tinker monte input_7", null); List<InputDataObjectType> applicationInputs = new ArrayList<InputDataObjectType>(); @@ -1014,7 +922,7 @@ public class RegisterSampleApplications { applicationInputs.add(input7); OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("Diskoutputfile_with_dir", - "", DataType.URI); + "", DataType.URI, null, null); List<OutputDataObjectType> applicationOutputs = new ArrayList<OutputDataObjectType>(); applicationOutputs.add(output1); @@ -1037,56 +945,56 @@ public class RegisterSampleApplications { //Register Echo String echoAppDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(echoModuleId, stampedeResourceId, - "/home1/01437/ogce/production/app_wrappers/echo_wrapper.sh", ApplicationParallelismType.SERIAL, echoDescription)); + "/home1/01437/ogce/production/app_wrappers/echo_wrapper.sh", ApplicationParallelismType.SERIAL, echoDescription, null)); System.out.println("Echo on stampede deployment Id " + echoAppDeployId); //Register Amber String amberAppDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(amberModuleId, stampedeResourceId, "/home1/01437/ogce/production/app_wrappers/amber_wrapper.sh", ApplicationParallelismType.MPI, - amberDescription)); + amberDescription, null)); System.out.println("Amber on stampede deployment Id " + amberAppDeployId); //Register ESPRESSO String espressoAppDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(espressoModuleId, stampedeResourceId, "/home1/01437/ogce/production/app_wrappers/espresso_wrapper.sh", ApplicationParallelismType.MPI, - espressoDescription)); + espressoDescription, null)); System.out.println("ESPRESSO on stampede deployment Id " + espressoAppDeployId); //Register GROMACS String gromacsAppDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(gromacsModuleId, stampedeResourceId, "/home1/01437/ogce/production/app_wrappers/gromacs_wrapper.sh", ApplicationParallelismType.MPI, - gromacsDescription)); + gromacsDescription, null)); System.out.println("GROMACS on stampede deployment Id " + gromacsAppDeployId); //Register LAMMPS String lammpsAppDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(lammpsModuleId, stampedeResourceId, "/home1/01437/ogce/production/app_wrappers/lammps_wrapper.sh", ApplicationParallelismType.MPI, - lammpsDescription)); + lammpsDescription, null)); System.out.println("LAMMPS on stampede deployment Id " + lammpsAppDeployId); //Register NWChem String nwChemAppDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(nwChemModuleId, stampedeResourceId, "/home1/01437/ogce/production/app_wrappers/nwchem_wrapper.sh", ApplicationParallelismType.MPI, - nwChemDescription)); + nwChemDescription, null)); System.out.println("NWChem on stampede deployment Id " + nwChemAppDeployId); //Register Trinity String trinityAppDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(trinityModuleId, stampedeResourceId, "/home1/01437/ogce/production/app_wrappers/trinity_wrapper.sh", ApplicationParallelismType.MPI, - trinityDescription)); + trinityDescription, null)); System.out.println("Trinity on stampede deployment Id " + trinityAppDeployId); //Register WRF String wrfAppDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(wrfModuleId, stampedeResourceId, "/home1/01437/ogce/production/app_wrappers/wrf_wrapper.sh", ApplicationParallelismType.MPI, - wrfDescription)); + wrfDescription, null)); System.out.println("WRF on stampede deployment Id " + wrfAppDeployId); } catch (TException e) { @@ -1101,38 +1009,47 @@ public class RegisterSampleApplications { //Register Echo String echoAppDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(echoModuleId, trestlesResourceId, - "/home/ogce/production/app_wrappers/echo_wrapper.sh", ApplicationParallelismType.SERIAL, echoDescription)); + "/home/ogce/production/app_wrappers/echo_wrapper.sh", ApplicationParallelismType.SERIAL, echoDescription, null)); System.out.println("Echo on trestles deployment Id " + echoAppDeployId); //Register Amber String amberAppDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(amberModuleId, trestlesResourceId, "/home/ogce/production/app_wrappers/amber_wrapper.sh", ApplicationParallelismType.MPI, - amberDescription)); + amberDescription, null)); System.out.println("Amber on trestles deployment Id " + amberAppDeployId); //Register GROMACS String gromacsAppDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(gromacsModuleId, trestlesResourceId, "/home/ogce/production/app_wrappers/gromacs_wrapper.sh", ApplicationParallelismType.MPI, - gromacsDescription)); + gromacsDescription, null)); System.out.println("GROMACS on trestles deployment Id " + gromacsAppDeployId); //Register LAMMPS String lammpsAppDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(lammpsModuleId, trestlesResourceId, "/home/ogce/production/app_wrappers/lammps_wrapper.sh", ApplicationParallelismType.MPI, - lammpsDescription)); + lammpsDescription, null)); System.out.println("LAMMPS on trestles deployment Id " + lammpsAppDeployId); + //Register GAMESS + List<String> moduleLoadCmd = new ArrayList<String>(); + moduleLoadCmd.add("module load gamess"); + String gamessAppDeployId = airavataClient.registerApplicationDeployment( + RegisterSampleApplicationsUtils.createApplicationDeployment(gamessModuleId, trestlesResourceId, + "/opt/gamess/rungms", ApplicationParallelismType.MPI, + gamessDescription, moduleLoadCmd)); + System.out.println("Gamess on trestles deployment Id " + gamessAppDeployId); + String monteXAppDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(monteXModuleId, trestlesResourceId, - "path/to/the/monte.x", ApplicationParallelismType.OPENMP, monteXDescription)); + "path/to/the/monte.x", ApplicationParallelismType.OPENMP, monteXDescription, null)); System.out.println("Tinker Monte on trestles deployment Id " + monteXAppDeployId); String gaussianAppDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(gaussianModuleId, trestlesResourceId, - "path/to/the/gaussian.sh", ApplicationParallelismType.OPENMP, gaussianDescription)); + "path/to/the/gaussian.sh", ApplicationParallelismType.OPENMP, gaussianDescription, null)); System.out.println("Gaussian on trestles deployment Id " + gaussianAppDeployId); } catch (TException e) { @@ -1147,21 +1064,21 @@ public class RegisterSampleApplications { //Register Echo String echoAppDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(echoModuleId, bigredResourceId, - "/N/u/cgateway/BigRed2/production/app_wrappers/echo_wrapper.sh", ApplicationParallelismType.SERIAL, echoDescription)); + "/N/u/cgateway/BigRed2/production/app_wrappers/echo_wrapper.sh", ApplicationParallelismType.SERIAL, echoDescription, null)); System.out.println("Echo on bigredII deployment Id " + echoAppDeployId); //Register Amber String amberAppDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(amberModuleId, bigredResourceId, "/N/u/cgateway/BigRed2/production/app_wrappers/amber_wrapper.sh", ApplicationParallelismType.MPI, - amberDescription)); + amberDescription, null)); System.out.println("Amber on bigredII deployment Id " + amberAppDeployId); //Register AutoDock String autoDockDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(autoDockModuleId, bigredResourceId, "/N/u/cgateway/BigRed2/production/app_wrappers/auto_dock_wrapper.sh", ApplicationParallelismType.MPI, - autoDockDescription)); + autoDockDescription, null)); System.out.println("AutoDock on bigredII deployment Id " + autoDockDeployId); // //Register GROMACS @@ -1190,13 +1107,13 @@ public class RegisterSampleApplications { //Register Echo String echoAppDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(echoModuleId, fsdResourceId, - "/bin/echo", ApplicationParallelismType.SERIAL, echoDescription)); + "/bin/echo", ApplicationParallelismType.SERIAL, echoDescription, null)); System.out.println("Echo on FSD deployment Id: " + echoAppDeployId); //Register MPI String mpiAppDeployId = airavataClient.registerApplicationDeployment( RegisterSampleApplicationsUtils.createApplicationDeployment(mpiModuleId, fsdResourceId, - "/home/bes/hellompi", ApplicationParallelismType.OPENMP_MPI, mpiDescription)); + "/home/bes/hellompi", ApplicationParallelismType.OPENMP_MPI, mpiDescription, null)); System.out.println("MPI on FSD deployment Id: " + mpiAppDeployId); } catch (TException e) {
http://git-wip-us.apache.org/repos/asf/airavata/blob/842004ee/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/tools/RegisterSampleApplicationsUtils.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/tools/RegisterSampleApplicationsUtils.java b/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/tools/RegisterSampleApplicationsUtils.java index 58ba387..83be356 100644 --- a/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/tools/RegisterSampleApplicationsUtils.java +++ b/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/tools/RegisterSampleApplicationsUtils.java @@ -24,10 +24,7 @@ package org.apache.airavata.client.tools; import org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription; import org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule; import org.apache.airavata.model.appcatalog.appdeployment.ApplicationParallelismType; -import org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription; -import org.apache.airavata.model.appcatalog.appinterface.DataType; -import org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType; -import org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType; +import org.apache.airavata.model.appcatalog.appinterface.*; import org.apache.airavata.model.appcatalog.computeresource.*; import org.apache.airavata.model.appcatalog.gatewayprofile.ComputeResourcePreference; @@ -55,9 +52,12 @@ public class RegisterSampleApplicationsUtils { return computeResourcePreference; } - public static ApplicationDeploymentDescription createApplicationDeployment( - String appModuleId, String computeResourceId, String executablePath, - ApplicationParallelismType parallelism, String appDeploymentDescription) { + public static ApplicationDeploymentDescription createApplicationDeployment(String appModuleId, + String computeResourceId, + String executablePath, + ApplicationParallelismType parallelism, + String appDeploymentDescription, + List<String> moduleLoadCmds) { ApplicationDeploymentDescription deployment = new ApplicationDeploymentDescription(); // deployment.setIsEmpty(false); deployment.setAppDeploymentDescription(appDeploymentDescription); @@ -65,6 +65,7 @@ public class RegisterSampleApplicationsUtils { deployment.setComputeHostId(computeResourceId); deployment.setExecutablePath(executablePath); deployment.setParallelism(parallelism); + deployment.setModuleLoadCmds(moduleLoadCmds); return deployment; } @@ -118,9 +119,16 @@ public class RegisterSampleApplicationsUtils { return resourceJobManager; } - public static InputDataObjectType createAppInput - (String inputName, String value, DataType type, - String applicationArgument, int order, boolean stdIn, String description, String metadata) { + public static InputDataObjectType createAppInput (String inputName, + String value, + DataType type, + String applicationArgument, + int order, + ValidityType validityType, + CommandLineType commandLineType, + boolean stdIn, + String description, + String metadata) { InputDataObjectType input = new InputDataObjectType(); // input.setIsEmpty(false); if (inputName != null) input.setName(inputName); @@ -128,18 +136,34 @@ public class RegisterSampleApplicationsUtils { if (type != null) input.setType(type); if (applicationArgument != null) input.setApplicationArgument(applicationArgument); input.setInputOrder(order); + if (validityType != null){ + input.setInputValid(validityType); + } + if (commandLineType != null){ + input.setAddedToCommandLine(commandLineType); + } if (description != null) input.setUserFriendlyDescription(description); input.setStandardInput(stdIn); if (metadata != null) input.setMetaData(metadata); return input; } - public static OutputDataObjectType createAppOutput(String inputName, String value, DataType type) { + public static OutputDataObjectType createAppOutput(String inputName, + String value, + DataType type, + ValidityType validityType, + CommandLineType commandLineType) { OutputDataObjectType outputDataObjectType = new OutputDataObjectType(); // outputDataObjectType.setIsEmpty(false); if (inputName != null) outputDataObjectType.setName(inputName); if (value != null) outputDataObjectType.setValue(value); if (type != null) outputDataObjectType.setType(type); + if (validityType != null){ + outputDataObjectType.setValidityType(validityType); + } + if (commandLineType != null){ + outputDataObjectType.setAddedToCommandLine(commandLineType); + } return outputDataObjectType; } http://git-wip-us.apache.org/repos/asf/airavata/blob/842004ee/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appinterface/OutputDataObjectType.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appinterface/OutputDataObjectType.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appinterface/OutputDataObjectType.java index 337f167..4197c30 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appinterface/OutputDataObjectType.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appinterface/OutputDataObjectType.java @@ -82,8 +82,9 @@ import org.slf4j.LoggerFactory; private static final org.apache.thrift.protocol.TField VALUE_FIELD_DESC = new org.apache.thrift.protocol.TField("value", org.apache.thrift.protocol.TType.STRING, (short)2); private static final org.apache.thrift.protocol.TField TYPE_FIELD_DESC = new org.apache.thrift.protocol.TField("type", org.apache.thrift.protocol.TType.I32, (short)3); private static final org.apache.thrift.protocol.TField VALIDITY_TYPE_FIELD_DESC = new org.apache.thrift.protocol.TField("validityType", org.apache.thrift.protocol.TType.I32, (short)4); - private static final org.apache.thrift.protocol.TField DATA_MOVEMENT_FIELD_DESC = new org.apache.thrift.protocol.TField("dataMovement", org.apache.thrift.protocol.TType.BOOL, (short)5); - private static final org.apache.thrift.protocol.TField DATA_NAME_LOCATION_FIELD_DESC = new org.apache.thrift.protocol.TField("dataNameLocation", org.apache.thrift.protocol.TType.STRING, (short)6); + private static final org.apache.thrift.protocol.TField ADDED_TO_COMMAND_LINE_FIELD_DESC = new org.apache.thrift.protocol.TField("addedToCommandLine", org.apache.thrift.protocol.TType.I32, (short)5); + private static final org.apache.thrift.protocol.TField DATA_MOVEMENT_FIELD_DESC = new org.apache.thrift.protocol.TField("dataMovement", org.apache.thrift.protocol.TType.BOOL, (short)6); + private static final org.apache.thrift.protocol.TField DATA_NAME_LOCATION_FIELD_DESC = new org.apache.thrift.protocol.TField("dataNameLocation", org.apache.thrift.protocol.TType.STRING, (short)7); private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>(); static { @@ -95,6 +96,7 @@ import org.slf4j.LoggerFactory; private String value; // optional private DataType type; // optional private ValidityType validityType; // optional + private CommandLineType addedToCommandLine; // optional private boolean dataMovement; // optional private String dataNameLocation; // optional @@ -112,8 +114,13 @@ import org.slf4j.LoggerFactory; * @see ValidityType */ VALIDITY_TYPE((short)4, "validityType"), - DATA_MOVEMENT((short)5, "dataMovement"), - DATA_NAME_LOCATION((short)6, "dataNameLocation"); + /** + * + * @see CommandLineType + */ + ADDED_TO_COMMAND_LINE((short)5, "addedToCommandLine"), + DATA_MOVEMENT((short)6, "dataMovement"), + DATA_NAME_LOCATION((short)7, "dataNameLocation"); private static final Map<String, _Fields> byName = new HashMap<String, _Fields>(); @@ -136,9 +143,11 @@ import org.slf4j.LoggerFactory; return TYPE; case 4: // VALIDITY_TYPE return VALIDITY_TYPE; - case 5: // DATA_MOVEMENT + case 5: // ADDED_TO_COMMAND_LINE + return ADDED_TO_COMMAND_LINE; + case 6: // DATA_MOVEMENT return DATA_MOVEMENT; - case 6: // DATA_NAME_LOCATION + case 7: // DATA_NAME_LOCATION return DATA_NAME_LOCATION; default: return null; @@ -182,7 +191,7 @@ import org.slf4j.LoggerFactory; // isset id assignments private static final int __DATAMOVEMENT_ISSET_ID = 0; private byte __isset_bitfield = 0; - private _Fields optionals[] = {_Fields.VALUE,_Fields.TYPE,_Fields.VALIDITY_TYPE,_Fields.DATA_MOVEMENT,_Fields.DATA_NAME_LOCATION}; + private _Fields optionals[] = {_Fields.VALUE,_Fields.TYPE,_Fields.VALIDITY_TYPE,_Fields.ADDED_TO_COMMAND_LINE,_Fields.DATA_MOVEMENT,_Fields.DATA_NAME_LOCATION}; public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap; static { Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class); @@ -194,6 +203,8 @@ import org.slf4j.LoggerFactory; new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, DataType.class))); tmpMap.put(_Fields.VALIDITY_TYPE, new org.apache.thrift.meta_data.FieldMetaData("validityType", org.apache.thrift.TFieldRequirementType.OPTIONAL, new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, ValidityType.class))); + tmpMap.put(_Fields.ADDED_TO_COMMAND_LINE, new org.apache.thrift.meta_data.FieldMetaData("addedToCommandLine", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, CommandLineType.class))); tmpMap.put(_Fields.DATA_MOVEMENT, new org.apache.thrift.meta_data.FieldMetaData("dataMovement", org.apache.thrift.TFieldRequirementType.OPTIONAL, new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL))); tmpMap.put(_Fields.DATA_NAME_LOCATION, new org.apache.thrift.meta_data.FieldMetaData("dataNameLocation", org.apache.thrift.TFieldRequirementType.OPTIONAL, @@ -229,6 +240,9 @@ import org.slf4j.LoggerFactory; if (other.isSetValidityType()) { this.validityType = other.validityType; } + if (other.isSetAddedToCommandLine()) { + this.addedToCommandLine = other.addedToCommandLine; + } this.dataMovement = other.dataMovement; if (other.isSetDataNameLocation()) { this.dataNameLocation = other.dataNameLocation; @@ -245,6 +259,7 @@ import org.slf4j.LoggerFactory; this.value = null; this.type = null; this.validityType = null; + this.addedToCommandLine = null; setDataMovementIsSet(false); this.dataMovement = false; this.dataNameLocation = null; @@ -358,6 +373,37 @@ import org.slf4j.LoggerFactory; } } + /** + * + * @see CommandLineType + */ + public CommandLineType getAddedToCommandLine() { + return this.addedToCommandLine; + } + + /** + * + * @see CommandLineType + */ + public void setAddedToCommandLine(CommandLineType addedToCommandLine) { + this.addedToCommandLine = addedToCommandLine; + } + + public void unsetAddedToCommandLine() { + this.addedToCommandLine = null; + } + + /** Returns true if field addedToCommandLine is set (has been assigned a value) and false otherwise */ + public boolean isSetAddedToCommandLine() { + return this.addedToCommandLine != null; + } + + public void setAddedToCommandLineIsSet(boolean value) { + if (!value) { + this.addedToCommandLine = null; + } + } + public boolean isDataMovement() { return this.dataMovement; } @@ -437,6 +483,14 @@ import org.slf4j.LoggerFactory; } break; + case ADDED_TO_COMMAND_LINE: + if (value == null) { + unsetAddedToCommandLine(); + } else { + setAddedToCommandLine((CommandLineType)value); + } + break; + case DATA_MOVEMENT: if (value == null) { unsetDataMovement(); @@ -470,6 +524,9 @@ import org.slf4j.LoggerFactory; case VALIDITY_TYPE: return getValidityType(); + case ADDED_TO_COMMAND_LINE: + return getAddedToCommandLine(); + case DATA_MOVEMENT: return Boolean.valueOf(isDataMovement()); @@ -495,6 +552,8 @@ import org.slf4j.LoggerFactory; return isSetType(); case VALIDITY_TYPE: return isSetValidityType(); + case ADDED_TO_COMMAND_LINE: + return isSetAddedToCommandLine(); case DATA_MOVEMENT: return isSetDataMovement(); case DATA_NAME_LOCATION: @@ -552,6 +611,15 @@ import org.slf4j.LoggerFactory; return false; } + boolean this_present_addedToCommandLine = true && this.isSetAddedToCommandLine(); + boolean that_present_addedToCommandLine = true && that.isSetAddedToCommandLine(); + if (this_present_addedToCommandLine || that_present_addedToCommandLine) { + if (!(this_present_addedToCommandLine && that_present_addedToCommandLine)) + return false; + if (!this.addedToCommandLine.equals(that.addedToCommandLine)) + return false; + } + boolean this_present_dataMovement = true && this.isSetDataMovement(); boolean that_present_dataMovement = true && that.isSetDataMovement(); if (this_present_dataMovement || that_present_dataMovement) { @@ -626,6 +694,16 @@ import org.slf4j.LoggerFactory; return lastComparison; } } + lastComparison = Boolean.valueOf(isSetAddedToCommandLine()).compareTo(other.isSetAddedToCommandLine()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetAddedToCommandLine()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.addedToCommandLine, other.addedToCommandLine); + if (lastComparison != 0) { + return lastComparison; + } + } lastComparison = Boolean.valueOf(isSetDataMovement()).compareTo(other.isSetDataMovement()); if (lastComparison != 0) { return lastComparison; @@ -703,6 +781,16 @@ import org.slf4j.LoggerFactory; } first = false; } + if (isSetAddedToCommandLine()) { + if (!first) sb.append(", "); + sb.append("addedToCommandLine:"); + if (this.addedToCommandLine == null) { + sb.append("null"); + } else { + sb.append(this.addedToCommandLine); + } + first = false; + } if (isSetDataMovement()) { if (!first) sb.append(", "); sb.append("dataMovement:"); @@ -800,7 +888,15 @@ import org.slf4j.LoggerFactory; org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } break; - case 5: // DATA_MOVEMENT + case 5: // ADDED_TO_COMMAND_LINE + if (schemeField.type == org.apache.thrift.protocol.TType.I32) { + struct.addedToCommandLine = CommandLineType.findByValue(iprot.readI32()); + struct.setAddedToCommandLineIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 6: // DATA_MOVEMENT if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) { struct.dataMovement = iprot.readBool(); struct.setDataMovementIsSet(true); @@ -808,7 +904,7 @@ import org.slf4j.LoggerFactory; org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } break; - case 6: // DATA_NAME_LOCATION + case 7: // DATA_NAME_LOCATION if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { struct.dataNameLocation = iprot.readString(); struct.setDataNameLocationIsSet(true); @@ -855,6 +951,13 @@ import org.slf4j.LoggerFactory; oprot.writeFieldEnd(); } } + if (struct.addedToCommandLine != null) { + if (struct.isSetAddedToCommandLine()) { + oprot.writeFieldBegin(ADDED_TO_COMMAND_LINE_FIELD_DESC); + oprot.writeI32(struct.addedToCommandLine.getValue()); + oprot.writeFieldEnd(); + } + } if (struct.isSetDataMovement()) { oprot.writeFieldBegin(DATA_MOVEMENT_FIELD_DESC); oprot.writeBool(struct.dataMovement); @@ -895,13 +998,16 @@ import org.slf4j.LoggerFactory; if (struct.isSetValidityType()) { optionals.set(2); } - if (struct.isSetDataMovement()) { + if (struct.isSetAddedToCommandLine()) { optionals.set(3); } - if (struct.isSetDataNameLocation()) { + if (struct.isSetDataMovement()) { optionals.set(4); } - oprot.writeBitSet(optionals, 5); + if (struct.isSetDataNameLocation()) { + optionals.set(5); + } + oprot.writeBitSet(optionals, 6); if (struct.isSetValue()) { oprot.writeString(struct.value); } @@ -911,6 +1017,9 @@ import org.slf4j.LoggerFactory; if (struct.isSetValidityType()) { oprot.writeI32(struct.validityType.getValue()); } + if (struct.isSetAddedToCommandLine()) { + oprot.writeI32(struct.addedToCommandLine.getValue()); + } if (struct.isSetDataMovement()) { oprot.writeBool(struct.dataMovement); } @@ -924,7 +1033,7 @@ import org.slf4j.LoggerFactory; TTupleProtocol iprot = (TTupleProtocol) prot; struct.name = iprot.readString(); struct.setNameIsSet(true); - BitSet incoming = iprot.readBitSet(5); + BitSet incoming = iprot.readBitSet(6); if (incoming.get(0)) { struct.value = iprot.readString(); struct.setValueIsSet(true); @@ -938,10 +1047,14 @@ import org.slf4j.LoggerFactory; struct.setValidityTypeIsSet(true); } if (incoming.get(3)) { + struct.addedToCommandLine = CommandLineType.findByValue(iprot.readI32()); + struct.setAddedToCommandLineIsSet(true); + } + if (incoming.get(4)) { struct.dataMovement = iprot.readBool(); struct.setDataMovementIsSet(true); } - if (incoming.get(4)) { + if (incoming.get(5)) { struct.dataNameLocation = iprot.readString(); struct.setDataNameLocationIsSet(true); } http://git-wip-us.apache.org/repos/asf/airavata/blob/842004ee/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java index 1c43948..f4ab850 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java @@ -64,6 +64,7 @@ import org.slf4j.LoggerFactory; private static final org.apache.thrift.protocol.TField MAX_NODES_FIELD_DESC = new org.apache.thrift.protocol.TField("maxNodes", org.apache.thrift.protocol.TType.I32, (short)4); private static final org.apache.thrift.protocol.TField MAX_PROCESSORS_FIELD_DESC = new org.apache.thrift.protocol.TField("maxProcessors", org.apache.thrift.protocol.TType.I32, (short)5); private static final org.apache.thrift.protocol.TField MAX_JOBS_IN_QUEUE_FIELD_DESC = new org.apache.thrift.protocol.TField("maxJobsInQueue", org.apache.thrift.protocol.TType.I32, (short)6); + private static final org.apache.thrift.protocol.TField MAX_MEMORY_FIELD_DESC = new org.apache.thrift.protocol.TField("maxMemory", org.apache.thrift.protocol.TType.I32, (short)7); private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>(); static { @@ -77,6 +78,7 @@ import org.slf4j.LoggerFactory; private int maxNodes; // optional private int maxProcessors; // optional private int maxJobsInQueue; // optional + private int maxMemory; // optional /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */ @SuppressWarnings("all") public enum _Fields implements org.apache.thrift.TFieldIdEnum { @@ -85,7 +87,8 @@ import org.slf4j.LoggerFactory; MAX_RUN_TIME((short)3, "maxRunTime"), MAX_NODES((short)4, "maxNodes"), MAX_PROCESSORS((short)5, "maxProcessors"), - MAX_JOBS_IN_QUEUE((short)6, "maxJobsInQueue"); + MAX_JOBS_IN_QUEUE((short)6, "maxJobsInQueue"), + MAX_MEMORY((short)7, "maxMemory"); private static final Map<String, _Fields> byName = new HashMap<String, _Fields>(); @@ -112,6 +115,8 @@ import org.slf4j.LoggerFactory; return MAX_PROCESSORS; case 6: // MAX_JOBS_IN_QUEUE return MAX_JOBS_IN_QUEUE; + case 7: // MAX_MEMORY + return MAX_MEMORY; default: return null; } @@ -156,8 +161,9 @@ import org.slf4j.LoggerFactory; private static final int __MAXNODES_ISSET_ID = 1; private static final int __MAXPROCESSORS_ISSET_ID = 2; private static final int __MAXJOBSINQUEUE_ISSET_ID = 3; + private static final int __MAXMEMORY_ISSET_ID = 4; private byte __isset_bitfield = 0; - private _Fields optionals[] = {_Fields.QUEUE_DESCRIPTION,_Fields.MAX_RUN_TIME,_Fields.MAX_NODES,_Fields.MAX_PROCESSORS,_Fields.MAX_JOBS_IN_QUEUE}; + private _Fields optionals[] = {_Fields.QUEUE_DESCRIPTION,_Fields.MAX_RUN_TIME,_Fields.MAX_NODES,_Fields.MAX_PROCESSORS,_Fields.MAX_JOBS_IN_QUEUE,_Fields.MAX_MEMORY}; public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap; static { Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class); @@ -173,6 +179,8 @@ import org.slf4j.LoggerFactory; new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32))); tmpMap.put(_Fields.MAX_JOBS_IN_QUEUE, new org.apache.thrift.meta_data.FieldMetaData("maxJobsInQueue", org.apache.thrift.TFieldRequirementType.OPTIONAL, new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32))); + tmpMap.put(_Fields.MAX_MEMORY, new org.apache.thrift.meta_data.FieldMetaData("maxMemory", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32))); metaDataMap = Collections.unmodifiableMap(tmpMap); org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(BatchQueue.class, metaDataMap); } @@ -202,6 +210,7 @@ import org.slf4j.LoggerFactory; this.maxNodes = other.maxNodes; this.maxProcessors = other.maxProcessors; this.maxJobsInQueue = other.maxJobsInQueue; + this.maxMemory = other.maxMemory; } public BatchQueue deepCopy() { @@ -220,6 +229,8 @@ import org.slf4j.LoggerFactory; this.maxProcessors = 0; setMaxJobsInQueueIsSet(false); this.maxJobsInQueue = 0; + setMaxMemoryIsSet(false); + this.maxMemory = 0; } public String getQueueName() { @@ -356,6 +367,28 @@ import org.slf4j.LoggerFactory; __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __MAXJOBSINQUEUE_ISSET_ID, value); } + public int getMaxMemory() { + return this.maxMemory; + } + + public void setMaxMemory(int maxMemory) { + this.maxMemory = maxMemory; + setMaxMemoryIsSet(true); + } + + public void unsetMaxMemory() { + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __MAXMEMORY_ISSET_ID); + } + + /** Returns true if field maxMemory is set (has been assigned a value) and false otherwise */ + public boolean isSetMaxMemory() { + return EncodingUtils.testBit(__isset_bitfield, __MAXMEMORY_ISSET_ID); + } + + public void setMaxMemoryIsSet(boolean value) { + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __MAXMEMORY_ISSET_ID, value); + } + public void setFieldValue(_Fields field, Object value) { switch (field) { case QUEUE_NAME: @@ -406,6 +439,14 @@ import org.slf4j.LoggerFactory; } break; + case MAX_MEMORY: + if (value == null) { + unsetMaxMemory(); + } else { + setMaxMemory((Integer)value); + } + break; + } } @@ -429,6 +470,9 @@ import org.slf4j.LoggerFactory; case MAX_JOBS_IN_QUEUE: return Integer.valueOf(getMaxJobsInQueue()); + case MAX_MEMORY: + return Integer.valueOf(getMaxMemory()); + } throw new IllegalStateException(); } @@ -452,6 +496,8 @@ import org.slf4j.LoggerFactory; return isSetMaxProcessors(); case MAX_JOBS_IN_QUEUE: return isSetMaxJobsInQueue(); + case MAX_MEMORY: + return isSetMaxMemory(); } throw new IllegalStateException(); } @@ -523,6 +569,15 @@ import org.slf4j.LoggerFactory; return false; } + boolean this_present_maxMemory = true && this.isSetMaxMemory(); + boolean that_present_maxMemory = true && that.isSetMaxMemory(); + if (this_present_maxMemory || that_present_maxMemory) { + if (!(this_present_maxMemory && that_present_maxMemory)) + return false; + if (this.maxMemory != that.maxMemory) + return false; + } + return true; } @@ -599,6 +654,16 @@ import org.slf4j.LoggerFactory; return lastComparison; } } + lastComparison = Boolean.valueOf(isSetMaxMemory()).compareTo(other.isSetMaxMemory()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetMaxMemory()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.maxMemory, other.maxMemory); + if (lastComparison != 0) { + return lastComparison; + } + } return 0; } @@ -660,6 +725,12 @@ import org.slf4j.LoggerFactory; sb.append(this.maxJobsInQueue); first = false; } + if (isSetMaxMemory()) { + if (!first) sb.append(", "); + sb.append("maxMemory:"); + sb.append(this.maxMemory); + first = false; + } sb.append(")"); return sb.toString(); } @@ -757,6 +828,14 @@ import org.slf4j.LoggerFactory; org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } break; + case 7: // MAX_MEMORY + if (schemeField.type == org.apache.thrift.protocol.TType.I32) { + struct.maxMemory = iprot.readI32(); + struct.setMaxMemoryIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; default: org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } @@ -802,6 +881,11 @@ import org.slf4j.LoggerFactory; oprot.writeI32(struct.maxJobsInQueue); oprot.writeFieldEnd(); } + if (struct.isSetMaxMemory()) { + oprot.writeFieldBegin(MAX_MEMORY_FIELD_DESC); + oprot.writeI32(struct.maxMemory); + oprot.writeFieldEnd(); + } oprot.writeFieldStop(); oprot.writeStructEnd(); } @@ -836,7 +920,10 @@ import org.slf4j.LoggerFactory; if (struct.isSetMaxJobsInQueue()) { optionals.set(4); } - oprot.writeBitSet(optionals, 5); + if (struct.isSetMaxMemory()) { + optionals.set(5); + } + oprot.writeBitSet(optionals, 6); if (struct.isSetQueueDescription()) { oprot.writeString(struct.queueDescription); } @@ -852,6 +939,9 @@ import org.slf4j.LoggerFactory; if (struct.isSetMaxJobsInQueue()) { oprot.writeI32(struct.maxJobsInQueue); } + if (struct.isSetMaxMemory()) { + oprot.writeI32(struct.maxMemory); + } } @Override @@ -859,7 +949,7 @@ import org.slf4j.LoggerFactory; TTupleProtocol iprot = (TTupleProtocol) prot; struct.queueName = iprot.readString(); struct.setQueueNameIsSet(true); - BitSet incoming = iprot.readBitSet(5); + BitSet incoming = iprot.readBitSet(6); if (incoming.get(0)) { struct.queueDescription = iprot.readString(); struct.setQueueDescriptionIsSet(true); @@ -880,6 +970,10 @@ import org.slf4j.LoggerFactory; struct.maxJobsInQueue = iprot.readI32(); struct.setMaxJobsInQueueIsSet(true); } + if (incoming.get(5)) { + struct.maxMemory = iprot.readI32(); + struct.setMaxMemoryIsSet(true); + } } }
