soap api documentation - tibco software · 2010. 12. 1. · the file transfer service is used by...

37
© 2010 TIBCO Software Inc. All Rights Reserved Page 1 of 37 TIBCO Managed File Transfer SOAP API Documentation Version 7.0 December 8, 2010

Upload: others

Post on 01-Feb-2021

5 views

Category:

Documents


0 download

TRANSCRIPT

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 1 of 37

    Version 7.0

    TIBCO Managed File Transfer SOAP API Documentation

    Version 7.0

    December 8, 2010

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 2 of 37

    Important Information SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH EMBEDDED OR BUNDLED TIBCO SOFTWARE IS SOLELY TO ENABLE THE FUNCTIONALITY (OR PROVIDE LIMITED ADD-ON FUNCTIONALITY) OF THE LICENSED TIBCO SOFTWARE. THE EMBEDDED OR BUNDLED SOFTWARE IS NOT LICENSED TO BE USED OR ACCESSED BY ANY OTHER TIBCO SOFTWARE OR FOR ANY OTHER PURPOSE.

    USE OF TIBCO SOFTWARE AND THIS DOCUMENT IS SUBJECT TO THE TERMS AND CONDITIONS OF A LICENSE AGREEMENT FOUND IN EITHER A SEPARATELY EXECUTED SOFTWARE LICENSE AGREEMENT, OR, IF THERE IS NO SUCH SEPARATE AGREEMENT, THE CLICKWRAP END USER LICENSE AGREEMENT WHICH IS DISPLAYED DURING DOWNLOAD OR INSTALLATION OF THE SOFTWARE OR IF THERE IS NO SUCH SOFTWARE LICENSE AGREEMENT OR CLICKWRAP END USER LICENSE AGREEMENT, THE LICENSE(S) LOCATED IN THE “LICENSE” FILE(S) OF THE SOFTWARE. USE OF THIS DOCUMENT IS SUBJECT TO THOSE TERMS AND CONDITIONS, AND YOUR USE HEREOF SHALL CONSTITUTE ACCEPTANCE OF AND AN AGREEMENT TO BE BOUND BY THE SAME.

    This document contains confidential information that is subject to U.S. and international copyright laws and treaties. No part of this document may be reproduced in any form without the written authorization of TIBCO Software Inc.

    TIB, TIBCO, TIBCO Adapter, Predictive Business, Information Bus, The Power of Now, TIBCO ActiveMatrix BusinessWorks, Silver, Managed File Transfer, MFT Command Center, MFT Internet Server, MFT Platform Server, MFT Platform Server Agent, Edge Server, RocketStream, and Slingshot are either registered trademarks or trademarks of TIBCO Software Inc. in the United States and/or other countries.

    EJB, Java EE, J2EE, and all Java-based trademarks and logos are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries.

    All other product and company names and marks mentioned in this document are the property of their respective owners and are mentioned for identification purposes only.

    THIS SOFTWARE MAY BE AVAILABLE ON MULTIPLE OPERATING SYSTEMS. HOWEVER, NOT ALL OPERATING SYSTEM PLATFORMS FOR A SPECIFIC SOFTWARE VERSION ARE RELEASED AT THE SAME TIME.

    THIS DOCUMENT IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT.

    THIS DOCUMENT COULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICAL ERRORS. CHANGES ARE PERIODICALLY ADDED TO THE INFORMATION HEREIN; THESE CHANGES WILL BE INCORPORATED IN NEW EDITIONS OF THIS DOCUMENT. TIBCO SOFTWARE INC. MAY MAKE IMPROVEMENTS AND/OR CHANGES IN THE PRODUCT(S) AND/OR THE PROGRAM(S) DESCRIBED IN THIS DOCUMENT AT ANY TIME.

    THE CONTENTS OF THIS DOCUMENT MAY BE MODIFIED AND/OR QUALIFIED, DIRECTLY OR INDIRECTLY, BY OTHER DOCUMENTATION WHICH ACCOMPANIES THIS SOFTWARE, INCLUDING BUT NOT LIMITED TO ANY RELEASE NOTES AND "READ ME" FILES.

    Copyright ©1995-2010 TIBCO Software Inc. ALL RIGHTS RESERVED. TIBCO Software Inc. Confidential Information

    TIBCO welcomes your comments on this publication. Please address your comments to:

    TIBCO Software Inc. 200 Garden City Plaza Garden City, New York 11530 USA Technical Support: +1 (516) 535-3636 Technical Support E-mail: [email protected] Web site: http://www.tibco.com

    When you send information to TIBCO, you grant TIBCO a non-exclusive right to use or distribute the information in any way TIBCO believes appropriate without incurring any obligation to you.

    Administrators Guide Version 7.0

    mailto:[email protected]�http://www.tibco.com/�

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 3 of 37

    Table of Contents 1. Introduction .......................................................................................................................................... 5

    2. WSDL ..................................................................................................................................................... 5

    3. Using the Administrator Service ........................................................................................................... 5

    4. Using the File Transfer Service .............................................................................................................. 6

    5. Samples ................................................................................................................................................. 6

    6. FAQs .................................................................................................................................................... 14

    Appendix A - AdminService Class ................................................................................................................ 16

    Class Control Methods ............................................................................................................................ 16

    Session Methods ..................................................................................................................................... 16

    Server Methods ....................................................................................................................................... 17

    User Methods ......................................................................................................................................... 19

    Transfer Definition Methods ................................................................................................................... 20

    Role Methods .......................................................................................................................................... 22

    Group Methods ....................................................................................................................................... 22

    System Configuration Methods .............................................................................................................. 23

    Audit Methods ........................................................................................................................................ 24

    Server Credential Methods ..................................................................................................................... 25

    License Key Methods .............................................................................................................................. 26

    Checkpoint/Restart Methods.................................................................................................................. 26

    Platform System Server Methods ........................................................................................................... 27

    AS2 System Server Methods ................................................................................................................... 27

    FTP System Server Methods ................................................................................................................... 28

    SSH System Server Methods ................................................................................................................... 28

    Department Methods ............................................................................................................................. 29

    System Information Methods ................................................................................................................. 29

    Transfer Bank Methods ........................................................................................................................... 30

    Node Methods ........................................................................................................................................ 30

    Collector Methods .................................................................................................................................. 31

    Alert Methods ......................................................................................................................................... 31

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 4 of 37

    Profile Methods ...................................................................................................................................... 31

    Audit Bank Methods ............................................................................................................................... 32

    Alert Audit Methods ............................................................................................................................... 32

    Key Methods ........................................................................................................................................... 34

    Appendix B - FTService Class ....................................................................................................................... 36

    Class Control Methods ............................................................................................................................ 36

    Session Methods ..................................................................................................................................... 36

    Password Methods ................................................................................................................................. 36

    File Methods ........................................................................................................................................... 37

    Audit Methods ........................................................................................................................................ 37

    System Information Methods ................................................................................................................. 37

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 5 of 37

    1. Introduction TIBCO Managed File Transfer Command Center exposes two public web services that can be used by a developer to access, control, and integrate MFT Command Center with a third party application. The Administrator Web Service is used to configure and administer MFT Command Center. The File Transfer Web Service is used to perform file transfers. Simple Object Access Protocol (SOAP) is used to describe and access each of MFT Command Center’s exposed services. A copy of the SOAP specification can be found at http://www.w3.org/TR/SOAP/ . HTTPS is the preferred network protocol to be used to access MFT Command Center’s web services.

    Documentation for each of the web services is provided in javadoc format. Under the directory where MFT Command Center was installed (where the cfcc.jar file was unpacked) there is a directory named docs. In this directory there is a zip file called docs.zip. This zip file contains the documentation in HTML format. Contact the administrator that installed MFT Command Center and have them send you this zip file. Unzip the file into any directory. Double click on the index.html file to get a listing of all the packages and classes. Each method will be explained later in this document.

    2. WSDL The interfaces of both the Administrator Service and the File Transfer service are published on the MFT Command Center Server in a WSDL format.

    To access the Administrator Service navigate to the following URL with your browser:

    https://[DNS_HostName]:[Port]/cfcc/control?view=services/AdministratorService?WSDL

    To access the File Transfer Service navigate to the following URL with your browser:

    https://[DNS_HostName]:[Port]/cfcc/control?view=services/FTService?WSDL

    Both WSDL files can be used by most major SOAP 1.1 compliant implementations to access each of MFT Command Center’s web services. Please consult your SOAP implementation’s documentation for examples on how to access web services.

    3. Using the Administrator Service The Administrator Service can be used to perform actions against the Command Center. These actions include configuration actions such as adding users, servers and transfers; managing system servers and keys; Platform Server node, profile and responder profile management; audit; and other actions normally done using the Command Center GUI.

    To use the Administrator Service, the following steps must be executed:

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 6 of 37

    1. Contact the Administrator Service at https://[DNS_HostName]:[Port]/ContextName/control?view=services/ AdministratorService

    2. Execute the getSession method of the Administrator Service. This call returns a session string that is to be used in all further contact to the Administrator Service.

    3. Execute all other service methods needed to perform the required task.

    4. Execute the closeSession method of the Administrator Service. This will close the current session.

    4. Using the File Transfer Service The File Transfer Service is used by the web service client to perform non-transfer actions. These actions include, password, file list, and audit action. Internet Transfers are performed using the JAVA API. To use the File Transfer Service, the following steps must be executed:

    1. Contact the File Transfer Service at https://[DNS_HostName]:[Port]/ ContextName/control?view= services/FTService

    2. Execute the getSession method of the File Transfer Service. This call returns a session string that is to be used in all further contact to the File Transfer Service.

    3. Execute all other service methods needed to perform the required task.

    4. Execute the closeSession method of the File Transfer Service. This will close the current session.

    5. Samples The java code example below shows how to add a user to MFT Command Center using the Administrator Service. Substitute the correct values of your MFT installation to compile and execute this sample.

    SoapClient.java

    import AdminClient.*; import java.rmi.RemoteException; import javax.xml.rpc.Stub; import javax.xml.rpc.ServiceException; /* * This program demonstrates adding a user through the administrative SOAP service. Changes the ADMIN_SERVICE_URL and * the ADMIN_USER_ID and ADMIN_PASSWORD variables declared below. * * COMPILE * javac -classpath D:\Tomcat5.5\webapps\cfcc\WEB-INF\lib\AdminClient.jar;D:\Tomcat5.5\webapps\cfcc\WEB-INF\lib\jaxrpc.jar; * D:\Tomcat5.5\webapps\cfcc\WEB-INF\lib\axis.jar SOAPClient.java * * RUN

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 7 of 37

    * java -cp .;D:\Tomcat5.5\webapps\cfcc\WEB-INF\lib\AdminClient.jar;D:\Tomcat5.5\webapps\cfcc\WEB-INF\lib\jaxrpc.jar; * D:\Tomcat5.5\webapps\cfcc\WEB-INF\lib\axis.jar;D:\Tomcat5.5\webapps\cfcc\WEB-INF\lib\commons-logging.jar; * D:\Tomcat5.5\webapps\cfcc\WEB-INF\lib\commons-discovery.jar;D:\Tomcat5.5\webapps\cfcc\WEB-INF\lib\saaj.jar; * D:\Tomcat5.5\webapps\cfcc\WEB-INF\lib\wsdl4j.jar;D:\Tomcat5.5\webapps\cfcc\WEB-INF\classes SOAPClient * */ public class SOAPClient { private static final String ADMIN_SERVICE_URL = "https://your.mft.com:8443/cfcc/control?view=services/AdministratorService"; private static final String ADMIN_USER_ID = "admin"; private static final String ADMIN_PASSWORD = "admin"; public static void main(String[] args) { SOAPClient adminClient = new SOAPClient(); User newUser = new User(); newUser.setId("test01"); newUser.setFullName("Test User 1"); newUser.setPassword("test1234"); DateTime expireDate = new DateTime(); // Dec 31, 2011 expireDate.setYear(2011); expireDate.setMonth(11); // months are 0 thru 11 expireDate.setDay(31); newUser.setExpirationDate(expireDate); try { adminClient.addUser(newUser); } catch(Exception e) { System.out.println("Error adding user, " + e.getMessage()); } } public void addUser(User _usr) throws RemoteException, ServiceException { System.setProperty("org.apache.axis.components.net.SecureSocketFactory", "com.proginet.sift.soap.fileTransferService.util.CustomAxisSSLSocketFactory"); Stub stub = createProxy(ADMIN_USER_ID, ADMIN_PASSWORD); stub._setProperty(javax.xml.rpc.Stub.ENDPOINT_ADDRESS_PROPERTY, ADMIN_SERVICE_URL); ((org.apache.axis.client.Stub)stub).setMaintainSession(true); AdminService admin=(AdminService)stub; // apache stub // need session id to make SOAP calls String sessionId = admin.getSession(); boolean success = admin.addUser(_usr, sessionId);

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 8 of 37

    if (success) { System.out.println("Added user successfully."); } else { System.out.println("Failed to add user."); } } /** * Create stub to communicate with service. * * @param username username set into stub for authentication * @param password user's passowrd set into stub for authentication * @return the stub used for communication */ protected static Stub createProxy(String _username, String _password) throws ServiceException { // apache stub AdminServiceService adminService = new AdminServiceServiceLocator(); //get service location AdminService admin = adminService.getAdministratorService(); //get stub instance (already cast) if (_username == null) { _username = ""; } if (_password == null) { _password = ""; } ((Stub)admin)._setProperty(javax.xml.rpc.Stub.USERNAME_PROPERTY, _username); //down cast to load stub ((Stub)admin)._setProperty(javax.xml.rpc.Stub.PASSWORD_PROPERTY, _password); //username and password ((Stub)admin)._setProperty(javax.xml.rpc.Stub.SESSION_MAINTAIN_PROPERTY, new Boolean(true)); //maintain session return (Stub)admin; } }

    This next example uses the Administrator Service to create an MFT userid. It then creates a transfer definition and assigns it to the userid. The File Transfer Service is used to retrieve a list of all files available to the userid. Substitute the correct values of your MFT installation to compile and execute this sample.

    SoapTest.java

    package test;

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 9 of 37

    // Admin Service imports import AdminClient.AdminService; import AdminClient.AdminServiceService; import AdminClient.AdminServiceServiceLocator; import AdminClient.DateTime; import AdminClient.User; import AdminClient.Transfer; // FT Service imports import FTClient.FTService_PortType; import FTClient.FTServiceService; import FTClient.FTServiceServiceLocator; import FTClient.FileInfo; // other imports import java.rmi.RemoteException; import javax.xml.rpc.ServiceException; import org.apache.axis.client.Stub; public class SOAPTest { public static void main(String[] args) { SOAPAdminService admin = new SOAPAdminService(); admin.addUser(); admin.addInternetTransfer(); admin.cleanup(); SOAPFTService ft = new SOAPFTService(); ft.displayAllTransferIds(); ft.cleanup(); } } class SOAPAdminService { private static final String SERVER_URL = "https://your.mft.com:8443/cfcc"; private static final String ADMIN_SERVICES_URL = "/control?view=services/AdministratorService"; private String ADMIN_USER_ID = "admin"; private String ADMIN_PASSWORD = "admin"; private String NEW_USER_ID = "test02"; private String NEW_USER_PWD = "test1234"; private String NEW_USER_NAME = "Test User 2"; private AdminService m_adminService; private String m_sessionId; public SOAPAdminService() { try { getAdminService(); } catch(ServiceException e) { e.printStackTrace(System.out);

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 10 of 37

    return; } getSessionId(); } public void cleanup() { closeSession(); } public void addUser() { User usr = new User(); usr.setId(NEW_USER_ID); usr.setFullName(NEW_USER_NAME); usr.setPassword(NEW_USER_PWD); DateTime expireDate = new DateTime(); expireDate.setYear(2020); expireDate.setMonth(11); // months are 0 thru 11 expireDate.setDay(31); usr.setExpirationDate(expireDate); try { boolean rc = m_adminService.addUser(usr, m_sessionId); System.out.println("User was added [" + rc + "]"); } catch(RemoteException e) { e.printStackTrace(System.out); } } public void addInternetTransfer() { Transfer xfer = new Transfer(); xfer.setClientFileName("C:\\tmp\\localfile.txt"); xfer.setServerFileName("C:\\tmp\\remotefile.txt"); xfer.setDirectoryTransfer("0"); // 0 = no 1 = yes xfer.setDescription("test upload"); xfer.setAuthUserId(NEW_USER_ID); xfer.setNodeName("*LOCAL"); xfer.setSendRecvFlag("S"); // S = upload R = download xfer.setAllowableProtocol("ALL"); xfer.setConversionFlag("0"); // 0 = Ascii to EBCDIC conversion 1 = ASCII to EBCDIC conversion based on local translation table try { String fileId = m_adminService.addTransfer(xfer, m_sessionId); System.out.println("Transfer was added [" + fileId + "]"); } catch(RemoteException e) { e.printStackTrace(System.out); } }

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 11 of 37

    private void getSessionId() { try { m_sessionId = m_adminService.getSession(); } catch(RemoteException e) { e.printStackTrace(System.out); } } private void closeSession() { try { m_adminService.closeSession(m_sessionId); } catch(RemoteException e) { e.printStackTrace(System.out); } } private void getAdminService() throws ServiceException { System.setProperty("org.apache.axis.components.net.SecureSocketFactory", "test.CustomAxisSSLSocketFactory"); SOAPServiceFactory serviceFactory = new SOAPServiceFactory(); serviceFactory.setUserId(ADMIN_USER_ID); serviceFactory.setPassword(ADMIN_PASSWORD); serviceFactory.setServiceUrl(SERVER_URL + ADMIN_SERVICES_URL); m_adminService = serviceFactory.getAdminService(); } } class SOAPFTService { private static final String SERVER_URL = "https://your.mft.com:8443/cfcc"; private static final String FT_SERVICES_URL = "/control?view=services/FTService"; private String XFER_USER_ID = "test02"; private String XFER_PASSWORD = "test1234"; private FTService_PortType m_ftService; private String m_sessionId; public SOAPFTService() { try { getFTService(); } catch(ServiceException e) { e.printStackTrace(System.out); return; }

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 12 of 37

    getSessionId(); } public void cleanup() { closeSession(); } public void displayAllTransferIds() { try { FileInfo[] files = m_ftService.getAllFilesForUser(m_sessionId); if (files != null) { for (int i = 0; i < files.length; i++) { if (files[i] != null) { System.out.println(files[i].getId()); } } } } catch(RemoteException e) { e.printStackTrace(System.out); } } private void getSessionId() { try { m_sessionId = m_ftService.getSession(); } catch(RemoteException e) { e.printStackTrace(System.out); } } private void closeSession() { try { m_ftService.closeSession(m_sessionId); } catch(RemoteException e) { e.printStackTrace(System.out); } } private void getFTService() throws ServiceException { System.setProperty("org.apache.axis.components.net.SecureSocketFactory", "test.CustomAxisSSLSocketFactory"); SOAPServiceFactory serviceFactory = new SOAPServiceFactory();

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 13 of 37

    serviceFactory.setUserId(XFER_USER_ID); serviceFactory.setPassword(XFER_PASSWORD); serviceFactory.setServiceUrl(SERVER_URL + FT_SERVICES_URL); m_ftService = serviceFactory.getFTService(); } } class SOAPServiceFactory { private String m_userId; private String m_password; private String m_serviceUrl; private int m_timeout; private boolean m_maintainSession; private static final int THIRTY_SECONDS = 1000 * 30; public SOAPServiceFactory() { m_timeout = THIRTY_SECONDS; m_maintainSession = true; } public void setUserId(String _userId) { m_userId = _userId; } public void setPassword(String _pwd) { m_password = _pwd; } public void setServiceUrl(String _url) { m_serviceUrl = _url; } public void setTimeout(int _milliseconds) { m_timeout = _milliseconds; } public void setMaintainSession(boolean _flag) { m_maintainSession = _flag; } public AdminService getAdminService() throws ServiceException { AdminServiceService serviceLocator = new AdminServiceServiceLocator(); AdminService adminService = serviceLocator.getAdministratorService(); setStubProperties((Stub)adminService); return adminService; } public FTService_PortType getFTService() throws ServiceException {

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 14 of 37

    FTServiceService serviceLocator = new FTServiceServiceLocator(); FTService_PortType ftService = serviceLocator.getFTService(); setStubProperties((Stub)ftService); return ftService; } private void setStubProperties(Stub _stub) { _stub._setProperty(Stub.USERNAME_PROPERTY, m_userId); _stub._setProperty(Stub.PASSWORD_PROPERTY, m_password); _stub._setProperty(Stub.SESSION_MAINTAIN_PROPERTY, new Boolean(m_maintainSession)); _stub._setProperty(Stub.ENDPOINT_ADDRESS_PROPERTY, m_serviceUrl); _stub.setTimeout(m_timeout); } }

    6. FAQs Q: Can web service and java APIs allow the client to initiate and start/stop a file transfer?

    A: The Web Service allows you to initiate a transfer between two Platform Servers. It is what we call a 3rd party transfer in that MFT requests that one Platform Server initiates a CFI protocol transfer to another Platform Server. Once a transfer has been started, there is no way to stop it. The JAVA API provided allows you to perform a transfer between the computer executing the API and MFT Internet Server. The transfer can be stopped using the stopTransfer method.

    Q: What version of java API specification being adopted?

    A: Java 1.5 and 1.6 are supported.

    Q: Are there any Java APIs available for Platform Server so that a Java Based Client can be programmed? If not, what interface is available so that a transfer can happen between the Machine running the Java Based Client and the machine running the Platform Server.

    A: There are no Java APIs available for Platform Server. MFT is the interface between Java and Platform Server.

    Q : What protocol is used by the Java API to communicate with MFT Internet Server?

    A: The HTTPS protocol is used.

    Q: Where can I find the following classes to import?

    com.proginet.sift.fileTransferApplet.api.APISendFileThread; com.proginet.sift.fileTransferApplet.api.APIRecvFileThread;

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 15 of 37

    com.proginet.sift.fileTransferApplet.api.TransferObserver; FTClient.FTServiceService; FTClient.FTService_PortType; A: com.proginet.sift.fileTransferApplet.api.APISendFileThread, com.proginet.sift.fileTransferApplet.api.APIRecvFileThread, and com.proginet.sift.fileTransferApplet.api.TransferObserver can be found in the NonGuiApplet jar file. FTClient.FTServiceService and FTClient.FTService_PortType can be found in the FTClient jar file.

    Q: Can a wildcard be used when transferring files with the API?

    A: No, wildcards are not supported with the API and files must be transferred one at a time.

    Q: Can a web service be used to transfer a file?

    A: No, only APIs are available to transfer files.

    Q: Can I use SOAP to transfer files to the Internet Server?

    A: You cannot do an Internet transfer through SOAP, only a Platform transfer. The File Transfer Service provides actions to retrieve listings of files but the transfers themselves must be done using a java API method.

    Q: How do I use SOAP to transfer files from a Platform Server through Internet Server and on to an external business partner?

    A: SOAP cannot be used for this. SOAP is only used for Platform Server to Platform Server transfers. To execute this type of transfer, the initiating Platform Server’s transfer tools (GUI or command line) must be used.

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 16 of 37

    Appendix A - AdminService Class The follow methods are available in the AdminService Class. Methods can be categorized by their different actions.

    For more details on the method parameters and return values, refer to the java docs.

    Class Control Methods AdminService - Constructor

    init - Initializes the service. Reads the parameters in the web.xml file. Makes connection to database. Turns off autoCommit and sets transaction isolation.

    destroy - Called when service is finished. Closes connection to database.

    Session Methods getSession - Returns a session id generated by the system. The user is validated before generating the session id.

    closeSession - Removes session id from database.

    Class Control Methods Session Methods Server Methods User Methods

    Transfer Definition Methods Role Methods

    Group Methods System Configuration Methods

    Audit Methods Server Credential Methods

    License Key Methods Checkpoint Methods

    Platform System Server Methods AS2 System Server Methods FTP System Server Methods SSH System Server Methods

    Department Methods System Information Methods

    Transfer Bank Methods Node Methods

    Collector Methods Alert Methods

    Profile Methods Audit Bank Methods Alert Audit Methods

    Key Methods

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 17 of 37

    deleteExpiredSessionIds - Removes session ids that have a expired. A session is considered expired if its last activity was longer than the time out parameter set in the web.xml file. The user calling this method must have UpdateSessionRight or AdministratorRight without being assigned to a department.

    deleteSessionId - Removes the specified session id from the database. The user calling this method must have UpdateSessionRight or AdministratorRight without being assigned to a department.

    getExpiredSessionIds - Returns all expired sessions as any array of Session objects. The last element of the array is null. If there are no expired sessions a single element is returned with a value of null. A session is considered expired if its last activity was longer than the time out parameter set in the web.xml file. The user calling this method must have ViewSessionRight, UpdateSessionRight or AdministratorRight.

    listActiveSessionIds - Returns all sessions not expired as any array of Session objects. The last element of the array is null. If there are no active sessions a single element is returned with a value of null. A session is considered expired if its last activity was longer than the time out parameter set in the web.xml file. The user calling this method must have viewSessionRight, UpdateSessionRight or AdministratorRight.

    validateSession - Checks to see if the session exists in the database and has not expired. A session is considered expired if its last activity was longer than the time out parameter set in the web.xml file. Returns true if valid or false if not valid.

    Server Methods addServer - Adds a server to the system. The user calling this method must have UpdateServerRight or AdministratorRight but must not be assigned to a department.

    updateServer - Updates a server in the system. The user calling this method must have UpdateServerRight or AdministratorRight. If the calling user is assigned to a department they must have UpdateServerRight, and they can only update servers in his/her own department. Note: When performing an update only set the fields you wish to update in the Server object. The rest of the fields will be null. To update a field to become null:

    • String objects should be set to be an empty String (e.g. "") • DateTime objects should have all its members set to zero

    removeServer - Removes a server from the system. The user calling this method must have UpdateServerRight or AdministratorRight but must not be assigned to a department.

    retrieveAllServers - Retrieves all Servers from the system as an array of Servers. The last element of the array is null. If there are no Servers, an array of one element is returned; that element is null. The user calling this method must have UpdateServerRight, ViewServerRight or be a "super" administrator. The super admin will retrieve all servers in the system. The department admin will retrieve all servers assigned to his/her department.

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 18 of 37

    retrieveAllMonitorServers - Retrieves all monitor Servers from the system as an array of Servers. The last element of the array is null. If there are no Servers an array of one element is returned; that element is null. The user calling this method must have UpdateServerRight, ViewServerRight or be a "super" administrator. The super admin will retrieve all servers in the system. The department admin will retrieve all servers assigned to his/her department.

    retrieveAllServerNames - Retrieves all Server names from the system as an array of Strings. The last element of the array is null. If there are no Servers an array of one element is returned; that element is null. The super admin will retrieve all server names in the system. The department admin will retrieve all the names of servers assigned to his/her department and all public servers assigned to other departments.

    retrieveAllServerNamesInDept - Retrieves all Server names from your department as an array of Strings. The last element of the array is null. If there are no Servers an array of one element is returned; that element is null. The super admin will retrieve all server names in the system. The department admin will retrieve all the names of servers assigned to his/her department.

    retrieveAllPGPlatform ServerNamesInDept - Retrieves all PGP enabled Server names from your department as an array of Strings. The last element of the array is null. If there are no Servers an array of one element is returned; that element is null. The super admin will retrieve all server names in the system. The department admin will retrieve all the names of servers assigned to his/her department.

    retrieveAllServerNamesInDeptByType - Retrieves all enabled Server names of this type from your department as an array of Strings. The last element of the array is null. If there are no Servers an array of one element is returned; that element is null. The super admin will retrieve all server names in the system. The department admin will retrieve all the names of servers assigned to his/her department.

    retrieveAllCfServerNames - Retrieves all MFT Platform Server names from the system as an array of Strings. The last element of the array is null. If there are no Servers an array of one element is returned; that element is null. The super admin will retrieve all node names in the system. The department admin will retrieve all the names of servers assigned to his/her department and all public servers assigned to other departments.

    getServer - Gets a Server from the system. If the Server is not found a null is returned. The user calling this method must have UpdateServerRight, ViewServerRight or be a "super" administrator. The super admin can get any server in the system. The department admin can only get a server that has been assigned to his/her department.

    searchServers - Retrieves all servers that a match the search criteria specified in the Server object. Searches are only done on the following fields:

    • Node Name • IP Name • Node Type • Server Type

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 19 of 37

    • Department

    Set the fields in the Server object that you will to search on. All other fields will be ignored. You can set from one to all the fields. Use the % character as a wildcard character. The results are returned as an array of Server objects. The last element of the array is null. If there are no Servers an array of one element is returned; that element is null. The user calling this method must have UpdateServerRight, ViewServerRight or be a "super" administrator. The super admin will retrieve all nodes in the system. The department admin will retrieve all nodes assigned to his/her department.

    User Methods addUser - Adds a user to the system and assigns the user to the default role or group. The user calling this method must have UpdateTransferUserRight or AdministratorRight. A super admin can create a user and assign that user to any department. A department admin can only create a user who is assigned to his/her department.

    updateUser - Updates a user in the system. The user calling this method must have UpdateTransferUserRight or AdministratorRight. Department admins can only update users who have been assigned to their department. A super admin can update any user in the system. The department admin cannot change the department a user is assigned to. Only the super admin can do this. Note: When performing an update only set the fields you wish to update in the User object. The rest of the fields will be null. To update a field to become null:

    • String objects should be set to be an empty String (e.g. "") • DateTime objects should have all its members set to zero

    removeUser - Removes a user from the system. The user calling this method must have UpdateTransferUserRight or AdministratorRight. A super admin can delete any user in the system. A department admin can only delete users who have been assigned to his/her department.

    retrieveAllUsers - Retrieves all Users from the system as an array of Users. The last element of the array is null. If there are no Users an array of one element is returned; that element is null. This method returns 100 users at a time, so you must keep track of the last user id returned if you want to get the next 100 users. The first time you call this method pass in an empty String for lastUserId. NOTE: Department Admins will get all users in his/her department and all public users from other departments. Super Admins will get all users in the system. The user calling this method must have ViewUserRight, UpdateTransferUserRight, HelpDeskRight or AdministratorRight.

    retrieveAllUsersInDept - Retrieves all Users from the system as an array of Users. The last element of the array is null. If there are no Users an array of one element is returned; that element is null. This method returns 100 users at a time, so you must keep track of the last user id returned if you want to get the next 100 users. The first time you call this method pass in an empty String for lastUserId. The

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 20 of 37

    user calling this method must have ViewUserRight, UpdateTransferUserRight, HelpDeskRight or AdministratorRight. NOTE: This method returns only the users assigned to a specific department. Pass in null to get users not assigned to any department. Department Admins can only get the users in their own department. Super Admins can get the users from any department in the system.

    searchUsers - Search for all Users from the system associated with the search criteria as an array of Users. The last element of the array is null. If there are no Users an array of one element is returned; that element is null. The user calling this method must have ViewUserRight, UpdateTransferUserRight, HelpDeskRight or AdministratorRight. If the caller is a department administrator only the users in its department that meets the search criteria will be returned.

    retrieveAllUserIds - Retrieves all user ids from the system as an array of Strings. The last element of the array is null. If there are no Users an array of one element is returned; that element is null.

    retrieveAllUserIds - Retrieves all user ids from the department as an array of Strings. The last element of the array is null. If there are no Users an array of one element is returned; that element is null. NOTE: passing null as department parameter will return all ids of users not assigned to a department.

    retrieveUserIds - Retrieve user ids as an array of Strings. The last element of the array is null. If there are no Users an array of one element is returned; that element is null. NOTE: the call is designed to meet all possible future requests for user ids. It can also replace previous soap calls for user ids. Future calls should expand this method rather than to create new soap calls.

    getUser - Gets a User from the system. If the User is not found a null is returned. The user calling this method must have ViewUserRight, UpdateTransferUserRight, HelpDeskRight or AdministratorRight.

    getUsersDepartment - Gets a users department from the system. If the User is not found an exception is thrown. The user calling this method must have one of the administrative rights.

    changePassword - Updates the system password for a User. The user calling this method must have HelpDeskRight or AdministratorRight.

    Transfer Definition Methods addTransfer - Adds a transfer definition to the system. The file id is returned if method successful or null if failed. The user calling this method must have UpdateTransferDefinitionRight or AdministratorRight.

    updateTransfer - Updates a transfer definition in the system. The user calling this method must have UpdateTransferDefinitionRight or AdministratorRight. Note: When performing an update only set the fields you wish to update in the Transfer object. The rest of the fields will be null. To update a field to become null:

    • String objects should be set to be an empty String (e.g. "") • DateTime objects should have all its members set to zero

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 21 of 37

    removeTransfer - Removes a transfer definition from the system. The user calling this method must have UpdateTransferDefinitionRight or AdministratorRight.

    removeExpiredTransfers - Removes an expired transfer definitions from the system. A transfer definition is considered expired if the current date has passed the expiration date of the transfer definition. The user calling this method must have UpdateTransferDefinitionRight or AdministratorRight.

    retrieveAllTransfers - Retrieves all transfer definitions from the system as an array of Transfers. The last element of the array is null. If there are no Transfers an array of one element is returned; that element is null. This method returns 100 transfer definitions at a time, so you must keep track of the last transfer id returned if you want to get the next 100 transfer definitions. The first time you call this method pass in empty String for lastTransferId. The user calling this method must have ViewTransferDefinitionRight, UpdateTransferDefinitionRight or AdministratorRight.

    retrieveAllExpiredTransfers - Retrieves all expired transfer definitions from the system as an array of Transfers. A transfer definition is considered expired if the current date has passed the expiration date of the transfer definition. The last element of the array is null. If there are no Transfers an array of one element is returned; that element is null. This method returns 100 files at a time, so you must keep track of the last file id returned if you want to get the next 100 files. The first time you call this method pass in empty String for lastTransferId. The user calling this method must have ViewTransferDefinitionRight, UpdateTransferDefinitionRight or AdministratorRight.

    getTransfer - Gets a Transfer from the system. If the Transfer is not found a null is returned. The user calling this method must have ViewTransferDefinitionRight, UpdateTransferDefinitionRight or AdministratorRight.

    retrieveAllTransfersForUser - Retrieves all transfer definitions that a user can transfer in the system as an array of Transfers. A user can transfer definitions that have the authorized user id set to his/her id or the authorized group id set to a group that he/she is a member of. The last element of the array is null. If there are no Transfers an array of one element is returned; that element is null. This method returns 100 files at a time, so you must keep track of the last transfer id returned if you want to get the next 100 transfer definitions. The first time you call this method pass in empty String for lastTransferId. The user calling this method must have ViewTransferDefinitionRight, UpdateTransferDefinitionRight or AdministratorRight.

    searchTransfers - Retrieves all transfer definitions that match the search criteria specified in the Transfer object. Searches are only done on the following fields:

    • File Id • Client File Name • Server File Name • File Description • Authorized User Id • Authorized Group Id • Node Name

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 22 of 37

    Set the fields in the Transfer object that you will to search on. All other fields will be ignored. You can set from one to all the fields. Use the % character as a wildcard character. The results are returned as an array of Transfer objects. The last element of the array is null. If there are no transfers, an array of one element is returned; that element is null. This method returns 100 files at a time, so you must keep track of the last file id returned if you want to get the next 100 files. The first time you call this method pass in empty String for lastTransferId. The user calling this method must have ViewTransferDefinitionRight, UpdateTransferDefinitionRight or AdministratorRight.

    Role Methods getRole - Gets a Role from the system. If the Role is not found a null is returned. Roles are the rights that give users access to the system.

    retrieveAllRoles - Retrieves all Roles from the system as an array of Roles. The last element of the array is null. If there are no Roles an array of one element is returned; that element is null.

    retrieveAllRolesForUser - Retrieves all Roles that have been assigned to a user. Returns an array of Roles. The last element of the array is null. If there are no Roles an array of one element is returned; that element is null.

    retrieveAllUsersInRole - Retrieves all users that have been assigned to a Role. Returns an array of Roles. The last element of the array is null. If there are no users an array of one element is returned; that element is null. The user calling this method must have ViewUserRight, UpdateTransferUserRight or AdministratorRight.

    retrieveAllUsersNotInRole - Retrieves all users that have not been assigned to this Role. Returns an array of Users. The last element of the array is null. If there are no Users an array of one element is returned; that element is null. The user calling this method must have ViewUserRight, UpdateTransferUserRight or AdministratorRight.

    addUserToRole - Assigns a role to a user. The user calling this method must have UpdateTransferUserRight or AdministratorRight.

    removeUserFromRole - Removes a role assigned to a user. The user calling this method must have UpdateTransferUserRight or AdministratorRight.

    Group Methods addGroup - Adds a group to the system. Users are assigned to groups to have access to transfer definitions. They have no rights associated with them. The user calling this method must have UpdateGroupRight or AdministratorRight.

    updateGroup - Updates a group in the system. The user calling this method must have UpdateGroupRight or AdministratorRight. To update a field to become null use an empty String (e.g. "")

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 23 of 37

    Note: When performing an update, only set the fields you wish to update in the Role object. The rest of the fields will be null. removeGroup - Removes a group from the system. The user calling this method must have UpdateGroupRight or AdministratorRight.

    getGroup - Gets a group from the system. If the group is not found a null is returned. The user calling this method must have ViewGroupRight, UpdateGroupRight or AdministratorRight.

    retrieveAllGroups - Retrieves all groups from the system as an array of Groups. The last element of the array is null. If there are no groups an array of one element is returned; that element is null.

    retrieveAllGroupsInDept - Retrieves all groups from the Department as an array of Groups. The last element of the array is null. If there are no groups an array of one element is returned; that element is null.

    retrieveAllGroupsForUser - Retrieves all groups that user has been assigned to. Returns an array of Groups. The last element of the array is null. If there are no groups an array of one element is returned; that element is null. The user calling this method must have ViewGroupRight, UpdateGroupRight or AdministratorRight.

    retrieveAllUsersInGroup - Retrieves all users that have been assigned to a group. Returns an array of Users. The last element of the array is null. If there are no users an array of one element is returned; that element is null. The user calling this method must have ViewGroupRight, UpdateGroupRight or AdministratorRight.

    retrieveAllUsersNotInGroup - Retrieves all users that have not been assigned to this group. Returns an array of Users. The last element of the array is null. If there are no Users an array of one element is returned; that element is null. The user calling this method must have ViewGroupRight, UpdateGroupRight or AdministratorRight.

    retrieveAllGroupIds - Retrieves all groups ids from the system as an array of Strings. The last element of the array is null. If there are no groups ids an array of one element is returned; that element is null.

    addUserToGroup - Assigns a user to a group. The user calling this method must have UpdateGroupRight or AdministratorRight.

    removeUserFromGroup - Removes a user from a group they are assigned to. The user calling this method must have UpdateRoleRight or AdministratorRight.

    System Configuration Methods updateConfig - Updates the system configuration record. The user calling this method must have AdministratorRight and cannot be assigned to a department. Note: When performing an update only set the fields you wish to update in the Config object. The rest of the fields will be null. To update a field to become null:

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 24 of 37

    • String objects should be set to be an empty String (e.g. "") • DateTime objects should have all its members set to zero

    getConfig - Gets the system configuration record for a given host. If the Config is not found a null is returned. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    retrieveAllConfigs - Gets the system configuration for each host in the system. The last element of the array is null. If there are no Configs an array of one element is returned; that element is null. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    removeConfig - Removes the system configuration record for a given host. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    Audit Methods removeAudit - Removes an audit record from the system. Writes entire audit record to audit directory specified in web.xml file. The user calling this method must have DeleteAuditRight or AdministratorRight and not belong to a department.

    retrieveAllAudits - Retrieves all audit records from the system as an array of AuditBases. The last element of the array is null. If there are no AuditBases an array of one element is returned; that element is null. This method returns 100 audits at a time, so you must keep track of the last audit id and the last auditFT id returned if you want to get the next 100 audits. The first time you call this method pass an empty String for lastFileId and lastAuditFTId. If you do not want Internet Server audit records set lastAuditId to null. If you do not want Platform Server audit records set lastAuditFTId to null. The user calling this method must have ViewAuditRight, AdministratorRight or HelpDeskRight.

    getAudit - Gets an AuditBase from the system. If the auditId is not found a null is returned. The user calling this method must have ViewAuditRight, AdministratorRight or HelpDeskRight.

    retrieveAllAuditsForUser - Retrieves all audit records in which the user id matches transfer user id in the audit record. Returns an array of AuditBase objects. The last element of the array is null. If there are no Audits an array of one element is returned; that element is null. This method returns 100 audits at a time, so you must keep track of the last audit id returned and the last auditFT id returned if you want to get the next 100 audits. The first time you call this method pass an empty String for lastAuditId and lastAuditFTId. If you do not want Internet Server audit records set lastAuditId to null. If you do not want Platform Server audit records set lastAuditFTId to null. The user calling this method must have ViewAuditRight, AdministratorRight or HelpDeskRight.

    searchAudits - Retrieves all audit records that match the search criteria specified in the AuditBase object. Searches are only done on the following fields:

    • Audit Id • Local Transaction Id • Client File Name

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 25 of 37

    • Server File Name • Node Name • Transfer User Id • Transfer Status • From Date • To Date • Number Of Days • Department

    Set the fields in the AuditBase object that you will to search on. All other fields will be ignored. You can set from one to all the fields. Use the % character as a wildcard character. Put the From Date in the TransferStartTime member of the AuditBase object. Put the To Date in the TransferEndTime member of the AuditBase object. The results are returned as an array of AuditBase objects. The last element of the array is null. If there are no audits an array of one element is returned; that element is null. This method returns 100 audits at a time, so you must keep track of the last transfer end time returned to get the next 100 audits. The caller of this method is responsible for setting the start time and end time. If you do not set them then all of today's audit records will be returned. Audits are returned in order of the transfer end time with the most recent being first. The user calling this method must have ViewAuditRight, AdministratorRight or HelpDeskRight.

    removeAuditsOlderThanDays - Removes all audit records whose date created field is older than the number of days specified. Writes entire audit records to audit directory specified in web.xml file. The user calling this method must have DeleteAuditRight or AdministratorRight and not belong to a department.

    removeAuditsOlderThanDate - Removes all audit records whose date created field is older than the date specified. Writes entire audit records to audit directory specified in web.xml file. The user calling this method must have DeleteAuditRight or AdministratorRight and not belong to a department.

    Server Credential Methods addServerCredential - Adds a server credential to the system. Server credentials can be created for users or groups. The user calling this method must have UpdateServerCredentialRight or be a "super" administrator.

    updateServerCredential - Updates a server credentail in the system. The user calling this method must have UpdateServerCredentialRight or be a "super" administrator. Note: When performing an update only set the fields you wish to update in the ServerCredentials object. The rest of the fields will be null. To update a field to become null:

    • String objects should be set to be an empty String (e.g. "")

    removeServerCredential - Removes a server credential from the system. Server credentials can be created for users or groups. The user calling this method must have UpdateServerCredentialRight or be a "super" administrator.

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 26 of 37

    retrieveAllServerCredentials - Retrieves all ServerCredentials from the system as an array of ServerCredentials. The last element of the array is null. If there are no ServerCredentials an array of one element is returned; that element is null. The user calling this method must have UpdateServerCredentialRight, ViewServerCredentialRight or be a "super" administrator.

    getServerCredential - Gets a ServerCredential from the system. Server credentials can be created for users or groups. If the ServerCredential is not found a null is returned. The user calling this method must have UpdateServerCredentialRight, ViewServerCredentialRight or be a "super" administrator.

    searchServerCredentials - Searches for ServerCredential objects in the system. Server credentials can be created for users or groups. If the ServerCredential objects are not found a null is returned. The user calling this method must have UpdateServerCredentialRight, ViewServerCredentialRight or be a "super" administrator.

    License Key Methods addLicenseKey - Adds a license key to the system. A key can be applied to a web server or a database server. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    updateLicenseKey - Updates a license key in the system. The user calling this method must have AdministratorRight and cannot be assigned to a department. Note: When performing an update only set the fields you wish to update in the LicenseKey object. The rest of the fields will be null. To update a field to become null:

    • String objects should be set to be an empty String (e.g. "")

    removeLicenseKey - Removes a license key from the system. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    retrieveAllLicenseKeys - Retrieves all LicenseKeys from the system as an array of LicenseKeys. The last element of the array is null. If there are no LicenseKeys an array of one element is returned; that element is null. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    getLicenseKey - Gets a LicenseKey from the system. If the LicenseKey is not found a null is returned. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    Checkpoint/Restart Methods getCheckpoint - Gets a Checkpoint from the system. If the Checkpoint is not found a null is returned. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    removeCheckpoint - Removes a checkpoint from the system. The user calling this method must have AdministratorRight and cannot be assigned to a department.

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 27 of 37

    searchCheckpoints - Retrieves all checkpoint records that match the search criteria specified in the Checkpoint object. Searches are only done on the following fields:

    • File Id • User Id • Client File Name • Node Name • Transaction Id • Proxy Transaction Id • Server File Name

    Set the fields in the Checkpoint object that you will to search on. All other fields will be ignored. You can set from one to all the fields. Use the % character as a wildcard character. The results are returned as an array of Checkpoint objects. The last element of the array is null. If there are no Checkpoints an array of one element is returned; that element is null. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    retrieveAllCheckpoints - Retrieves all Checkpoints from the system as an array of Checkpoint. The last element of the array is null. If there are no Checkpoint an array of one element is returned; that element is null. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    Platform System Server Methods updateCFSrvConfig - Updates the MFT Platform System Server configuration record. The user calling this method must have AdministratorRight and cannot be assigned to a department. Note: When performing an update only set the fields you wish to update in the CFServerConfig object. The rest of the fields will be null. To update a field to become null:

    • String objects should be set to be an empty String (e.g. "") • DateTime objects should have all its members set to zero

    getCFSrvConfig - Gets the MFT Platform System Server configuration record for a given host. If the CFServerConfig is not found a null is returned. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    retrieveAllCFSrvConfigs - Gets the MFT Platform System Server configuration record. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    removeCFSrvConfig - Removes the MFT Platform System Server configuration record for a given host. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    AS2 System Server Methods updateAS2SrvConfig - Updates the MFT AS2 System Server configuration record. The user calling this method must have AdministratorRight and cannot be assigned to a department.

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 28 of 37

    Note: When performing an update only set the fields you wish to update in the AS2SrvCfg object. The rest of the fields will be null. To update a field to become null:

    • String objects should be set to be an empty String (e.g. "") • DateTime objects should have all its members set to zero

    getAS2SrvConfig - Gets the MFT AS2 System Server configuration record for a given host. If the AS2SrvCfg is not found a null is returned. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    retrieveAllAS2SrvConfigs - Gets the MFT AS2 System Server configuration record. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    removeAS2SrvConfig - Removes the MFT AS2 System Server configuration record for a given host. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    FTP System Server Methods updateFtpSrvConfig - Updates the MFT FTP System Server configuration record. The user calling this method must have AdministratorRight and cannot be assigned to a department. Note: When performing an update only set the fields you wish to update in the FTPServerConfig object. The rest of the fields will be null. To update a field to become null:

    • String objects should be set to be an empty String (e.g. "") • DateTime objects should have all its members set to zero

    getFtpSrvConfig - Gets the MFT FTP System Server configuration record for a given host. If the FTPServerConfig is not found a null is returned. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    getFTPServerStatus - Retrieves status from the MFT FTP System Server. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    retrieveAllFTPSrvConfigs - Gets the MFT FTP System Server configuration record. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    removeFTPSrvConfig - Removes the MFT FTP System Server configuration record for a given host. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    SSH System Server Methods updateSshSrvConfig - Updates the MFT SSH System Server configuration record. The user calling this method must have AdministratorRight and cannot be assigned to a department. Note: When performing an update only set the fields you wish to update in the SshServerConfig object.

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 29 of 37

    The rest of the fields will be null. To update a field to become null:

    • String objects should be set to be an empty String (e.g. "") • DateTime objects should have all its members set to zero

    getSshSrvConfig - Gets the MFT SSH System Server configuration record for current server. If the SshServerConfig is not found a null is returned. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    getSshSrvConfig - Gets the MFT SSH System Server configuration record for a given host. If the SshServerConfig is not found a null is returned. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    retrieveAllSshSrvConfigs - Gets the MFT SSH System Server configuration record. The user calling this method must have AdministratorRight and cannot be assigned to a department.

    Department Methods addDepartment - Adds a department to the system. The user calling this method must have AdministratorRight and be a super admin.

    updateDepartment - Updates a department in the system. The user calling this method must have AdministratorRight and be a super admin. Note: When performing an update only set the fields you wish to update in the Department object. The rest of the fields will be null. To update a field to become null:

    • String objects should be set to be an empty String (e.g. "")

    removeDepartment - Removes a department from the system. The user calling this method must have AdministratorRight and be a super admin.

    retrieveAllDepartments - Retrieves all Departments from the system as an array of Departments. The last element of the array is null. If there are no Departments an array of one element is returned; that element is null.

    getDepartment - Gets a Department from the system. If the Department is not found a null is returned.

    System Information Methods getProductNameVersion - Gets the MFT product name, version number and build number.

    getCopyrightInfo - Gets the copyright information for MFT.

    getDailyStatistics - Gets the daily statistics of MFT transfers.

    getServerStatus - Gets the server status for servers configured to MFT.

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 30 of 37

    Transfer Bank Methods addTransferToBank - Adds a Platform Server Transfer to the bank. The user calling this method must have FTAdminRight.

    updateTransferInBank - Updates a Platform Server Transfer from the bank. The user calling this method must have FTAdminRight.

    deleteTransferFromBank - Deletes a Platform Server Transfer from the bank. The user calling this method must have FTAdminRight.

    getTransferFromBank - Gets a Platform Server Transfer from the bank. The user calling this method must have FTAdminRight.

    retrieveAllTransfersFromBank - Retrieves all Platform Server Transfers from the bank as an array of Transfers. The last element of the array is null. If there are no transfers an array of one element is returned; that element is null.

    submitTransferToServer - Submits a Platform transfers from the bank to a server for execution. The user calling this method must have FTAdminRight and FTTransferRight.

    Node Methods addNodeToBank - Adds a node to the bank. The user calling this method must have FTAdminRight.

    updateNodeInBank - Updates a node from the bank. The user calling this method must have FTAdminRight.

    deleteNodeFromBank - Deletes a node from the bank. The user calling this method must have FTAdminRight.

    getNodeFromServer - Gets the specified node from the server. If node does not exist, an exception is thrown. The user calling this method must have FTAdminRight.

    retrieveAllNodesFromServer - Gets all the configured node from the specified server as an array of Nodes. The last element of the array is null. If there are no nodes an array of one element is returned; that element is null. The user calling this method must have FTAdminRight.

    addNodeToServer - Adds a node to a server. The user calling this method must have FTAdminRight.

    deleteNodeFromServer - Deletes a node from the server. The user calling this method must have FTAdminRight.

    retrieveAllNodeFTsFromBank - Gets all the configured node from the bank as an array of Nodes. The last element of the array is null. If there are no nodes an array of one element is returned; that element is null. The user calling this method must have FTAdminRight.

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 31 of 37

    getNodeFromBank - Gets the specified node from the bank. If node does not exist, an exception is thrown. The user calling this method must have FTAdminRight.

    Collector Methods collectorStart - Starts the collector.

    collectorStop - Stops the collector.

    getCollectorStatus - Retrieves status from the collector.

    Alert Methods addAlert - Add an alert to the system. The user calling this method must have AdministratorRight or UpdateAlertRight. Note: Department admin can only add alert for his/her department without run command or run java class defined.

    updateAlert - Update an alert to the system. The user calling this method must have AdministratorRight or UpdateAlertRight. Note: Department admin can only update alert defined for his/her department without run command or run java class in the alert.

    removeAlert - Remove an alert from the system. The user calling this method must have AdministratorRight or UpdateAlertRight. Note: Department admin can only remove alert defined for his/her department without run command or run java class in the alert.

    getAlert - Get an alert from the system. The user calling this method must have AdministratorRight or Update/ViewAlertRight. Note: Department admin can only get alert applied for his/her department.

    retrieveAllAlerts - Retrieve all alerts from the system as an array of Alerts. The last element of the array is null. If there are no alerts an array of one element is returned; that element is null.. The user calling this method must have AdministratorRight or Update/ViewAlertRight. Note: Department admin can only get alerts applied for his/her department.

    Profile Methods addProfileToBank - Adds a profile to the bank. The user calling this method must have FTAdminRight.

    updateProfileInBank - Updates a profile from the bank. The user calling this method must have FTAdminRight.

    deleteProfileFromBank - Deletes a profile from the bank. The user calling this method must have FTAdminRight.

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 32 of 37

    getProfileFromBank - Gets the specified profile from the bank. If node does not exist, an exception is thrown. The user calling this method must have FTAdminRight.

    retrieveAllProfilesFromBank - Gets all the configured profiles from the bank as an array of Profiles. The last element of the array is null. If there are no profiles an array of one element is returned; that element is null. The user calling this method must have FTAdminRight.

    retrieveAllProfilesFromServer - Gets all the configured profiles from the specified server as an array of Profiles. The last element of the array is null. If there are no profiles an array of one element is returned; that element is null. The user calling this method must have FTAdminRight.

    addProfileToServer - Adds a profile to a server. The user calling this method must have FTAdminRight.

    deleteProfileFromServer - Deletes a profile from the server. The user calling this method must have FTAdminRight.

    Audit Bank Methods addSearchAuditToBank - Adds an audit search to the bank. The user calling this method must have the HelpDeskRight or be a superAdministrator.

    updateSearchAuditInBank - Updates an audit search from the bank. The user calling this method must have the HelpDeskRight or be a superAdministrator.

    deleteSearchAuditFromBank - Deletes an audit search from the bank. The user calling this method must have HelpDeskRight or be a superAdministrator.

    getSearchAuditFromBank - Gets the specified audit search from the bank. If audit does not exist, an exception is thrown. The user calling this method must have HelpDeskRight or be a superAdministrator.

    retrieveAllSearchAuditsFromBank - Gets all the configured audit searches from the bank as an array of SearchAudits. The last element of the array is null. If there are no audit searches an array of one element is returned; that element is null. The user calling this method must have

    searchAuditInServer - Retrieves all audit records in which the server id matches server in the audit record. Returns an array of AuditBase objects. The last element of the array is null. If there are no Audits an array of one element is returned; that element is null. This method returns 100 audits at a time, so you must keep track of the last audit id returned and the last auditFT id returned if you want to get the next 100 audits. The first time you call this method pass an empty String for lastAuditId and lastAuditFTId. If you do not want Internet Server audit records set lastAuditId to null. If you do not want Platform Server audit records set lastAuditFTId to null. The user calling this method must have ViewAuditRight, AdministratorRight or HelpDeskRight.

    Alert Audit Methods getAlertAudit - Gets an AuditBase from the system. If the auditId is not found a null is returned. The user calling this method must have ViewAuditRight, AdministratorRight or HelpDeskRight.

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 33 of 37

    removeAlertAudit - Removes an audit record from the system. Writes entire audit record to audit directory specified in web.xml file. The user calling this method must have DeleteAuditRight or AdministratorRight and not belong to a department.

    removeAlertAuditsOlderThanDate - Removes all audit records whose date created field is older than the date specified. Writes entire audit records to audit directory specified in web.xml file. The user calling this method must have DeleteAuditRight or AdministratorRight and not belong to a department.

    removeAlertAuditsOlderThanDays - Removes all audit records whose date created field is older than the number of days specified. Writes entire audit records to audit directory specified in web.xml file. The user calling this method must have DeleteAuditRight or AdministratorRight and not belong to a department.

    retrieveAllAlertAudits - Retrieves all audit records from the system as an array of AuditBases. The last element of the array is null. If there are no AuditBases an array of one element is returned; that element is null. This method returns 100 audits at a time, so you must keep track of the last audit id and the last auditFT id returned if you want to get the next 100 audits. The first time you call this method pass an empty String for lastFileId and lastAuditFTId. If you do not want Internet Server audit records set lastAuditId to null. If you do not want Platform Server audit records set lastAuditFTId to null. The user calling this method must have ViewAuditRight, AdministratorRight or HelpDeskRight.

    searchAlertAudits -

    Retrieves all audit records that a match the search criteria specified in the AuditBase object. Searches are only done on the following fields:

    • Audit Id • Local Transaction Id • Client File Name • Server File Name • Node Name • Transfer User Id • Transfer Status • From Date • To Date • Number Of Days • Department

    Set the fields in the AuditBase object that you will to search on. All other fields will be ignored. You can set from one to all the fields. Use the % character as a wildcard character. Put the From Date in the TransferStartTime member of the AuditBase object. Put the To Date in the TransferEndTime member of the AuditBase object. Put the Number Of Days in the NumberOfDays member of the AuditBase object. The results are returned as an array of AuditBase objects. The last element of the array is null. If there are no audits an array of one element is returned; that element is null. This method returns 100 audits at a time, so you must keep track of the last audit id returned and the last auditFT id returned if you

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 34 of 37

    want to get the next 100 audits. The first time you call this method pass an empty String for lastAuditId and lastAuditFTId. If you do not want Internet Server audit records set lastAuditId to null. If you do not want Platform Server audit records set lastAuditFTId to null. The user calling this method must have ViewAuditRight, AdministratorRight or HelpDeskRight.

    Key Methods addKey - Adds a PGP key to the system. The user calling this method: case 1: for a user/server key must be a "super" administrator or have a UpdatePGPKeyRight; case 2: for a system key must be a "super" administrator or have a UpdatePGPSystemKeyRight; case 3: no rights needed if adding own user key.

    updateKey - Updates a PGP key in the system. The user calling this method: case 1: for a user/server key must be a "super" administrator or have a UpdatePGPKeyRight; case 2: for a system key must be a "super" administrator or have a UpdatePGPSystemKeyRight; case 3: no rights needed if adding own user key. If this is a user/server key and the calling user is assigned to a department they must have UpdatePGPKeyRight (they can only update PGP keys in their own department. Note: When performing an update only set the fields you wish to update in the Key object. The rest of the fields will be null. To update a field to become null:

    • String objects should be set to be an empty String (e.g. "") • DateTime objects should have all its members set to zero

    removeKey - Removes a PGP key from the system. The user calling this method: case 1: for a user/server key must be a "super" administrator or have a UpdatePGPKeyRight; case 2: for a system key must be a "super" administrator or have a UpdatePGPSystemKeyRight.

    retrieveAllUserServerKeys - Retrieves all user/server keys from the system as an array of Key. The last element of the array is null. If there are no Keys an array of one element is returned; that element is null. This method returns 100 keys at a time, so you must keep track of the last key id returned if you want to get the next 100 keys. The first time you call this method pass in empty String for lastRecordId. The user calling this method must have ViewPGPKeyRight, UpdatePGPKeyRight or must be a "super" administrator.

    retrieveAllPrivateKeys - Retrieves all private keys from the system as an array of Key. The user calling this method must have UpdatePGPSystemKeyRight or must be a "super" administrator.

    retrieveAllPrivateKeyIds - Retrieves all private key ids from the system as an array of Key. Only the key id and description are returned. No rights are required.

    getSystemPublicKey - Returns public key from the system as an array of byte. The user calling this method does NOT have to have any rights (there is no restritction on getting the CFI public key).

    getUserKey - Gets a Key from the system. If the Key is not found a null is returned. The user calling this method must have UpdatePGPKeyRight, ViewPGPKeyRight or be a "super" administrator. The super admin can get any key in the system. The department admin can only get a key that has been assigned to his/her department.

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 35 of 37

    getServerKey - Gets a Key from the system. If the Key is not found a null is returned. The user calling this method must have UpdatePGPKeyRight, ViewPGPKeyRight or be a "super" administrator. The super admin can get any key in the system. The department admin can only get a key that has been assigned to his/her department.

    getSystemKey - Gets a System Key from the system. If the System Key is not found a null is returned. The user calling this method must have UpdatePGPSystemKeyRight or be a "super" administrator.

    searchKeys - Retrieves all key records that match the search criteria specified in the Key object. Searches are only done on the following fields:

    • Key Name

    Set the fields in the Key object that you would like to search on. All other fields will be ignored. Use the % character as a wildcard character. The results are returned as an array of Key objects. The last element of the array is null. If there are no keys an array of one element is returned; that element is null. This method returns 100 keys at a time, so you must keep track of the last record to get the next 100 keys. The user calling this method must have ViewPGPKeyRight, UpdatePGPKeyRight or be a "super" administrator.

    validateAddKey - Determines if the key is valid

    validateUpdateKey - Determines if the key is valid

    getPublicSystemKeyById - Gets a public System Key from the system by the PGP key id. If the System Key is not found a null is returned. The user calling this method must have UpdatePGPSystemKeyRight or be a "super" administrator.

    getSSHSystemKeyById - Gets a SSH System Key By Id Key from the system by the SSH key id. If the SSH System Key is not found a null is returned. The user calling this method must have systemSSHKeyRights or be a "super" administrator.

    setDefaultSystemKey - Sets a default System Key for the system by the PGP key id. The user calling this method must have UpdatePGPSystemKeyRight or be a "super" administrator.

    getCertFromSSHKey - Returns Certificate from the SSH system key as an array of byte. The user calling this method does NOT have to have any rights (There is no restritction on getting the Certificate from the SSH system key).

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 36 of 37

    Appendix B - FTService Class The follow methods are available in the FTService Class. Methods can be categorized by their different actions.

    Class Control Methods Session Methods

    Password Methods File Methods

    Audit Methods System Information Methods

    For more details on the method parameters and return values, refer to the java docs.

    Class Control Methods FTService - Constructor

    init - Called by servlet container when an instance of FTService is allocated. Reading DBDriver, DBConn, DBUser, DBPass, tmpTimeOut, MessageDir, and TraceDir parameters from web.xml and initializes sec_context, servletContext, DBDriver, DBConn, DBUser, DBPass, tmpTimeOut, MessageDir, and TraceDir member variables.

    destroy - Deallocate the instance of the FileTransfer Web Service

    Session Methods getSession - Called by FileTransfer Web Service Client to generate new SessionID for user's session, insert SessionID into MFT DB, delete all expired sessionIDs from MFT DB, and pass generated SessionID back to the FileTransfer Web Service Client.

    closeSession - Called by FileTransfer Web Service Client to close session and delete SessionID entry in MFT DB

    validateSession - Called internally by FileTransfer Web Service to validate sessionID

    Password Methods getPWDExpiringDays - Called by FileTransfer Web Service Client to decide how many days before the password expiring

    validateExistingPassword - Called by FileTransfer changePassword function to validate user's password in MFT DB

    changePassword - Called by FileTransfer Web Service Client to change user's password in MFT DB

  • © 2010 TIBCO Software Inc. All Rights Reserved Page 37 of 37

    File Methods getAllFilesForUser - Called by FileTransfer Web Service Client to obtain from MFT DB array of FileInfo objects available for authorized userID and pass array of FileInfo objects back to the FileTransfer Web Service Client.

    getFile - Called by FileTransfer Web Service Client to obtain FileInfo object from MFT DB available for authorized userID and pass the FileInfo object back to the FileTransfer Web Service Client.

    Audit Methods getAllAuditRecordsForUser - Called by FileTransfer Web Service Client to obtain from MFT DB array of Audit objects available for authorized userID and pass array of Audit objects back to the FileTransfer Web Service Client.

    getAuditRecordsNumber - Called by FileTransfer Web Service Client to obtain from MFT DB array[recordsNumber] with most recent transactions of Audit objects available for authorized userID and pass array of Audit objects back to the FileTransfer Web Service Client.

    getAuditRecord - Called by FileTransfer Web Service Client to obtain Audit object from MFT DB available for authorized userID and pass it back to the FileTransfer Web Service Client.

    System Information Methods getMessage - Called by FileTransfer Web Service Client to obtain Message object from MFT DB according to provided message ID and pass it back to the FileTransfer Web Service Client.

    getProductNameVersion - Gets the product name, version number and build number.

    getCopyrightInfo - Gets the copyright information for the product.

    serviceControl - Use this call to perfrom actions on remote Command Center FTP or SSH servers. The supported actions ar