Dollar Universe Web Services User Guide
Transcription
Dollar Universe Web Services User Guide
Dollar Universe Web Services User Guide Version: 6.6.01 Publication Date: 2016-02 Automic Software GmbH ii | Copyright Copyright Automic® and the Automic logo® are trademarks owned by Automic Software GmbH (Automic). All such trademarks can be used by permission only and are subject to the written license terms. This software/computer program is proprietary and confidential to Automic Software and is only available for access and use under approved written license terms. This software/computer program is further protected by copyright laws, international treaties and other domestic and international laws and any unauthorized access or use gives rise to civil and criminal penalties. Unauthorized copying or other reproduction of any form (in whole or in part), disassembly, decompilation, reverse engineering, modification, and development of any derivative works are all strictly prohibited, and any party or person engaging in such will be prosecuted by Automic Software. No liability is accepted for any changes, mistakes, printing or production errors. Reproduction in whole or in part without permission is prohibited. © Copyright Automic Software GmbH. All rights reserved. Other names may be trademarks of their respective holders. Dollar Universe Web Services User Guide | iii Contents 1 Release Notes ...................................................................................................................... 5 2 Introduction .......................................................................................................................... 6 2.1 Who Should Read this Manual ....................................................................................... 6 2.2 Related Information Sources .......................................................................................... 6 2.2.1 Organizations and Consortia .................................................................................... 6 2.2.2 Web Services Technology ........................................................................................ 6 2.2.3 Java and XML Technology ....................................................................................... 7 2.2.4 Servlet Containers, Web Container and J2EE Technology ..................................... 7 2.2.5 Resources................................................................................................................. 7 3 Overview ............................................................................................................................... 8 3.1 Definitions ....................................................................................................................... 8 3.2 General Scope of Dollar Universe Web Services ........................................................... 8 3.3 Dollar Universe Web Service Components .................................................................... 9 3.4 What’s new? ................................................................................................................. 10 3.4.1 Security ................................................................................................................... 10 3.4.2 Features .................................................................................................................. 11 3.5 Compatibility ................................................................................................................. 12 4 Installation .......................................................................................................................... 14 4.1 Prerequisites ................................................................................................................. 14 4.2 Packaging ..................................................................................................................... 14 4.3 Deployment on Apache Tomcat ................................................................................... 14 4.4 WSDL Location ............................................................................................................. 14 4.5 Web Services Configuration ......................................................................................... 14 4.6 Licenses ........................................................................................................................ 15 5 Dollar Universe Web Services .......................................................................................... 16 5.1 Data Types ................................................................................................................... 16 5.1.1 Connection objects ................................................................................................. 16 5.1.2 Filters ...................................................................................................................... 18 5.1.3 Identifiers ................................................................................................................ 24 5.1.4 Dollar Universe Object Types ................................................................................. 27 5.2 Available Operations ..................................................................................................... 33 5.2.1 General ................................................................................................................... 33 5.2.2 Objects Lists ........................................................................................................... 34 5.2.3 Launches ................................................................................................................ 35 5.2.4 Executions .............................................................................................................. 40 5.2.5 Notes ...................................................................................................................... 45 5.2.6 Runbooks................................................................................................................ 45 5.2.7 Outage Windows .................................................................................................... 46 5.2.8 Events ..................................................................................................................... 47 5.2.9 Engines ................................................................................................................... 48 iv | Contents 5.2.10 Batch Queues ......................................................................................................... 49 6 Typical Usage Scenarios................................................................................................... 51 6.1 In Java using the wsimport command for JAX-WS applications .................................. 51 6.2 In Java Using CXF and Spring ..................................................................................... 52 6.3 WSDL2Java generated Client ...................................................................................... 52 6.4 Other Frameworks and languages ............................................................................... 53 7 Error Handling .................................................................................................................... 54 7.1 DuwsException ............................................................................................................. 54 7.2 SessionTimeoutException ............................................................................................ 56 8 Troubleshooting ................................................................................................................. 57 8.1 Increase the trace level................................................................................................. 57 8.2 Verify Deployment ........................................................................................................ 58 8.3 User Authentication Refused by UVMS or Dollar Universe.......................................... 58 9 Appendix ............................................................................................................................. 59 9.1 Nodes Status Type Strings ........................................................................................... 59 9.2 Job Runs Status Type Strings ...................................................................................... 59 9.3 Outage Type Strings ..................................................................................................... 60 9.4 Task Type Codes .......................................................................................................... 60 9.5 Engine Codes ............................................................................................................... 60 9.6 Date and Time Formats ................................................................................................ 61 9.7 Origin and Type Codes for Variables ........................................................................... 61 10 About Automic Software, Community and Services ................................................ 62 10.1 Automic Software Company ......................................................................................... 62 10.2 Automic Community...................................................................................................... 62 10.3 Download Center .......................................................................................................... 62 10.4 Technical Support ......................................................................................................... 63 10.5 Training and Services ................................................................................................... 63 Chapter 1 Release Notes | 5 1 Release Notes The following is the change history. Information on bug-fixes and known errors is available in the Workload Automation Release Notes and by contacting Automic technical support. Date Key Features 2014-11 Dollar Universe user manuals change their look to integrate to the Automic world. 6 | Chapter 2 Introduction 2 Introduction Welcome to the Dollar Universe Web Services User Guide! This manual details the installation, configuration and use of Dollar Universe Web Services. Dollar Universe Web Services supply methods of interaction over the Web between the Dollar Universe Server and a variety of client applications written in a variety of programming languages. Figure 1: SOAP Other systems interact with Web Services following the specifications of the WDSL. The systems use SOAP messages, which are conveyed using HTTP with an XML serialization in conjunction with other Web-related standards. Following the JAX-WS semantics specifications to develop, publish and consume web services, this application supports WS - Basic Profile 1.1. 2.1 Who Should Read this Manual This manual addresses the needs of the person(s) who will install, configure and use Dollar Universe Web Services. Dollar Universe Web Services are intended for developers and IT consultants who need to provide end-users with customized tools related to their business processes. 2.2 Related Information Sources It is assumed the reader is familiar with Dollar Universe and its concepts together with Web servers and HTTP protocol, SSL, XML, WSDL, UDDI, SOAP protocol through Visual Basic, C++, C#, Java programming or any other language chosen for the development of client applications. 2.2.1 Organizations and Consortia World Wide Web consortium (W3C): http://www.w3.org/ OASIS consortium: http://www.oasis-open.org/home/index.php/ 2.2.2 Web Services Technology Extensible Markup Language (XML): http://www.w3.org/XML/ Simple Object Access Protocol (SOAP): http://www/w3.org/TR/SOAP/ Web Services Description Language (WSDL) 1.1: http://www/w3.org/TR/wsdl.html/ Universal Description, Discovery and Integration (UDDI): http://uddi.org/specification.html CXF Web Services: http://cxf.apache.org/docs/ Chapter 2 Introduction | 7 2.2.3 Java and XML Technology The Java Language Specification, Second Edition: http://java.sun.com/docs/books/jls/index.html JSR-000101 Java™ APIs for XML-based RPC: http://jcp.org/aboutJava/communityprocess/first/jsr101/index.html JSR 000109: Implementing Enterprise Web Services JSR 000921: Implementing Enterprise Web Services 1.1 JSR 000151: Java™ 2 Platform, Enterprise Edition 1.4 (J2EE 1.4) Specification JSR 000154: Java™ Servlet 2.4 Specification 2.2.4 Servlet Containers, Web Container and J2EE Technology J2EE 1.4 Compatible Implementations: http://java.sun.com/j2ee/compatibility.html/ Java 2 Enterprise Edition (J2EE): http://java.sun.com/j2ee/ 2.2.5 Resources Enabling a third-party JAX-WS application in WebSphere Application Server V7 Apache CXF 8 | Chapter 3 Overview 3 Overview 3.1 Definitions Web SERVICES make software applications available across the World Wide Web, providing business logic to client applications. Web Services respect the standard communication mechanisms published by the World Wide Web Consortium (W3C). Such standards allow customer applications to invoke Web Services over Internet or intranet networks on all operating systems and platforms of the consumer application and the invoked services. Consult the W3C web site for more details: http://www.w3.org/. Web Services are defined by a list of public interfaces which provide the functionality and are located by an URI (Uniform Resource Identifier). The description of a Web service is contained in a WSDL file (Web service Description Language) in XML format. Application servers generally accommodate Web Services that can be discovered with the help of public or private UDDI registries. Communications between client applications (that can themselves be Web Services) and remote Web services are based on protocols which use XML-based messages; the most common of which is SOAP (Simple Object Access Protocol). SOAP defines a standard for sending and receiving messages over the Internet using the HTTP/HTTPS protocol. 3.2 General Scope of Dollar Universe Web Services Dollar Universe Web Services is the service-oriented interface to the ORSYP job scheduler Dollar Universe. The general scope of this application is to supply operations that involve Dollar Universe object manipulation or monitoring through the use of a set of public API methods. With Dollar Universe Web Services the user can create their own applications to monitor and manage IT operations on Dollar Universe instances. At the same time, it offers simplified deployment and compatibility with the latest versions of Dollar Universe. Dollar Unvierse Web Services also enables easy interconnection of Dollar Universe job flow management capabilities with end-user software or other business processes. The following figure depicts Dollar Universe Web Services architecture providing access to Dollar Universe for IT operations monitoring. Chapter 3 Overview | 9 Figure 2: Dollar Universe Web Services Architecture 3.3 Dollar Universe Web Service Components The components involved in the architecture are: An application server, which provides full support for both clients and Web Service endpoints (not delivered by ORSYP) Dollar Universe Web Services delivered by ORSYP Dollar Universe standard installation(s) UniViewer Management Server delivered by ORSYP A Dollar Universe end user request will follow the route: A SOAP message is sent by the client application to an HTTP (or HTTPS) port on the application server hosting Dollar Universe Web Services. The request is interpreted by the Web server and forwarded to the Web Services container. The Web service container routes the request to the appropriate Dollar Universe Web Services endpoint. The Web service verifies if the client is authenticated on UVMS or if the session timeout has expired. The Web service contacts the appropriate Dollar Universe I/O (data) Server. The action is received by the I/O (data) Server and performed by Dollar Universe components. The invoked Web Service builds the SOAP response with the received results and returns the message to the invoker. 10 | Chapter 3 Overview Figure 3: Dollar Universe Web Services Installation Schema 3.4 What’s new? 3.4.1 Security A new addition to version 4 and later in comparison with the previous versions is the enhanced security. In consequence, a user must identify themself on the UVMS with a login and password to gain access to any web service operation and to all Dollar Universe nodes declared on the Management Server. The allowed access rights are the ones attributed to the login user. In the case of Dollar Universe V5, a user proxy for the login must be declared on the company node. For Dollar Universe V6, all the user roles are synchronized automatically between the scheduler and the UniViewer Management Server. If LDAP authentication and AUTO-REGISTRATION (of LDAP users) has been activated on the UniViewer Management Server, valid LDAP users will be created automatically in the Logins list with default roles. As a result, two authentication methods were added and work based on the following principle: Chapter 3 Overview | 11 Figure 4: Authentication Schema The authentication is done by sending an object type UvmsContext that contains the following information: UVMS host UVMS port UVMS user UVMS user password The logout operation serves only as resource cleaning and is optional for the user. The client token and the resources attached to it will be cleaned automatically when the client session time out period has elapsed. 3.4.2 Features In Dollar Universe Server version 6, several functionalities have been added to design and monitor scheduling objects. Some examples of these changes are: The name of a task New actions available for monitoring New types of objects: Notes, Runbooks, Resource Logs, new types of Exceptions and Alerts This affects the development of the following specific DU6 services: acknowledgeExecution(ContextHolder, LaunchId) bypassLaunchConditionCheck(ContextHolder, LaunchId) forceCompleteLaunch(ContextHolder, LaunchId) getRunBookExternalFile(ContextHolder, RunBook) getRunBooks(ContextHolder, RunBookFilter) getRunNotes(ContextHolder, RunNoteFilter) getScriptResourceLog(ContextHolder, ExecutionId) 12 | Chapter 3 Overview restartEngine(ContextHolder, Engine) skipExecution(ContextHolder, LaunchId) unacknowledgeExecution(ContextHolder, LaunchId) restartEngine(ContextHolder, Engine) In addition to the new DU6 methods, several new functionalities have been added to the Web Services package. The new features for all DU versions are: updateLaunch(ContextHolder, Launch) holdLaunch(ContextHolder, LaunchId) releaseLaunch(ContextHolder, LaunchId) rerunExecution(ContextHolder, ExecutionId, startDate, endDate, batchQueue, user, step, byPassCheck) stopEngine(ContextHolder, Engine) startEngine(ContextHolder, Engine) getListOutage(ContextHolder, OutageFilter) createOutageWindow(ContextHolder, OutageWindow) deleteOutageWindow(ContextHolder, OutageWindow) startQueue(ContextHolder, Queue) stopQueue(ContextHolder, Queue) resetQueue(ContextHolder, Queue) 3.5 Compatibility Dollar Universe Web services v4 and later is not compatible with earlier versions due to the UVMS authentication and modifications to the bean structures. For example, the addition of new properties to Dollar Universe objects types and filters and the standardization of execution and launch statuses. In Dollar Universe Web services v4 and later, the main bean structures have not been significantly modified. However, there have been several changes to the WSDL structure. The SOAP message protocol for messages sent to and from DU Web Services now uses a document encoding style, a literal formatting style and the operation parameters. They are all elements wrapped inside a top-level element named after the operation. Example: <xs:complexType name="getListOutage"> <xs:sequence> <xs:element form="qualified" minOccurs="0" type="tns:contextHolder" /> <xs:element form="qualified" minOccurs="0" type="tns:outageFilter" /> </xs:sequence> </xs:complexType> <xs:complexType name="outageFilter"> <xs:sequence> <xs:element form="qualified" minOccurs="0" /> <xs:element form="qualified" minOccurs="0" type="xs:string" /> </xs:sequence> </xs:complexType> name="context" name="outage" name="type" type="xs:string" name="target" Chapter 3 Overview | 13 <xs:complexType name="getListOutageResponse"> <xs:sequence> <xs:element maxOccurs="unbounded" minOccurs="0" name="return" type="tns:outageWindow" /> </xs:sequence> </xs:complexType> 14 | Chapter 4 Installation 4 Installation 4.1 Prerequisites For more information on supported operating systems and compatibility with other ORSYP products, refer to the compatibility matrix which can be found on the Customer Service website in the content tab. 4.2 Packaging Dollar Universe Web Services V6 is available in .war format. 4.3 Deployment on Apache Tomcat The only action to perform on this application server is to copy the .war file into the deployment directory. The Application server will automatically deploy and install the web services and publish the WSDL. 4.4 WSDL Location The Web Services are accessible to any client through the following WSDL location: http://<host>:<port>/duwebservices/DuwsSEI?wsdl Where: host is the hostname of the Web server port is the TCP/IP port used by the Web server to receive HTTP requests 4.5 Web Services Configuration The configuration parameters of Dollar Universe Web Services are represented by the following list described in the config.properties file: #the log4j.xml path location (relative to WEB-INF) com.orsyp.duws.log.rel.path = config/log4j.xml #location of the duws.log file (relative to WEB-INF) com.orsyp.duws.logs.dir = logs #Session connection timeout (in seconds) com.orsyp.duws.token.time.out = 6000 #the license file path location (relative to WEB-INF) com.orsyp.duws.lic.file = u_fali01.txt The configuration files config.properties and log4j.xml as well as the license file u_fali01.txt can be found in the WEB-INF/config web application deployment subdirectory. Chapter 4 Installation | 15 The log file used for troubleshooting any problems with the Dollar Universe Web Service operations will be logged in the duws.log file located by default in the WEB-INF/logs directory. 4.6 Licenses The file specified by the property com.orsyp.duws.lic.file must contain licenses for the Dollar Universe Web services host name, the product code WSE and version 6. For example, the following cases are possible: with wildcard # web service host product_code * DOLLAR_UNIVERSE:WSE 1234567890DFGZUA65 license_code release exp_date 6 20121231 license_code release exp_date 6 20121231 license_code with wildcard and suffix # web service host product_code *.somegroup.net DOLLAR_UNIVERSE:WSE 1234567890DFGZUA85 release exp_date 6 20121231 or directly the host name # web service host product_code MARS DOLLAR_UNIVERSE:WSE 1234567890DFGZUA75 The administrator can manually edit the file to modify licenses. The licenses will be taken into account dynamically. 16 | Chapter 5 Dollar Universe Web Services 5 Dollar Universe Web Services 5.1 Data Types 5.1.1 Connection objects 5.1.1.1 UvmsContext This object is used to identify the client on the UniViewer Management Server. <xs:complexType name="uvmsContext"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="uvmsHost" type="xs:string"/> <xs:element form="qualified" name="uvmsPort" type="xs:int"/> <xs:element form="qualified" minOccurs="0" name="uvmsUser" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="uvmsPassword" type="xs:string"/> </xs:sequence> </xs:complexType> Where: uvmsHost is the host name of the UVMS uvmsPort is the port of the UVMS uvmsUser is the login user uvmsPassword is the login password 5.1.1.2 ContextHolder This object type represents the DU connection context containing both security and connection parameters. <xs:complexType name="contextHolder"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="token" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="context" type="tns:context"/> </xs:sequence> </xs:complexType> Where: token is the session identifier of the client, context is the object containing the description of the Dollar Universe Environment to connect to 5.1.1.3 Context The context represents the container of the Dollar Universe Environment. <xs:complexType name="context"> <xs:sequence> Chapter 5 Dollar Universe Web Services | 17 <xs:element form="qualified" minOccurs="0" name="envir" type="tns:envir"/> </xs:sequence> </xs:complexType> 5.1.1.4 Envir This element describes the Dollar Universe environment where the action will be performed via the web service. This object must be set by the client invoking the web service. A list of available Dollar Universe environments found on the UniViewer Management Server can be requested by calling the “Envir[] getDUEnvironmentList(String clientKey, UvmsNodeFilter nodeFilter)” service method. In the WSDL file, the Dollar Universe environment is defined as follows: <xs:complexType name="envir"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="company" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="node" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="area" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="status" nillable="true" typ e="tns:envirStatus"/> <xs:element form="qualified" minOccurs="0" name="version" nillable="true" ty pe="xs:string"/> </xs:sequence> </xs:complexType> Where: company is the Dollar Universe company name (6 uppercase characters), area must be ‘A’ for Application, ‘I’ for Integration, ‘S’ for Simulation or ‘X’ for Production, node is the Dollar Universe node name (maximum length is 10 characters, case sensitive). envirStatus represents the server status at the time the “getDUEnvironmentList” method request was done and it can take one of the following values or null. o CONNECTING o CONNECTED o FAILED o BROKEN o STOPPED o UNREACHABLE o NODE_UNREACHABLE o IO_UNREACHABLE o CONNECTED_WARNING o UNKNOWN o NO_UPWARDS_MESSAGE o BEING_COMPUTED version corresponds to the environment version 18 | Chapter 5 Dollar Universe Web Services 5.1.1.5 duwsVersion This object is used to retrieve the Dollar Universe Web Services version. <xs:complexType name="duwsVersion"> <xs:sequence> <xs:element form="qualified" name="version" type="xs:int"/> <xs:element form="qualified" name="build" type="xs:int"/> <xs:element form="qualified" minOccurs="0" name="fullVersion" type="xs:strin g"/> </xs:sequence> </xs:complexType> Where: version is the Dollar Universe Web Services version, for example "4001" refers to version 4.0.01 build is the Dollar Universe Web Services build number with the date format YYYYMMDD, for example 20120925 fullVersion contains the product name, version and build, for example: “Dollar Universe Web Services v<version> build <build>” 5.1.2 Filters Filters are available for operations that retrieve Dollar Universe object lists. The available filters are defined in the WSDL file. Filter formats are described in the table below: Member Format Node String with a maximum length of 10 for DU v5.x or 256 for DU v6.x. Permitted values: <string_filter>[*] or *. Company String wth a maximum length of 6. Permitted values: <string_filter>[*] or *. Mu String with a maximum length of 10 for DU v5.x or 256 for DU v6.x. Permitted values: <string_filter>[*] or *. Task String with a maximum length of 10 for DU v5.x or 256 for DU v6.x. Permitted values: <string_filter>[*] or *. Uproc String with amaximum length of 10 for DU v5.x or 256 for DU v6.x. Permitted values: <string_filter>[*] or *. Session String with a maximum length of 10 for DU v5.x or 256 for DU v6.x. Permitted values: <string_filter>[*] or *. Task Version numerical string of 3 numbers with leading zeros or “*” Session Version numerical string of 3 numbers with leading zeros or “*” Uproc Version numerical string of 3 numbers with leading zeros or “*” User or Submission Account String with a maximum length of 10 for DU v5.x or 256 for DU v6.x. Permitted values: <string_filter>[*] or *. creationDateMin String with a maximum length of 8. Format is YYYYMMDD. creationDateMax String wth a maximum length of 8. Format is YYYYMMDD. creationHourMin String with a maximum length of 6. Format is HHMMSS. Chapter 5 Dollar Universe Web Services | 19 Member Format creationHourMax String with a maximum length of 6. Format is HHMMSS. updateDateMin String with a maximum length of 8. Format is YYYYMMDD. updateDateMax String with a maximum length of 8. Format is YYYYMMDD. updateHourMin String with a maximum length of 6. Format is HHMMSS. updateHourMax String with a maximum length of 6. Format is HHMMSS. beginDateMin String with a maximum length of 8. Format is YYYYMMDD. beginDateMax String with a maximum length of 8. Format is YYYYMMDD. beginHourMin String with a maximum length of 6. Format is HHMMSS. beginHourMax String with a maximum length of 6. Format is HHMMSS. endDateMin String with a maximum length of 8. Format is YYYYMMDD. endDateMax String with a maximum length of 8. Format is YYYYMMDD. endHourMin String with a maximum length of 6. Format is HHMMSS. endHourMax String with a maximum length of 6. Format is HHMMSS. processingDate String with a maximum length of 8. Format is YYYYMMDD. A value of "*" means "All processing dates". A value of "00000000" means "No processing date". numlancMin numerical string with leading zeros (length of 7 for DU v5.x) numlancMax numerical string with leading zeros (length of 7 for DU v5.x) numsessMin numerical string with leading zeros (length of 7 for DU v5.x) numsessMax numerical string with leading zeros (length of 7 for DU v5.x) numprocMin numerical string with leading zeros (length of 7 for DU v5.x) numprocMax numerical string with leading zeros (length of 7 for DU v5.x) Status A string mixture of the following statuses: For launches: DISABLED LAUNCH_WAIT EVENT_WAIT TIME_OVERRUN For executions: EVENT_WAIT TIME_OVERRUN PENDING STARTED RUNNING COMPLETION_IN_PROGRESS ABORTED REFUSED COMPLETED LAUNCHING HELD If no matching value is included in the string all values will be considered. Application String with a maximum length of 256. 20 | Chapter 5 Dollar Universe Web Services Member Format Permitted values: <string_filter>[*] or *. Queue String with a maximum length of 31. Permitted values: <string_filter>[*] or *. Order String value: ASC (default value for “*”, “” or null) or DESC orderByField Multiple string values can be entered at one time from the following list: MU, TASK, SESSION, UPROC, START_DATE, END_DATE, PROCESSING_DATE, NUMPROC, NUMSESS and NUMLANC. If nothing is met or “*” all values will be considered. maximumResults An integer > 0, if < 0 or “*” it will consider all values Outage type String value from the following list: GENERAL, MU or MU_TYPE Outage target Permitted values: <string_filter>[*] or *. The available filters depend on the type of list requested: 5.1.2.1 UprocFilter <xs:complexType name="uprocFilter"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="uproc" type="xs:string"/> </xs:sequence> </xs:complexType> 5.1.2.2 SessionFilter <xs:complexType name="sessionFilter"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="session" type="xs:string"/> </xs:sequence> </xs:complexType> 5.1.2.3 EventFilter <xs:complexType name="eventFilter"> <xs:sequence> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> name="uproc" name="session" name="mu" name="status" name="user" name="creationDateMin" name="creationDateMax" name="creationHourMin" name="creationHourMax" name="updateDateMin" Chapter 5 Dollar Universe Web Services | 21 <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> </xs:sequence> </xs:complexType> minOccurs="0" name="updateDateMax" minOccurs="0" name="updateHourMin" minOccurs="0" name="updateHourMax" minOccurs="0" name="processingDate" minOccurs="0" name="numlancMin" minOccurs="0" name="numlancMax" minOccurs="0" name="numsessMin" minOccurs="0" name="numsessMax" minOccurs="0" name="numprocMin" minOccurs="0" name="numprocMax" 5.1.2.4 RunBookFilter <xs:complexType name="runBookFilter"> <xs:sequence> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> </xs:sequence> </xs:complexType> name="uprocName" name="taskName" name="sessionName" name="application" name="muName" name="submissionAccount" name="queueName" name="severity" 5.1.2.5 ExecutionFilter <xs:complexType name="executionFilter"> <xs:sequence> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> name="task" name="session" name="uproc" name="mu" name="status" name="user" name="beginDateMin" name="beginDateMax" 22 | Chapter 5 Dollar Universe Web Services <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> </xs:sequence> </xs:complexType> minOccurs="0" name="beginHourMin" minOccurs="0" name="beginHourMax" minOccurs="0" name="endDateMin" minOccurs="0" name="endDateMax" minOccurs="0" name="endHourMin" minOccurs="0" name="endHourMax" minOccurs="0" name="processingDate" minOccurs="0" name="numlancMin" minOccurs="0" name="numlancMax" minOccurs="0" name="numsessMin" minOccurs="0" name="numsessMax" minOccurs="0" name="numprocMin" minOccurs="0" name="numprocMax" name="relaunched" type="xs:boolean"/> minOccurs="0" name="orderByFields" minOccurs="0" name="order" minOccurs="0" name="maximumResults" 5.1.2.6 TaskFilter <xs:complexType name="taskFilter"> <xs:sequence> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> </xs:sequence> </xs:complexType> name="task" name="session" name="uproc" name="mu" 5.1.2.7 UvmsNodeFilter <xs:complexType name="uvmsNodeFilter"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="node" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="company" type="xs:string"/> </xs:sequence> </xs:complexType> 5.1.2.8 NodeFilter <xs:complexType name="nodeFilter"> Chapter 5 Dollar Universe Web Services | 23 <xs:sequence> <xs:element form="qualified" minOccurs="0" name="node" type="xs:string"/> </xs:sequence> </xs:complexType> 5.1.2.9 MuFilter <xs:complexType name="muFilter"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="mu" type="xs:string"/> </xs:sequence> </xs:complexType> 5.1.2.10 RunNoteFilter <xs:complexType name="runNoteFilter"> <xs:sequence> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> </xs:sequence> </xs:complexType> name="session" name="sessionVersion" name="uproc" name="uprocVersion" name="task" name="taskVersion" name="mu" name="numnote" name="numlanc" name="numsess" 5.1.2.11 LaunchFilter <xs:complexType name="launchFilter"> <xs:sequence> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> name="task" name="session" name="uproc" name="mu" name="status" name="user" name="beginDateMin" name="beginDateMax" name="beginHourMin" 24 | Chapter 5 Dollar Universe Web Services <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> </xs:sequence> </xs:complexType> minOccurs="0" name="beginHourMax" minOccurs="0" name="endDateMin" minOccurs="0" name="endDateMax" minOccurs="0" name="endHourMin" minOccurs="0" name="endHourMax" minOccurs="0" name="processingDate" minOccurs="0" name="numlancMin" minOccurs="0" name="numlancMax" minOccurs="0" name="numsessMin" minOccurs="0" name="numsessMax" minOccurs="0" name="numprocMin" minOccurs="0" name="numprocMax" minOccurs="0" name="orderByFields" minOccurs="0" name="order" minOccurs="0" name="maximumResults" 5.1.2.12 OutageFilter <xs:complexType name="outageFilter"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="type" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="target" type="xs:string"/> </xs:sequence> </xs:complexType> 5.1.3 Identifiers Identifiers (combined with the Context sequence) are used to select Dollar Universe objects to perform an action on, for example, task submission or object deletion. Identifiers are returned in the list for each object. The formats of the identifier components are described in the table below: Member Format node String with a maximum length of 10 for DU v5.x or 256 for DU v6.x. mu String with a maximum length of 10 for DU v5.x or 256 for DU v6.x. uproc String with a maximum length of 10 for DU v5.x or 256 for DU v6.x. uprocVersion String with a maximum length of 3. Permitted values: "000" … "999". session String with a maximum length of 10 for DU v5.x or 256 for DU v6.x. sessionVersion 3 char numerical string. Permitted values: "000" … "999". task String with a maximum length of 256 for DU v6.x. Chapter 5 Dollar Universe Web Services | 25 Member Format Value not considered for DU v5.x. taskVersion 3 char numerical string. Permitted values: "000" … "999". Value not considered for DU v5.x. numLanc String with a maximum length of 7. Permitted values: "0000000" … "9999999" numProc String with a maximum length of 7. Permitted values: "0000000" … "9999999" numSess String with a maximum length of 7. Permitted values: "0000000" … "9999999" processingDate String with a maximum length of 8. The format is "YYYYMMDD", where YYYY represents the year, MM the month [01-12] and DD the day [01-31]. If no processing date is provided, the string "00000000" is used. user String with a maximum length of 12. In the WSDL file, the identifiers are defined as follows: 5.1.3.1 NodeId <xs:complexType name="nodeId"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="node" type="xs:string"/> </xs:sequence> </xs:complexType> 5.1.3.2 MuId <xs:complexType name="muId"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="mu" type="xs:string"/> </xs:sequence> </xs:complexType> 5.1.3.3 UprocId <xs:complexType name="uprocId"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="uproc" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="uprocVersion" type="xs:string"/> </xs:sequence> </xs:complexType> 5.1.3.4 SessionId <xs:complexType name="sessionId"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="session" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="sessionVersion" type="xs:string"/> </xs:sequence> </xs:complexType> 5.1.3.5 TaskId <xs:complexType name="taskId"> 26 | Chapter 5 Dollar Universe Web Services <xs:sequence> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" </xs:sequence> </xs:complexType> minOccurs="0" name="task" minOccurs="0" name="session" minOccurs="0" name="sessionVersion" minOccurs="0" name="uproc" minOccurs="0" name="uprocVersion" minOccurs="0" name="mu" name="template" type="xs:boolean"/> 5.1.3.6 LaunchId <xs:complexType name="launchId"> <xs:sequence> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> </xs:sequence> </xs:complexType> minOccurs="0" name="task" minOccurs="0" name="session" minOccurs="0" name="sessionVersion" minOccurs="0" name="uproc" minOccurs="0" name="uprocVersion" minOccurs="0" name="mu" minOccurs="0" name="numLanc" minOccurs="0" name="numSess" minOccurs="0" name="numProc" 5.1.3.7 EventId <xs:complexType name="eventId"> <xs:sequence> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> </xs:sequence> </xs:complexType> minOccurs="0" name="uproc" minOccurs="0" name="session" minOccurs="0" name="mu" minOccurs="0" name="processingDate" minOccurs="0" name="numProc" minOccurs="0" name="numSess" minOccurs="0" name="user" Chapter 5 Dollar Universe Web Services | 27 5.1.3.8 ExecutionId <xs:complexType name="executionId"> <xs:sequence> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> </xs:sequence> </xs:complexType> name="task" name="session" name="sessionVersion" name="uproc" name="uprocVersion" name="mu" name="numLanc" name="numProc" name="numSess" name="tempfilePath" 5.1.4 Dollar Universe Object Types 5.1.4.1 UprocItem <xs:complexType name="uprocItem"> <xs:sequence> <xs:element form="qualified" minOccurs="0" type="tns:uprocId"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> </xs:sequence> </xs:complexType> name="ident" name="label" name="domain" name="application" 5.1.4.2 SessionItem <xs:complexType name="sessionItem"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="ident" type="tns:sessionId"/> <xs:element form="qualified" minOccurs="0" name="label" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="head" type="xs:string"/> </xs:sequence> </xs:complexType> 5.1.4.3 Launch <xs:complexType name="launch"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="ident" type="tns:launchId"/> 28 | Chapter 5 Dollar Universe Web Services <xs:element form="qualified" minOccurs="0" name="variables"> <xs:complexType> <xs:sequence> <xs:element form="qualified" maxOccurs="unbounded" minOccurs="0" name="variables" type="tns:variable"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element form="qualified" name="autoRestart" type="xs:boolean"/> <xs:element form="qualified" name="centralControl" type="xs:boolean"/> <xs:element form="qualified" name="forcedExecution" type="xs:boolean"/> <xs:element form="qualified" name="bypassCondCheck" type="xs:boolean"/> <xs:element form="qualified" minOccurs="0" name="exclusionFrom" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="exclusionTo" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="status" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="beginDate" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="beginHour" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="endDate" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="endHour" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="processingDate" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="user" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="step" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="node" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="queue" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="priority" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="information" type="xs:string"/> <xs:element name="severity" type="xs:int"/> </xs:sequence> </xs:complexType> 5.1.4.4 Variable <xs:complexType name="variable"> <xs:sequence> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> </xs:sequence> </xs:complexType> 5.1.4.5 Engine <xs:complexType name="engine"> <xs:sequence> minOccurs="0" name="name" minOccurs="0" name="type" minOccurs="0" name="value" minOccurs="0" name="origin" Chapter 5 Dollar Universe Web Services | 29 <xs:element form="qualified" minOccurs="0" name="engineCode" type="xs:string"/> </xs:sequence> </xs:complexType> 5.1.4.6 RunBook <xs:complexType name="runBook"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="name" type="xs:string"/> <xs:element form="qualified" name="nature" type="tns:runBookNature"/> <xs:element form="qualified" minOccurs="0" name="content" type="xs:string"/> </xs:sequence> </xs:complexType> <xs:SimpleType name="runBookNature"> <xs:restriction base="xs:String"> <xs:enumeration value="INTERNAL"/> <xs:enumeration value="EXTERNAL_ASCII"/> <xs:enumeration value="EXTERNAL_BINARY"/> <xs:enumeration value="HYPERTEXT_LINK"/> </xs:restriction> </xs:SimpleType> 5.1.4.7 EventItem <xs:complexType name="eventItem"> <xs:sequence> <xs:element form="qualified" minOccurs="0" type="tns:eventId"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> </xs:sequence> </xs:complexType> name="ident" name="status" name="step" name="authorCode" name="numLanc" name="creationDate" name="creationHour" name="updateDate" name="updateHour" 5.1.4.8 Queue <xs:complexType name="queue"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="name" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="node" type="xs:string"/> </xs:sequence> </xs:complexType> 30 | Chapter 5 Dollar Universe Web Services 5.1.4.9 MuItem <xs:complexType name="muItem"> <xs:sequence> <xs:element form="qualified" type="tns:muId"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" <xs:element form="qualified" </xs:sequence> </xs:complexType> minOccurs="0" name="ident" minOccurs="0" name="label" minOccurs="0" name="node" name="development" type="xs:boolean"/> name="production" type="xs:boolean"/> 5.1.4.10 Execution <xs:complexType name="execution"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="data" type="tns:executionItem"/> <xs:element form="qualified" minOccurs="0" name="variables"> <xs:complexType> <xs:sequence> <xs:element form="qualified" maxOccurs="unbounded" minOccurs="0" name="variables" type="tns:variable"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> 5.1.4.11 ExecutionItem <xs:complexType name="executionItem"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="ident" type="tns:executionId"/> <xs:element form="qualified" minOccurs="0" name="status" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="beginDate" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="beginHour" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="endDate" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="endHour" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="processingDate" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="user" type="xs:string"/> <xs:element form="qualified" name="relaunched" type="xs:boolean"/> <xs:element form="qualified" minOccurs="0" name="node" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="queue" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="priority" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="numEntry" type="xs:string"/> <xs:element minOccurs="0" name="info" type="xs:string"/> </xs:sequence> </xs:complexType> Chapter 5 Dollar Universe Web Services | 31 5.1.4.12 ExecutionLog <xs:complexType name="executionLog"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="ident" type="tns:executionId"/> <xs:element form="qualified" maxOccurs="unbounded" minOccurs="0" name="log" type="xs:string"/> </xs:sequence> </xs:complexType> 5.1.4.13 RunNote <xs:complexType name="runNote"> <xs:sequence> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" <xs:element form="qualified" <xs:element form="qualified" type="xs:string"/> </xs:sequence> </xs:complexType> minOccurs="0" name="creationDate" name="numproc" type="xs:int"/> name="numlanc" type="xs:int"/> minOccurs="0" name="noteText" 5.1.4.14 OutageWindow <xs:complexType name="outageWindow"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="type" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="target" type="xs:string"/> <xs:element form="qualified" name="num" type="xs:int"/> <xs:element form="qualified" minOccurs="0" name="label" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="fromDate" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="untilDate" type="xs:string"/> </xs:sequence> </xs:complexType> 5.1.4.15 LaunchItem <xs:complexType name="launchItem"> <xs:sequence> <xs:element form="qualified" minOccurs="0" type="tns:launchId"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> <xs:element form="qualified" minOccurs="0" type="xs:string"/> name="ident" name="status" name="beginDate" name="beginHour" name="endDate" name="endHour" name="processingDate" name="user" name="step" 32 | Chapter 5 Dollar Universe Web Services <xs:element form="qualified" minOccurs="0" name="node" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="queue" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="priority" type="xs:string"/> </xs:sequence> </xs:complexType> 5.1.4.16 Event <xs:complexType name="event"> <xs:sequence> <xs:element form="qualified" type="tns:eventId"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> </xs:sequence> </xs:complexType> minOccurs="0" name="ident" minOccurs="0" name="status" minOccurs="0" name="step" minOccurs="0" name="creationDate" minOccurs="0" name="creationHour" minOccurs="0" name="updateDate" minOccurs="0" name="updateHour" 5.1.4.17 NodeItem <xs:complexType name="nodeItem"> <xs:sequence> <xs:element form="qualified" type="tns:nodeId"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" <xs:element form="qualified" <xs:element form="qualified" </xs:sequence> </xs:complexType> minOccurs="0" name="ident" minOccurs="0" name="label" name="development" type="xs:boolean"/> name="production" type="xs:boolean"/> name="centralControl" type="xs:boolean"/> 5.1.4.18 HistoryTrace <xs:complexType name="historyTrace"> <xs:sequence> <xs:element form="qualified" minOccurs="0" name="ident" type="tns:executionId"/> <xs:element form="qualified" minOccurs="0" name="uprocLabel" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="sessionLabel" type="xs:string"/> <xs:element form="qualified" minOccurs="0" name="muLabel" type="xs:string"/> <xs:element form="qualified" maxOccurs="unbounded" minOccurs="0" name="trace" type="xs:string"/> </xs:sequence> </xs:complexType> 5.1.4.19 ResourceLog <xs:complexType name="resourceLog"> Chapter 5 Dollar Universe Web Services | 33 <xs:sequence> <xs:element form="qualified" minOccurs="0" name="ident" type="tns:executionId"/> <xs:element form="qualified" maxOccurs="unbounded" minOccurs="0" name="log" type="xs:string"/> </xs:sequence> </xs:complexType> 5.1.4.20 TaskItem <xs:complexType name="taskItem"> <xs:sequence> <xs:element form="qualified" type="tns:taskId"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> <xs:element form="qualified" type="xs:string"/> </xs:sequence> </xs:complexType> minOccurs="0" name="ident" minOccurs="0" name="type" minOccurs="0" name="authorCode" minOccurs="0" name="queue" 5.2 Available Operations The Dollar Universe Web Services are described below. 5.2.1 General 5.2.1.1 login String login(UVMSContext uvms) throws DuwsException The login method is used to authenticate clients to the UVMS. It returns the token which will serve as an authenticator for the rest of the calls to the web services. Parameters uvms UVMS context used for authentication Returns The client’s authentication token Throws DuwsException 5.2.1.2 logout void logout(String token) throws DuwsException The logout method takes resources off the server for the Web Services. If the user has been logged in for a configurable amount of time, the application will do its own clean up. To configure the wait time set the following value in the /WEB-INF/config/config.properties: token.time.out = 6000 Parameters token Throws DuwsException the security token 5.2.1.3 getDUEnvironmentList Envir[] getDUEnvironmentList(String token,UvmsNodeFilter nodeFilter) 34 | Chapter 5 Dollar Universe Web Services throws DuwsException, SessionTimedOutException Retrieves the list of Dollar Universe environments from the UVMS Parameters token authentication token nodeFilter the node filter Returns The DU node list existent on the UVMS Throws DuwsException SessionTimedOutException 5.2.1.4 getWsVersion DuwsVersion[] getWsVersion() throws DuwsException Retrieves the Dollar Universe Web Services version and build number Returns A DuwsVersion object that contains the services's verion and build number Throws DuwsException 5.2.2 Objects Lists 5.2.2.1 getListNode NodeItem[] getListNode(ContextHolder context, NodeFilter filter) throws DuwsException, SessionTimedOutException Method kept for compatibility. Retrieves the Dollar Universe Node List; the environment must be set for this method. Parameters context DU connection context containing both security and connection parameters filter the node filter Returns The list of nodes Throws DuwsException SessionTimedOutException 5.2.2.2 getListMU MUItem[] getListMU(ContextHolder context, MUFilter filter) throws DuwsException, SessionTimedOutException Retrieves the list of MUs Parameters context DU connection context containing both security and connection parameters filter the filter Returns The list of Management Units Throws DuwsException SessionTimedOutException Chapter 5 Dollar Universe Web Services | 35 5.2.2.3 getListUproc UprocItem[] getListUproc(ContextHolder context, UprocFilter filter) throws DuwsException, SessionTimedOutException Retrieves the list of Uprocs Parameters context DU connection context containing both security and connection parameters filter the filter Returns The list of Uprocs Throws DuwsException SessionTimedOutException 5.2.2.4 getListSession SessionItem[] getListSession(ContextHolder context, SessionFilter filter) throws DuwsException, SessionTimedOutException Retrieves the list of Sessions Parameters context DU connection context containing both security and connection parameters filter the filter Returns The list of Sessions Throws DuwsException SessionTimedOutException 5.2.2.5 getListTask TaskItem[] getListTask(ContextHolder context, TaskFilter filter) throws DuwsException, SessionTimedOutException Retrieves the list of Tasks Parameters context DU connection context containing both security and connection parameters filter the filter Returns The list of Tasks Throws DuwsException SessionTimedOutException 5.2.3 Launches 5.2.3.1 getListLaunch LaunchItem[] getListLaunch(ContextHolder context, LaunchFilter filter) throws DuwsException, SessionTimedOutException Retrieves the list of launches based on the given filter. 36 | Chapter 5 Dollar Universe Web Services Parameters context DU connection context containing both security and connection parameters filter The launch filter Returns The list of launches Throws DuwsException SessionTimedOutException If no value was entered for any of the filter’s fields it will consider all these fields as a “*” filter and the method will bring back all possible values. Example of filter field values: LaunchFilter filter = new LaunchFilter(); filter.setSession("*"); filter.setUproc("*"); filter.setMu("*"); // Possible values: // Disabled – DISABLED // Launch Wait – LAUNCH_WAIT // Event Wait – EVENT_WAIT // Time Overrun – TIME_OVERRUN filter.setStatus("DISABLED, LAUNCH_WAIT, EVENT_WAIT, TIME_OVERRUN"); filter.setBeginDateMin("19700101"); filter.setBeginDateMax("20371231"); filter.setBeginHourMin("000000"); filter.setBeginHourMax("235959"); filter.setEndDateMin("19700101"); filter.setEndDateMax("20371231"); filter.setEndHourMin("000000"); filter.setEndHourMax("235959"); filter.setProcessingDate("*"); filter.setNumlancMin("0000000"); filter.setNumlancMax("9999999"); filter.setNumsessMin("0000000"); filter.setNumsessMax("9999999"); filter.setNumprocMin("0000000"); filter.setNumprocMax("9999999"); // Order ASC (default if null or “*”) | DESC filter.setOrder("ASC"); // also the default value // Order by values (multiple values can be entered at one time): MU, TASK, SESSION, // UPROC, START_DATE, END_DATE, PROCESSING_DATE, NUMPROC, NUMSESS, NUMLANC filter.setOrderByFields("START_DATE"); // also the default value if null or “*” // Maximum results - a number > 0, if < 0 or “*” it will bring all values filter.setMaximumResults("*"); 5.2.3.2 getLaunch Launch getLaunch(ContextHolder context, LaunchId launchId) throws DuwsException, SessionTimedOutException It extracts a launch from the Dollar Universe Server. Parameters context DU connection context containing both security and connection parameters launchId launch identifier Returns The launch for the given id Throws DuwsException Chapter 5 Dollar Universe Web Services | 37 SessionTimedOutException 5.2.3.3 getLaunchFromTask Launch getLaunchFromTask(ContextHolder context, TaskId taskId) throws DuwsException, SessionTimedOutException Retrieves a potential launch based on a given Task. The returned launch was not released on Dollar Universe. Parameters context DU connection context containing both security and connection parameters taskId the identifier of the task Returns New Launch ready to be run on the DU Server Throws DuwsException SessionTimedOutException 5.2.3.4 addLaunch LaunchId addLaunch(ContextHolder context, Launch launch) throws DuwsException, SessionTimedOutException This method launches a new run on the Dollar Universe Server. Some of the launch properties should be left empty and will be filled with default values by the WS implementation, some example cases are provided below: The launch number must not be filled in. It will be generated after the creation of the Launch. For Dollar Universe v6 launches if the task name is entered, the session and Uproc can be left empty (null value). The values will be filled in automatically after extracting the task. For Dollar Universe v5 launches the user can enter the session name but leave the Uproc name empty. The session header will be filled in automatically after extracting the session. The task name must also be left empty or null. Uproc and session versions can be left empty (null value). 000 will be entered in by default. The MU can be left empty (null or “” value), the node name will be chosen by default. The start date and hour can be left empty (null or “” value). The current environment date and time will be entered in by default. The end date and hour can be left empty (null or “” value). The begin date + 10 min will be entered in by default. The Processing date can be left empty (null or “” value). The current environment date will be entered in by default. The node can be left empty (null or “” value), the node name will be chosen by default. The queue can be left empty (null or “” value), the SYS_BATCH will be chosen by default. The step can be left empty (null value), 0 will be entered in by default. The priority can be left empty (null value), 100 will be entered in by default. Parameters Returns context DU connection context containing both security and connection parameters launch launch to be created the launch identifier 38 | Chapter 5 Dollar Universe Web Services Throws DuwsException SessionTimedOutException 5.2.3.5 addLaunchFromTask LaunchId addLaunchFromTask(ContextHolder context, TaskId taskId) throws DuwsException, SessionTimedOutException Creates a launch on the Dollar Universe Server based on a given Task. Parameters context DU connection context containing both security and connection parameters taskId The task identifier used to create the launch Returns The identifier of the released launch Throws DuwsException SessionTimedOutException 5.2.3.6 addLaunchFromTask2 LaunchId addLaunchFromTask2(ContextHolder context, TaskId taskId, Variable[] variables) throws DuwsException, SessionTimedOutException Creates a launch on the Dollar Universe Server based on a given Task. Parameters context DU connection context containing both security and connection parameters taskId The task identifier used to create the launch variables task variables Returns The identifier of the released launch Throws DuwsException SessionTimedOutException 5.2.3.7 updateLaunch void updateLaunch(ContextHolder context, Launch launch) throws DuwsException, SessionTimedOutException Updates a Launch. When entering the launch properties the same theory as the addLaunch method applies except that the user is required to enter the launch number. Parameters Throws context DU connection context containing both security and connection parameters launch launch to be updated DuwsException SessionTimedOutException Chapter 5 Dollar Universe Web Services | 39 5.2.3.8 deleteLaunch void deleteLaunch(ContextHolder context, LaunchId launchId) throws DuwsException, SessionTimedOutException Deletes a given launch. Parameters Throws context DU connection context containing both security and connection parameters launchId launch identifier DuwsException SessionTimedOutException 5.2.3.9 disableLaunch void disableLaunch(ContextHolder context, LaunchId launchId) throws DuwsException, SessionTimedOutException Holds a given launch. Parameters Throws context DU connection context containing both security and connection parameters launchId launch identifier DuwsException SessionTimedOutException 5.2.3.10 enableLaunch void enableLaunch(ContextHolder context, LaunchId launchId) throws DuwsException, SessionTimedOutException Enables a given launch. Parameters Throws context DU connection context containing both security and connection parameters launchId the identifier of the launch to be enabled DuwsException SessionTimedOutException 5.2.3.11 holdLaunch void holdLaunch(ContextHolder context, LaunchId launchId) throws DuwsException, SessionTimedOutException Holds (disables) a Launch Parameters Throws context DU connection context containing both security and connection parameters launchId Id of the launch to be held DuwsException SessionTimedOutException 40 | Chapter 5 Dollar Universe Web Services 5.2.3.12 releaseLaunch void releaseLaunch(ContextHolder context, LaunchId launchId) throws DuwsException, SessionTimedOutException Releases (enables) a Launch (action to be done after a hold) Parameters Throws context DU connection context containing both security and connection parameters launchId Id of the launch to be released DuwsException SessionTimedOutException 5.2.3.13 forceCompleteLaunch void forceCompleteLaunch(ContextHolder context, LaunchId launchId) throws DuwsException, SessionTimedOutException Forces a Launch to complete; feature available starting with DU version 6.0. Parameters Throws context DU connection context containing both security and connection parameters launchId Id of the launch to be forced to complete DuwsException SessionTimedOutException 5.2.3.14 bypassLaunchConditionCheck void bypassLaunchConditionCheck(ContextHolder context, LaunchId launchId) throws DuwsException, SessionTimedOutException Bypasses Launch Condition Check of a Launch; feature available starting with DU version 6.0. Parameters Throws context DU connection context containing both security and connection parameters launchId Id of the launch to be bypassed condition checked DuwsException SessionTimedOutException 5.2.4 Executions 5.2.4.1 getListExecution ExecutionItem[] getListExecution(ContextHolder context, ExecutionFilter filter) throws DuwsException, SessionTimedOutException Retrieves the list of executions using the given filter. If no value is entered for any of the filter’s fields it will consider all these fields as a “*” filter and the method will bring back all possible values. Chapter 5 Dollar Universe Web Services | 41 Parameters context DU connection context containing both security and connection parameters filter the filter Returns the list of executions Throws DuwsException SessionTimedOutException Example of filter field values: ExecutionFilter filter = new ExecutionFilter(); filter.setSession("*"); filter.setUproc("*"); filter.setMu("*"); // Possible values for: // Event Wait - EVENT_WAIT // Time Overrun - TIME_OVERRUN // Pending - PENDING // Started - STARTED // Running - RUNNING // Completion in Progress - COMPLETION_IN_PROGRESS // Aborted - ABORTED // Refused - REFUSED // Completed - COMPLETED // Launching - LAUNCHING // Held – HELD // The default filter includes all. filter.setStatus("COMPLETED, ABORTED, EVENT_WAIT, TIME_OVERRUN"); filter.setBeginDateMin("19700101"); filter.setBeginDateMax("20371231"); filter.setBeginHourMin("000000"); filter.setBeginHourMax("235959"); filter.setEndDateMin("19700101"); filter.setEndDateMax("20371231"); filter.setEndHourMin("000000"); filter.setEndHourMax("235959"); filter.setProcessingDate("*"); filter.setNumlancMin("0000000"); filter.setNumlancMax("9999999"); filter.setNumsessMin("0000000"); filter.setNumsessMax("9999999"); filter.setNumprocMin("0000000"); filter.setNumprocMax("9999999"); // Order ASC (default if null or “*”) | DESC filter.setOrder("ASC"); // also the default value // Order by values (multiple values can be entered at one time): MU, TASK, SESSION, // UPROC, START_DATE, END_DATE, PROCESSING_DATE, NUMPROC, NUMSESS, NUMLANC filter.setOrderByFields("START_DATE"); // also the default value if null or “*” // Maximum results - a number > 0, if < 0 or “*” it will bring all values filter.setMaximumResults("*"); 5.2.4.2 skipExecution void skipExecution(ContextHolder context, LaunchId launchId) throws DuwsException, SessionTimedOutException Skips the execution of a launch; feature available starting with DU version 6.0 Parameters context DU connection context containing both security and connection parameters 42 | Chapter 5 Dollar Universe Web Services launchId Throws Id of the launch to be skipped DuwsException SessionTimedOutException 5.2.4.3 purgeExecution void purgeExecution(ContextHolder context, ExecutionId executionId) throws DuwsException, SessionTimedOutException Purges an execution. Parameters Throws context DU connection context containing both security and connection parameters executionId the execution identifier DuwsException SessionTimedOutException 5.2.4.4 stopExecution void stopExecution(ContextHolder context, ExecutionId executionId, int delay) throws DuwsException, SessionTimedOutException Stop a running execution. Parameters Throws context DU connection context containing both security and connection parameters executionId the execution identifier delay the delay before stopping the execution (in seconds, max = 99999) DuwsException SessionTimedOutException 5.2.4.5 rerunExecution void rerunExecution(ContextHolder context, ExecutionId executionId, String startDate, String endDate, String batchQueue, String user, int step, boolean byPassCheck) throws DuwsException, SessionTimedOutException Re-runs an execution. Parameters context DU connection context containing both security and connection parameters executionId the execution Id of the execution to be rerun startDate new launch window start date endDate new launch window end date batchQueue new batch queue user new submission account step new step Chapter 5 Dollar Universe Web Services | 43 byPassCheck Throws new value of the bypass check condition DuwsException SessionTimedOutException 5.2.4.6 acknowledgeExecution void acknowledgeExecution(ContextHolder context, LaunchId launchId) throws DuwsException, SessionTimedOutException Acknowledges a Launch Feature available starting with Dollar Universe version 6.0. Parameters Throws context DU connection context containing both security and connection parameters launchId the Id of the launch to acknowledge DuwsException SessionTimedOutException 5.2.4.7 unacknowledgeExecution void unacknowledgeExecution(ContextHolder context, LaunchId launchId) throws DuwsException, SessionTimedOutException Unacknowledges a Launch Feature available starting with Dollar Universe version 6.0. Parameters Throws context DU connection context containing both security and connection parameters launchId the Id of the launch to unacknowledged DuwsException SessionTimedOutException 5.2.4.8 getExecution Execution getExecution(ContextHolder context, ExecutionId executionId) throws DuwsException, SessionTimedOutException Extracts an existing execution that has the given execution id. Parameters context DU connection context containing both security and connection parameters executionId the execution identifier Returns The demanded execution Throws DuwsException SessionTimedOutException 5.2.4.9 getHistoryTrace HistoryTrace getHistoryTrace(ContextHolder context, ExecutionId executionId) 44 | Chapter 5 Dollar Universe Web Services throws DuwsException, SessionTimedOutException Retrieves the history trace of a given execution. Parameters context DU connection context containing both security and connection parameters executionId the execution identifier Returns the history trace Throws DuwsException SessionTimedOutException 5.2.4.10 getExecutionLog ExecutionLog getExecutionLog(ContextHolder context, ExecutionId executionId) throws DuwsException, SessionTimedOutException Retrieves the log of an execution Parameters context DU connection context containing both security and connection parameters executionId the execution identifier Returns The execution log Throws DuwsException SessionTimedOutException 5.2.4.11 getExecutionLogAsAttachment DataHandler getExecutionLogAsAttachment(ContextHolder context, ExecutionId executionId) throws DuwsException, SessionTimedOutException Support for retrieval of huge log files as attachments. Parameters context DU connection context containing both security and connection parameters executionId the execution identifier Returns The execution log Throws DuwsException SessionTimedOutException 5.2.4.12 getPreviousLaunches PreviousLaunch[] getPreviousLaunches(ContextHolder context, ExecutionId executionId) throws DuwsException, SessionTimedOutException Retrieves the previous launches of an execution Parameters context DU connection context containing both security and connection parameters Chapter 5 Dollar Universe Web Services | 45 executionId the execution identifier Returns The previous launches Throws DuwsException SessionTimedOutException 5.2.4.13 getScriptResourceLog ResourceLog getScriptResourceLog(ContextHolder context, ExecutionId executionId) throws DuwsException, SessionTimedOutException Retrieves the script execution log Feature available starting with Dollar Universe version 6.0. Parameters context DU connection context containing both security and connection parameters executionId the ID of the execution for which we want the script resource log Returns The script resource log Throws DuwsException SessionTimedOutException 5.2.5 Notes 5.2.5.1 getRunNotes RunNote[] getRunNotes(ContextHolder context, RunNoteFilter noteFilter) throws DuwsException, SessionTimedOutException Retrieves the run notes for a certain filter - associated to an execution or a launch Feature available starting with Dollar Universe version 6.0. Parameters context DU connection context containing both security and connection parameters noteFilter the note filter created based on an execution or a launch Returns The run notes associated to an execution or a launch Throws DuwsException SessionTimedOutException 5.2.6 Runbooks 5.2.6.1 getRunBooks RunBook[] getRunBooks(ContextHolder context, RunBookFilter runBookFilter) throws DuwsException, SessionTimedOutException 46 | Chapter 5 Dollar Universe Web Services Retrieves the runbooks for a certain filter - associated to an execution or a launch Feature available starting with Dollar Universe version 6.0. Parameters context DU connection context containing both security and connection parameters runBookFilter the runbook filter created based on an execution or a launch Returns The runbooks associated to an execution or a launch Throws DuwsException SessionTimedOutException 5.2.6.2 getRunBookExternalFile DataHandler getRunBookExternalFile(ContextHolder context, RunBook runBook) throws DuwsException, SessionTimedOutException Retrieves theexternal runbook file; Support for the retrieval of large file attachments. Feature available starting with DU version 6.0. Parameters context DU connection context containing both security and connection parameters runBook the runbook Returns The runbook external file as attachment or null if the file does not exist or is invalid. Throws DuwsException SessionTimedOutException 5.2.7 Outage Windows 5.2.7.1 getListOutage OutageWindow[] getListOutage(ContextHolder context, OutageFilter outageFilter) throws DuwsException, SessionTimedOutException Returns the Outage Window List Parameters context DU connection context containing both security and connection parameters outageFilter the outage filter Returns the Outage Window List Throws DuwsException SessionTimedOutException 5.2.7.2 createOutageWindow void createOutageWindow(ContextHolder context, OutageWindow outage) throws DuwsException, SessionTimedOutException Adds an Outage Window Chapter 5 Dollar Universe Web Services | 47 Parameters Throws context DU connection context containing both security and connection parameters outage the outage object DuwsException SessionTimedOutException 5.2.7.3 deleteOutageWindow void deleteOutageWindow(ContextHolder context, OutageWindow outage) throws DuwsException, SessionTimedOutException Deletes an Outage Window Parameters Throws context DU connection context containing both security and connection parameters outage the outage object DuwsException SessionTimedOutException 5.2.8 Events 5.2.8.1 getListEvent EventItem[] getListEvent(ContextHolder context, EventFilter filter) throws DuwsException, SessionTimedOutException Retrieves the list of events Parameters context DU connection context containing both security and connection parameters Filter the filter Returns The list of events Throws DuwsException SessionTimedOutException 5.2.8.2 addEvent void addEvent(ContextHolder context, Event event) throws DuwsException, SessionTimedOutException Creates an event on the Dollar Universe Server Parameters Throws context DU connection context containing both security and connection parameters eventId The event to create DuwsException SessionTimedOutException 48 | Chapter 5 Dollar Universe Web Services 5.2.8.3 updateEvent void updateEvent(ContextHolder context, EventId eventId, String status, String step) throws DuwsException, SessionTimedOutException Updates an event. Parameters Throws context DU connection context containing both security and connection parameters eventId The event identifier status New status step New step DuwsException SessionTimedOutException 5.2.8.4 deleteEvent void deleteEvent(ContextHolder context, EventId eventId) throws DuwsException, SessionTimedOutException Deletes an event Parameters Throws context DU connection context containing both security and connection parameters eventId The event identifier DuwsException SessionTimedOutException 5.2.8.5 getEvent Event getEvent(ContextHolder context, EventId eventId) throws DuwsException, SessionTimedOutException Extracts an event from Dollar Universe Server Parameters Throws context DU connection context containing both security and connection parameters eventId The event identifier DuwsException SessionTimedOutException 5.2.9 Engines 5.2.9.1 stopEngine void stopEngine(ContextHolder context, Engine engine) throws DuwsException, SessionTimedOutException Stops the engine Chapter 5 Dollar Universe Web Services | 49 Parameters Throws context DU connection context containing both security and connection parameters engine DU engine DuwsException SessionTimedOutException 5.2.9.2 startEngine void startEngine(ContextHolder context, Engine engine) throws DuwsException, SessionTimedOutException Starts the engine Parameters Throws context DU connection context containing both security and connection parameters engine DU engine DuwsException SessionTimedOutException 5.2.9.3 restartEngine void restartEngine(ContextHolder context, Engine engine) throws DuwsException, SessionTimedOutException Restarts the engine Feature available starting with Dollar Universe version 6.0 and only on area X. Parameters Throws context DU connection context containing both security and connection parameters engine DU engine DuwsException SessionTimedOutException 5.2.10 Batch Queues 5.2.10.1 startQueue void startQueue(ContextHolder context, Queue queue) throws DuwsException, SessionTimedOutException Activates a batch queue (its status changes from stopped to started) so it is ready to accept jobs submitted for execution. Parameters Throws context DU connection context containing both security and connection parameters queue The batch queue DuwsException SessionTimedOutException 50 | Chapter 5 Dollar Universe Web Services 5.2.10.2 stopQueue void stopQueue(ContextHolder context, Queue queue) throws DuwsException, SessionTimedOutException Stops a batch queue. This method must be used if the batch queue status is started and no more jobs are to be run on it. Any jobs on this batch queue that were pending or suspended will not be run. Any jobs that were running will not be stopped. Every job that was present in the batch queue at the time of the stoppage will remain in the batch queue. Parameters Throws context DU connection context containing both security and connection parameters queue The batch queue DuwsException SessionTimedOutException 5.2.10.3 resetQueue void resetQueue(ContextHolder context, Queue queue) throws DuwsException, SessionTimedOutException Resets a Queue by removing all jobs (pending, suspended and running) Resetting a logical queue does not impact the contents of the associated physical queues. Parameters Throws context DU connection context containing both security and connection parameters queue The batch queue DuwsException SessionTimedOutException Chapter 6 Typical Usage Scenarios | 51 6 Typical Usage Scenarios 6.1 In Java using the wsimport command for JAX-WS applications The wsimport command-line tool processes an existing Web Services Description Language (WSDL) file and generates the required portable artifacts for developing Java API for XML-Based Web Services (JAX-WS) Web service applications. This command supports the top-down approach to developing JAX-WS Web services. The tool reads the WSDL file and generates the following portable artifacts: Service Endpoint Interface (SEI): The SEI is the annotated Java representation of the WSDL file for the Web service. This interface is used for implementing JavaBeans endpoints or creating dynamic proxy client instances. javax.xml.ws.Service extension class: used to configure and create both dynamic proxy and dispatch instances. Required data beans, including any Java Architecture for XML Binding (JAXB) beans that are required to model the Web service data. Example: D:\Workspaces\WebServices\CXFClient\src>wsimport –s . http://localhost:8080/rootContext/DuWebService?wsdl parsing WSDL… Generating code… Compiling code… D:\Workspaces\WebServices\CXFClient\src> This will generate all the necessary beans with the exception of the client class,as displayed below: public class Client { public static void main(String args[]) throws Exception { DuWebService_Service ss = new DuWebService_Service(); DuWebService service = ss.getDuWebServicePort(); UvmsContext uvmsContext = new UvmsContext(); uvmsContext.setUvmsHost("uvmshost"); uvmsContext.setUvmsPort(4184); uvmsContext.setUvmsUser("admin"); uvmsContext.setUvmsPassword("admin"); // Invoking authentication... String token = service.login(uvmsContext); // Setting up the context ContextHolder ctxHolder = new ContextHolder(); ctxHolder.setToken(token); List<Envir> duEnvironmentList = service.getDUEnvironmentList(token,new UvmsNodeFilter()); service.logout(token); System.exit(0); } } 52 | Chapter 6 Typical Usage Scenarios 6.2 In Java Using CXF and Spring CXF includes a client proxy factory bean which will create a Java proxy for the user from the interface which will invoke the service. The factory bean expects the service class and the URL of the user’s service. The bean stub is then created by using the factory bean reference. Create a client-beans.xml client Web configuration file: <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:http="http://cxf.apache.org/transports/http/configuration" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd"> <jaxws:client id="client" serviceClass="DuwsSEI" address="http://localhost:8080/duwebservices/DuwsSEI"> </jaxws:client> </beans> Create a Java main program that uses the Spring context to get the client bean defined, then invoke the web service methods: public final class Client { public static void main(String args[]) throws Exception { ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext( new String[] { "client/client-beans.xml" }); DuwsSEI service = (DuwsSEI) context.getBean("client"); UVMSContext uvmsContext = new UVMSContext(); uvmsContext.setUvmsHost("uvmshost"); uvmsContext.setUvmsPort(4184); uvmsContext.setUvmsUser("admin"); uvmsContext.setUvmsPassword("admin"); // Invoking authentication... String token = service.login(uvmsContext); // Setting up the context ContextHolder ctxHolder = new ContextHolder(); ctxHolder.setToken(token); //retrieving the DU Environment List (Company/Node/Area) Envir[] duEnvironmentList = service.getDUEnvironmentList(token,new UvmsNodeFilter()); service.logout(ctxHolder.getToken()); System.exit(0); } } 6.3 WSDL2Java generated Client The WSDL2Java Client functions the same way as wsimport in that it will generate the required code for developing a Web Service Client. WSDL2Java utility can generate the following kinds of code: Stub code: supporting files for implementing a client. Client starting point code: sample client code that connects to the remote service and invokes every operation on the remote service. Chapter 6 Typical Usage Scenarios | 53 Ant build file: a build.xml file intended for use with the ant build utility. It has targets for building and for running the sample client application. 6.4 Other Frameworks and languages Some other pointers implementing a client can be found for example at: http://cxf.apache.org/docs/how-do-i-develop-a-client.html 54 | Chapter 7 Error Handling 7 Error Handling As can be seen from the methods signatures and descriptions there are two faults that are thrown: DuwsException and SessionTimeoutException. 7.1 DuwsException <xs:complexType name="DuwsException"> <xs:sequence> <xs:element name="errorCode" nillable="true" type="xs:int"/> </xs:sequence> </xs:complexType> This exception corresponds to any error that occurs due to Web Service to Dollar Universe interaction problems and is described by a unique code and a message. Possible DuwsException faults: Error Code Message Parameters 100 The UvmsContext object is not set. 101 The ContextHolder object is not set. 102 The Context object is not set. 103 No DU Environment sent. 104 This feature is not supported for DU versions lower than 6.0. 105 The end date is before the begin date. 106 Client not authenticated: no token provided. 107 The Runbook object is not set. 108 Invalid Runbook nature. 109 Execution has a status different than Aborted, Refused or Completed 110 The provoked task was excluded due to the exclusion interval declarations. 111 Operation forbidden on template tasks. 112 The property $1 must not be null. $1 - the property name 113 The property $1 must not be null or empty. $1 - the property name 114 The property $1 must be in the format: $2 $1 - the property name $2 - the format 115 The property $1 must be a number $1 - the property name 116 The property $1 must be lower than $2 $1 - the property name $2 - upper limit of the property value 117 Unknown nature: $1 $1 - sent value 118 Invalid port: $1 $1 - the port value 119 No proxy defined for user $1 in environment $2 $1 - user value Chapter 7 Error Handling | 55 Error Code Message Parameters $2 - the environment 120 Invalid Application - '$1' $1 - application value 121 Invalid Author - '$1' $1 - author value 122 Invalid Business View - '$1' $1 - business view value 123 Invalid Data - '$1' $1 - data value 124 Invalid Date - '$1' $1 - date value 125 Invalid Hour - '$1' $1 - hour value 126 Invalid Icon - '$1' $1 - job icon value 127 Invalid Job - '$1' $1 - invalid job property value 128 Invalid Mu - '$1' $1 - mu value 129 Invalid Mu Type - '$1' $1 - mu type value 130 Invalid Node - '$1' $1 - node value 131 Invalid Numlanc - '$1' $1 - numlanc value 132 Invalid Numproc - '$1' $1 - numproc value 133 Invalid Numsess - '$1' $1 - numsess value 134 Invalid Printer - '$1' $1 - printer value 135 Invalid Priority - '$1' $1 - priority value 136 Invalid Queue - '$1' $1 - queue value 137 Invalid Resource - '$1' $1 - resource value 138 Invalid Session - '$1' $1 - session value 139 Invalid Step - '$1' $1 - step value 140 Invalid Uproc Class - '$1' $1 - Uproc class value 141 Invalid Uproc - '$1' $1 - Uproc value 142 Invalid Uproc Type - '$1' $1 - Uproc type value 143 Invalid User - '$1' $1 - user value 144 Invalid Version - '$1' $1 - version value 145 Syntax Error - '$1' $1 - the syntax error 146 Unknown Area Code - '$1' $1 - area code value 147 Unknown Job Event Status - '$1' $1 - event status value 148 Unknown Execution Status - '$1' $1 - execution status value 149 Unknown Launch Status - '$1' $1 - launch status value 150 Unauthorized operation : $1 - $2 - $3 $1 - operation $2 - context $3 - object identifier 151 Connection failed. Nested message: $1 $1 - cause message 152 Invalid Launch Id: task='$1', session='$2', uproc='$3' $1 - operation $2 - context 56 | Chapter 7 Error Handling Error Code Message Parameters $3 - object identifier 153 Invalid Engine Code - '$1'. Accepted values are: AUT, ALM, IO, CDJ, CAL, LAN, EXC, SUR, DQM, BVS, CMD, EEP, SYN, SAP, OAP, JEE 154 The method is available only on area X. 155 Invalid Execution Id: task='$1', session='$2', uproc='$3' $1 – sent engine code $1 - task $2 - session $3 - uproc 156 Parameter '$1' must not be null $1 - the method parameter 157 This feature is not available for engine $1 on area $2 $1 – engine $2 - area 158 $1 engine is not declared on area $2 $1 – engine $2 - area 159 There are no valid licenses for node '$1'. 200 Other exception $1 – duws host name 7.2 SessionTimeoutException <xs:complexType name="SessionTimedOutException"> <xs:sequence> <xs:element name="timeout" nillable="true" type="xs:int"/> </xs:sequence> </xs:complexType> This error is sent as a fault when the token timeout has expired. For configuring the wait time, set the following value in the /WEB-INF/config/config.properties file. token.time.out = 6000 (the default value in seconds) Chapter 8 Troubleshooting | 57 8 Troubleshooting The Dollar Universe Web Service has been successfully deployed, but some or all requests still fail. Several points can be checked to solve the problems: Deployment settings and application server configuration Dollar Universe Web Services configuration file 8.1 Increase the trace level Several reasons may prevent Dollar Universe Web Services from running successfully. To find out what happens during the execution of the web service, activate the trace level (in the log4j.xml file, located by default in WEB-INF/conf) and restart the application server. Example: <?xml version="1.0" encoding="UTF-8" ?> <!-IMPORTANT: this file contains variables (prefixed with $ sign) which are dynamically replaced by the web application at startup. --> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> … <category name="com.orsyp" additivity="false"> <level value="INFO"/> <appender-ref ref="WS_SIZE_LIMITER"/> </category> <root> <level value="INFO" /> <appender-ref ref="WS_SIZE_LIMITER"/> <appender-ref ref="STDOUT" /> </root> </log4j:configuration> The possible values for the trace level can be: ALL: has the lowest possible rank and is intended to turn on all logging. DEBUG: for logging fine-grained informational events that are most useful to debug an application. ERROR: for logging error events that might still allow the application to continue running. FATAL: designates very severe error events that will presumably lead the application to abort. INFO: for logging informational messages that highlight the progress of the application at coarse-grained level. OFF: has the highest possible rank and is intended to turn off logging. TRACE: for logging finer-grained informational events than the DEBUG WARN: for logging potentially harmful situations. Trace messages will be written by the web service in the duws.log file found in the directory specified by the property com.orsyp.duws.log.file, and its value by default is: <App.Server Deployment Directory>/<DU WS Application Directory>/logs 58 | Chapter 8 Troubleshooting 8.2 Verify Deployment To check whether Dollar Universe Web Services has been correctly deployed or not try to retrieve the WSDL (refer to section "Deployment" on page 14 for further details). Check the JEE application server log file for errors during the deployment phase. 8.3 User Authentication Refused by UVMS or Dollar Universe The connection from Dollar Universe Web Services to the UVMS Server will fail if the user or password used for login is not correct or if the server is down. For further details on this connection error check the UVMS state and logs. The connection from Dollar Universe Web Services to the Dollar Universe I/O Server will fail if proxies are activated and the user does not have any access rights on the node. In this case, the web service client will get the following exception: DuwsException: No proxy defined for user - admin, in environment [<COMPANY>/<node>/<area>] Chapter 9 Appendix | 59 9 Appendix 9.1 Nodes Status Type Strings The Dollar Universe Web Services is using the following status strings: CONNECTING CONNECTED FAILED BROKEN STOPPED UNREACHABLE NODE_UNREACHABLE IO_UNREACHABLE CONNECTED_WARNING UNKNOWN NO_UPWARDS_MESSAGE BEING_COMPUTED 9.2 Job Runs Status Type Strings The Dollar Universe Web Services is using the following status strings: For launches: o DISABLED o LAUNCH_WAIT o EVENT_WAIT o TIME_OVERRUN For executions: o EVENT_WAIT o TIME_OVERRUN o PENDING o STARTED o RUNNING o COMPLETION_IN_PROGRESS o ABORTED o REFUSED o COMPLETED o LAUNCHING 60 | Chapter 9 Appendix o HELD 9.3 Outage Type Strings The types and descriptions are listed in the following table: Outage Type Description GENERAL General type outage MU Outage based on a MU MU_TYPE Outage based on a MU type 9.4 Task Type Codes The codes and descriptions for task types are listed in the following table: Code for Task type Description ‘D’ Scheduled Task. ‘P‘ Provoked Task ‘S’ Optional Task 9.5 Engine Codes The codes and descriptions for engines are listed in the following table: Engine code Engine AUT AUTHENTICATION ALM ALERT IO IO server CDJ CDJ server CAL Calculator LAN Launcher EXC Exchanger SUR Supervisor DQM Distributed Queue Manager BVS Business View Server CMD Command Server EEP External Event Processor SYN Synchronization SAP Dollar Universe Manager for SAP Solution OAP Dollar Universe Manager for Oracle Applications Chapter 9 Appendix | 61 Engine code Engine JEE JEE 9.6 Date and Time Formats The date and time formats used are the following: YYYY represents the year. MM represents the month: 01 to12 DD represents the day of the month: 01 to 31 HH is for hours: 00 to 23 MM is for minutes: 00 to 59 SS is for seconds: 00 to 59 9.7 Origin and Type Codes for Variables The variables source values are: Code for origin Description ‘1’ Value comes from the Uproc definition. ‘2‘ Value comes from the Task definition. ‘3’ Value comes from the Launch definition. The variables type values are: Code for origin Description ‘T’ The variable is text. ‘D‘ The variable is a date. ‘Q’ The variable is numeric. 62 | Chapter 10 About Automic Software, Community and Services 10 About Automic Software, Community and Services This topic introduces the Automic Software company and how to leverage the full potential of our solutions to you. You can also obtain Automic documentation online from docs.automic.com. 10.1 Automic Software Company Automic Software is dedicated to business automation. Automic is the world's most comprehensive platform in automating businesses. Founded 1985, Automic pioneered the largest, independent, globally deployed automation platform which powers the enterprise, application and infrastructure. Now, as the consumerization of IT accelerates, Automic is re-imagining how organizations integrate next generation service models such as Cloud, DevOps and Big Data. Today, our software automates tens of millions of operations a day for over 2,000 customers worldwide. We challenge conventional thinking, enabling our customers to be faster, smarter, in control. Automic – the standard in business automation. Find out more at our website www.automic.com . 10.2 Automic Community Want to connect with other Automic users to compare notes or learn how others are tackling problems that you’re running into? Talk with other users from around the world to learn how they optimize their business automation with Automic. Interact with the Automic Team to get ONE Automation Platform tips and tricks straight from the source. Join the Automic Community and become an Automic Insider and be among the first to get news about new products and events, even before they are generally announced! 10.3 Download Center Make sure that you are using our products to their fullest potential. The Download Center is the place where you find product downloads, documentation and information on new releases and hot-fixes about your Automic solution. It’s all in one place: from service hotfixes, release notes, and all guides. You will also find patch descriptions, known bugs or workarounds. Chapter 10 About Automic Software, Community and Services | 63 10.4 Technical Support We have a support team you can trust. Our team of professionals is ready to support you, anytime and anywhere. Three support centers located in Europe, the United States, and Asia Pacific build the core of the Automic support organization. Our Technical Support Team makes sure that your closest Automic experts are never more than a few hours flight away, no matter on which continent your subsidiaries and data centers are located. Automic Software is designed to provide global connectivity for international companies. You are employing Automic software on a global scale and therefore you can expect global service. 10.5 Training and Services Do you want to learn even more about Automic solutions? We offer a range of training options on how to get the most out of your Automic solution. Depending on your location, either open training sessions at an Automic Software Service Center, or personalized training sessions at your company's site suits best. Visit the training site and get detailed information about currently offered courses.