//package staticstub; import java.lang.System; import javax.xml.rpc.Stub; import javax.activation.*; import java.net.URL; import java.io.FileNotFoundException; import staticstub.*; public class SampleDTserviceClient { private static String endpointAddress = "http://translators.gsfc.nasa.gov/dt/dtservice"; public static void main(String[] args) { String translationMode = ""; String mappingMode = ""; String emailTo = "myname@mydomain.mycompany.com"; // String emailTo = ""; System.out.println("Endpoint address = " + endpointAddress); try { Stub stub = createProxy(); stub._setProperty(javax.xml.rpc.Stub.ENDPOINT_ADDRESS_PROPERTY, endpointAddress); DataTranslationIF dt = (DataTranslationIF)stub; String filename; String outputURL=""; DataHandler dh, dh2; // translateFile filename = "file:///Users/cdf/so_at_def_20001029_v01.cdf"; dh = createDataHandler(filename); translationMode = "cdf-fits"; System.out.println("**** translateFile method ****"); System.out.println(filename+" -> "+ dt.translateFile(dh, "so_at_def_20001029_v01.cdf", translationMode, emailTo)); System.out.println(" "); // translateRemoteFile filename = "ftp://nssdcftp.gsfc.nasa.gov/standards/cdf/swe.cdf"; translationMode = "cdf-netcdf"; outputURL = dt.translateRemoteFile(filename, translationMode, ""); System.out.println("**** translateRemoteFile method ****"); if (outputURL.indexOf("Error") != -1) System.out.println (outputURL); /* issue error message */ else System.out.println(filename+" (remote file w/o mapping) -> "+ outputURL); System.out.println(" "); // translateFiles filename = "ftp://nssdcftp.gsfc.nasa.gov/standards/cdf/rain2.cdf"; dh = createDataHandler(filename); translationMode = "cdf-netcdf"; System.out.println(filename+" -> "+ dt.translateFile(dh, "rain2.cdf", translationMode, "")); System.out.println(" "); String[] filenames = {"1992.cdf", "SOHO_AT_DEF_19951206_V03.fits"}; String[] translationModes = {"cdf-netcdf", "fits-cdf"}; DataHandler[] dhArray = new DataHandler[filenames.length]; String[] msgArray = new String[filenames.length]; System.out.println("**** translateFiles method ****"); for (int i=0; i < filenames.length; i++) { filename = "file:///Users/cdf/" + filenames[i]; dhArray[i] = createDataHandler(filename); } msgArray = dt.translateFiles(dhArray, filenames, translationModes, emailTo); System.out.println("**** translateFiles method ****"); for (int i=0; i < msgArray.length; i++) System.out.println(filenames[i]+" -> "+msgArray[i]); // translateRemoteFiles String[] filenames1 = {"ftp://nssdcftp.gsfc.nasa.gov/standards/cdf/swe.cdf", "ftp://nssdcftp.gsfc.nasa.gov/standards/cdf/so_cel_200010291.cdf"}; String[] translationModes1 = {"cdf-text", "cdf-netcdf"}; String[] outFilenames = new String[translationModes.length]; outFilenames = dt.translateRemoteFiles(filenames1, translationModes1, ""); System.out.println("**** translateRemoteFiles method ****"); for (int i=0; i < outFilenames.length; i++) System.out.println("outFilenames["+i+"] = "+outFilenames[i]); // translateFilewithMapping filename = "file:///Users/cdf/so_at_def_20001029_v01.cdf"; dh = createDataHandler(filename); translationMode = "cdf-fits"; filename = "file:///Users/cdf/mycdf_to_fits.dat"; dh2 = createDataHandler(filename); mappingMode = "cdf-fits"; System.out.println("**** translateFilewithMapping method ****"); System.out.println(filename+" -> "+ dt.translateFilewithMapping(dh, "so_at_def_20001029_v01.cdf", translationMode, dh2, "mycdf_to_fits.dat", mappingMode, emailTo)); System.out.println(" "); // translateRemoteFilewithMapping filename = "ftp://nssdcftp.gsfc.nasa.gov/standards/cdf/swe.cdf"; translationMode = "cdf-netcdf"; String mappingFilename = "ftp://nssdcftp.gsfc.nasa.gov/standards/cdf/mycdf2nc.dat"; outputURL = dt.translateRemoteFilewithMapping(filename, translationMode, mappingFilename, ""); System.out.println("**** translateRemoteFilewithMapping method ****"); if (outputURL.indexOf("Error") != -1) System.out.println (outputURL); /* issue error message */ else System.out.println(filename+" (remote file with mapping) -> "+ outputURL); System.out.println(" "); // translateFileswithMappings String[] filenames2 = {"1993.cdf", "1996.fits"}; String[] mappingnames = {"myfits_to_cdf.dat"}; String[] translationModes2 = {"cdf-netcdf", "fits-cdf"}; String[] mappingModes = {"fits-cdf"}; DataHandler[] dh1Array = new DataHandler[filenames2.length]; DataHandler[] dh2Array = new DataHandler[mappingnames.length]; String[] msg2Array = new String[filenames2.length]; for (int i=0; i < filenames2.length; i++) { filename = "file:///Users/cdf/" + filenames2[i]; dh1Array[i] = createDataHandler(filename); } for (int i=0; i < mappingnames.length; i++) { filename = "file:///Users/cdf/" + mappingnames[i]; dh2Array[i] = createDataHandler(filename); } msg2Array = dt.translateFileswithMappings(dh1Array, filenames2, translationModes2, dh2Array, mappingnames, mappingModes, emailTo); System.out.println("**** translateFileswithMappings method ****"); for (int i=0; i < msg2Array.length; i++) System.out.println(filenames[i]+" -> "+msg2Array[i]); System.out.println(" "); // translateRemoteFileswithMappings String[] filenames3 = { "ftp://nssdcftp.gsfc.nasa.gov/standards/cdf/mydata.cdf", "ftp://nssdcftp.gsfc.nasa.gov/standards/cdf/mydata1.cdf"}; String[] translationModes3 = {"cdf-text", "cdf-netcdf"}; String[] mappingFilenames = {"ftp://nssdcftp.gsfc.nasa.gov/standards/cdf/mycdf2nc.dat", "ftp://nssdcftp.gsfc.nasa.gov/standards/cdf/mycdf2nc_copy.dat"}; String[] mappingFileModes = {"cdf-fits", "cdf-netcdf"}; outFilenames = dt.translateRemoteFileswithMappings(filenames3, translationModes3, mappingFilenames, mappingFileModes, ""); System.out.println("**** translateRemoteFileswithMappings method ****"); for (int i=0; i < outFilenames.length; i++) System.out.println("outFilenames["+i+"] = "+outFilenames[i]); } catch (Exception ex) { System.out.println("** Error in Main **"); ex.printStackTrace(); } } private static Stub createProxy() { // Note: MyHelloService_Impl is implementation-specific. return (Stub)(new DataTranslationService_Impl().getDataTranslationIFPort()); } private static DataHandler createDataHandler(String filename) { DataHandler dataHandler = null; try { URL url = new URL(filename); dataHandler = new DataHandler(url); } catch (Exception ex) { ex.printStackTrace(); } return dataHandler; } }