Class MxConnConfiguration

    • Field Detail

      • DEFAULT_DOMAIN_OS

        public static final java.lang.String DEFAULT_DOMAIN_OS
        Default value for the MAXDOMAIN object structure parameter.
        See Also:
        PARAM_DOMAIN_OS, Constant Field Values
      • PARAM_AUTHENTICATION_REQUIRED

        public static final java.lang.String PARAM_AUTHENTICATION_REQUIRED
        The Authentication Required parameter. It indicates if the Maximo server requires basic user authentication. If this parameter is true, every HTTP request made by the connector will contain the user's credentials. The default value is false.
        See Also:
        PARAM_USER_ID, PARAM_PASSWORD, isAuthenticationRequired(), Constant Field Values
      • PARAM_ERROR_ON_EXCEDENT_SIZE

        public static final java.lang.String PARAM_ERROR_ON_EXCEDENT_SIZE
        The error on excedent size parameter. It indicates if an error should be thrown when a text field exceeds the maximum size. If this is not checked, the text will be truncated. The default value is true.
        See Also:
        isErrorOnExcedentSizeEnabled(), Constant Field Values
      • PARAM_ES_CREATE

        public static final java.lang.String PARAM_ES_CREATE
        The CREATE enterprise service parameter. The name of the enterprise service that performs create operations on the specified object structure.

        This parameter is required for AddOnly and Update modes.

        See Also:
        getUrlListForCreate(), Constant Field Values
      • PARAM_ES_DELETE

        public static final java.lang.String PARAM_ES_DELETE
        The DELETE enterprise service parameter. The name of the enterprise service that performs delete operations on the specified object structure.

        This parameter is required for Delete mode.

        See Also:
        getUrlListForDelete(), Constant Field Values
      • PARAM_ES_QUERY

        public static final java.lang.String PARAM_ES_QUERY
        The QUERY enterprise service parameter. The name of the enterprise service that performs query operations on the specified object structure.

        This parameter is required for Iterator, Lookup, Update and Delete modes.

        See Also:
        getUrlListForQuery(), Constant Field Values
      • PARAM_ES_UPDATE

        public static final java.lang.String PARAM_ES_UPDATE
        The UPDATE enterprise service parameter. The name of the enterprise service that performs update operations on the specified object structure.

        This parameter is required for Update modes.

        See Also:
        getUrlListForUpdate(), Constant Field Values
      • PARAM_ES_SYNC

        public static final java.lang.String PARAM_ES_SYNC
        The SYNC enterprise service parameter. The name of the enterprise service that performs synchronize operations on the specified object structure.

        This parameter is used by the TpaeIFConnector in AddOnly, Update and Delete modes.

        See Also:
        getUrlListForSync(), Constant Field Values
      • PARAM_EXTSYS

        public static final java.lang.String PARAM_EXTSYS
        The external system parameter. The name of the external system that groups all the enterprise services used by the connector.

        This parameter is required for Iterator, Lookup, AddOnly, Delete and Update modes.

        See Also:
        Constant Field Values
      • PARAM_MAXOBJECT_ES_QUERY

        public static final java.lang.String PARAM_MAXOBJECT_ES_QUERY
        The MAXOBJECT enterprise service parameter. The name of the enterprise service that performs query operations on the MAXOBJECT object structure.

        This parameter is required for Iterator, Lookup, AddOnly, Delete and Update modes.

        See Also:
        DEFAULT_MAXOJBECT_ES_QUERY, getUrlListForQueryMaxObject(), Constant Field Values
      • PARAM_MAXOBJECT_OS

        public static final java.lang.String PARAM_MAXOBJECT_OS
        The MAXOBJECT object structure parameter. The name of the object structure that exposes the MAXOBJECT and MAXATTRIBUTE MBOs. This object structure is used to obtain complementary MBO's metadata.

        This parameter is required for Iterator, Lookup, AddOnly, Delete and Update modes.

        See Also:
        DEFAULT_MAXOBJECT_OS, getMaxobjectObjectStructure(), Constant Field Values
      • PARAM_MBO

        public static final java.lang.String PARAM_MBO
        The MBO parameter. Defines the name of the MBO the connector will work with. Since an object structure might be composed by several MBOs, the connector must know which MBO inside the object structure it will work with. Needless to say, the MBO should be part of the specified object structure.

        For example, the predefined object structure MXASSET is composed by the MBOs ASSET, ASSETMETER, ASSETUSERCUST, and ASSETSPEC. Therefore, the connector must be told which MBO it will work with.

        This parameter must comply with the following syntax:

        <Top-Level MBO>[@<Child MBO Level 1>[@<Child MBO Level 2>[@<Child MBO Level N>]]]

        Example

        The following example defines ASSET as the selected MBO.

        ASSET

        The following example defines ASSETMETER as the selected MBO.

        ASSET@ASSETMETER

        Note: If no value is defined, the connector will work with the object structure's top-level MBO.

        This parameter is required for Iterator, Lookup, AddOnly, Delete, Update modes.

        The method SimpleTpaeIFConnector.getMboList() might be used to retrieve a list of available MBOs in the specified object structure. The following parameters should be previously defined, before invoking the method: Base URL, External System, MAXOBJECT Object Structure, MAXOBJECT QUERY Enterprise Service, Object Structure

        See Also:
        getMbo(), Constant Field Values
      • PARAM_MX_BASE_URL

        public static final java.lang.String PARAM_MX_BASE_URL
        The Maximo server's base URLs parameter. Multiple URLs must be separated by new line character (\n), carriage-return character ('\r'), space, or comma. The connector will try to send the requests until one of the URLs successfully respond or the list of URLs ends.

        Examples

        The following URLs targets the host mxserver1 and mxserver2 on default port.

        http://mxserver1 http://mxserver2

        The following URL targets the host mxserver on default port using HTTP over SSL.

        https://mxserver

        The following URL targets the host localhost on port 8080.

        http://localhost:8080

        This parameter is required for Iterator, Lookup, AddOnly, Delete and Update modes.

        See Also:
        DEFAULT_MX_BASE_URL, getUrlList(), Constant Field Values
      • PARAM_MX_SERVICE_BASE

        public static final java.lang.String PARAM_MX_SERVICE_BASE
        See Also:
        Constant Field Values
      • PARAM_OBJECT_STRUCTURE

        public static final java.lang.String PARAM_OBJECT_STRUCTURE
        The object structure parameter. The name of the object structure the connector will work with. The object structure could be composed by a single MBO or a group of related MBOs.

        This parameter is required for Iterator, Lookup, AddOnly, Delete and Update modes.

        See Also:
        getObjectStructure(), Constant Field Values
      • PARAM_PAGE_SIZE

        public static final java.lang.String PARAM_PAGE_SIZE
        The page size parameter. It limits the number of records retrieved from Maximo, obligating the connector to make several requests in order to get all the records selected by the query criteria.

        Note: The page size applies only to the top-level MBO in the object structure.

        For example, if Maximo has 1000 assets in its database and the page size is defined as 100, a query against the predefined MXASSET object structure would be accomplished by 10 requests.

        This parameter is required for Iterator, Lookup, Update and Delete modes.

        See Also:
        DEFAULT_PAGE_SIZE, getPageSize(), Constant Field Values
      • PARAM_QUERY_CRITERIA

        public static final java.lang.String PARAM_QUERY_CRITERIA
        The query criteria parameter. It contains the selection criteria for the Iterator mode. Queries must be specified in XML syntax and can select records based on single value or a range of values.

        Note: The query criteria can apply only to the top-level MBO in the object structure.

        For example, a query against the predefined MXASSET object structure must select values in the top-level MBO (ASSET). For this object structure it is not possible build a query that selects records based on, for example, the average attribute in the ASSETMETER MBO.

        The Operator Attribute

        The operator attribute compares the value of a field with one or more other values. It has the following format:

        operator = "value"

        The operator attribute compares the value of a field with one or more other values. It has the following format:

        Value Description
        = equal
        != not equal
        &lt; less than
        &lt;= less than or equal
        &gt; greater than
        &gt;= greater than or equal
        SW starts with
        EW ends with

        Use the less than and the greater than attributes with numeric and date fields only.

        Example

        To find all assets in a type other than IT, format the query as follows:

         <ASSET>
           <ASSETTYPE operator="!=">IT</ASSETTYPE>
         </ASSET>
         
        Field Selection

        A field-based query compares the value in a field with a specified value. The value is not case-sensitive.

        Example

        The following query searches for assets where VENDOR is equal to ATI and STATUS is equal to OPERATING.

         <ASSET>
           <VENDOR operator="=">ATI</VENDOR>
           <STATUS operator="=">OPERATING</STATUS>
         </ASSET>
         

        The following query searches for assets where VENDOR is like to %ATI% and STATUS is like to %OPER%.

         <ASSET>
           <VENDOR>ATI</VENDOR>
           <STATUS>OPERATING</STATUS>
         </ASSET>
         

        Note: The preceding query format treats ATI and OPER as if % wildcards exist before and after the hard-coded values. It is not possible restrict the search criteria, that is %ATI or ATI%.

        The following queries search for assets that do not have a tag. The first uses the operator attribute; the second one does not.

         <ASSET>
           <ASSETTAG operator="NULL"></ASSETTAG>
         </ASSET>
         
         <ASSET>
           <ASSETTAG>NULL</ASSETTAG>
         </ASSET>
         

        The following query searches for assets with asset number starting with the text "711".

         <ASSET>
           <ASSETNUM operator="SW">711</ASSETNUM>
         </ASSET>
         

        The following query searches for assets with a status NOT READY or OPERATING, by using the equivalent of an SQL IN clause.

         <ASSET>
           <STATUS>NOT READY, OPERATING</STATUS>
         </ASSET>
         
        Range Selection

        A query can search for records with a value that falls within a range of values. The format varies, depending on whether the selection criteria is open ended or contains an upper and lower range.

        Example

        The following query searches for assets where BUDGETCOST is greater than $1000.

         <ASSET>
           <BUDGETCOST operator="&gt;">1000</BUDGETCOST>
         </ASSET>
         

        The following query searches for assets where BUDGETCOST is greater than $1000 and less than $20000.

         <ASSET>
           <BUDGETCOST operator="&gt;">1000</BUDGETCOST>
           <BUDGETCOST operator="&lt;">20000</BUDGETCOST>
         </ASSET>
         

        Note: A query can contain a maximum of two references for the same attribute.

        This parameter is used by the Iterator mode.

        See Also:
        getQueryCriteria(), Constant Field Values
      • PARAM_TIMEOUT

        public static final java.lang.String PARAM_TIMEOUT
        This is the timeout parameter, in milliseconds. This is used when communicating with the MEA server. If the timeout expires before the connection can be established or before there is data available for read, a MxConnTimeoutException is raised. A timeout of zero is interpreted as infinite timeout.
        See Also:
        DEFAULT_TIMEOUT, getTimeout(), Constant Field Values
      • PARAM_REPLACE_ON_UPDATE

        public static final java.lang.String PARAM_REPLACE_ON_UPDATE
        This is the getReplaceOnUpdate flag. It is used only in Update mode. When enabled entries will be replaced in the Tpae server. This means that child MBOs that are not present in the entry will deleted from the target entry.
        See Also:
        getReplaceOnUpdate(), Constant Field Values
      • PARAM_USER_ID

        public static final java.lang.String PARAM_USER_ID
        The user ID parameter. It is the user's identification the connector will use to authenticate itself on the Maximo server. Mandatory only if Authentication Required is checked.
        See Also:
        PARAM_AUTHENTICATION_REQUIRED, getUserId(), Constant Field Values
      • PARAM_XML_CHAR_VALIDATION

        public static final java.lang.String PARAM_XML_CHAR_VALIDATION
        The XML character validation parameter. It indicates if invalid Unicode characters should be removed from XML content before parsing it. The default value is false.
        See Also:
        isXmlCharValidationEnabled(), Constant Field Values
      • PARAM_QUERY_ARGS

        public static final java.lang.String PARAM_QUERY_ARGS
        See Also:
        Constant Field Values
      • PROPS_CLASSPATH

        public static final java.lang.String PROPS_CLASSPATH
        Properties file in the classpath.
        See Also:
        Constant Field Values
      • PROPS_SOLUTION_DIRECTORY

        public static final java.lang.String PROPS_SOLUTION_DIRECTORY
        Properties file in the TDI solution directory.
        See Also:
        Constant Field Values
      • PROPS_PREFIX

        public static final java.lang.String PROPS_PREFIX
        Prefix of the property keys that should be loaded.
        See Also:
        Constant Field Values
      • PROPS_SYSTEM

        public static final java.lang.String PROPS_SYSTEM
        Name of the system property that indicates the location of external properties file.
        See Also:
        Constant Field Values
      • TDI_PARAMETER_KEYS

        public static final java.util.Set<java.lang.String> TDI_PARAMETER_KEYS
        Set of the parameter keys defined by TDI.
    • Constructor Detail

    • Method Detail

      • getDomainObjectStructure

        public java.lang.String getDomainObjectStructure()
        Returns the DOMAIN Object Structure.
        Returns:
        DOMAIN Object Structure
        See Also:
        PARAM_DOMAIN_OS
      • getMaximoVersion

        public java.lang.String getMaximoVersion()
        Returns the Maximo version.
        Returns:
        Maximo version
        See Also:
        PARAM_MX_VERSION
      • getMaxobjectObjectStructure

        public java.lang.String getMaxobjectObjectStructure()
        Returns the MAXOBJECT object structure.
        Returns:
        MAXOBJECT object structure
        See Also:
        PARAM_MAXOBJECT_OS
      • getObjectStructure

        public java.lang.String getObjectStructure()
        Returns the object structure.
        Returns:
        object structure
        See Also:
        PARAM_OBJECT_STRUCTURE
      • getPageSize

        public int getPageSize()
        Returns the page size.
        Returns:
        page size
        See Also:
        PARAM_PAGE_SIZE
      • getPassword

        public java.lang.String getPassword()
        Returns the password the connector will use to authenticate itself on the Maximo server.
        Returns:
        password the connector will use to authenticate itself on the Maximo server
        See Also:
        PARAM_PASSWORD
      • getQueryCriteria

        public java.lang.String getQueryCriteria()
                                          throws MxConnectorException
        Returns the query criteria.

        The default value is an empty tag of the top-level MBO. For example: " <ASSET></ASSET>"

        Returns:
        the query criteria
        Throws:
        MxConnectorException - if no query is defined and it is not possible discover the top-level MBO
        See Also:
        PARAM_QUERY_CRITERIA, getSchema()
      • getTimeout

        public int getTimeout()
        Returns the timeout.
        Returns:
        timeout
        See Also:
        PARAM_TIMEOUT
      • getReplaceOnUpdate

        public boolean getReplaceOnUpdate()
        Returns whether a replace or merge operation will be performed upon update.
        Returns:
        true if replace will be performed, false otherwise.
        See Also:
        PARAM_REPLACE_ON_UPDATE
      • getTransLanguage

        public java.lang.String getTransLanguage()
        Returns the transaction language.
        Returns:
        transaction language
        See Also:
        PARAM_TRANS_LANGUAGE
      • getUrlList

        public java.util.List<java.lang.String> getUrlList()
        Returns a list of URLs.
        Returns:
        a list of URLs
        See Also:
        PARAM_MX_BASE_URL
      • getUrlListForCreate

        public java.util.List<java.lang.String> getUrlListForCreate()
        Returns a list of URLs to perform create operations.
        Returns:
        a list of URLs to perform create operations
        See Also:
        PARAM_MX_BASE_URL, PARAM_EXTSYS, PARAM_ES_CREATE
      • getUrlListForDelete

        public java.util.List<java.lang.String> getUrlListForDelete()
        Returns a list of URLs to perform delete operations.
        Returns:
        a list of URLs to perform delete operations
        See Also:
        PARAM_MX_BASE_URL, PARAM_EXTSYS, PARAM_ES_DELETE
      • getUrlListForQuery

        public java.util.List<java.lang.String> getUrlListForQuery()
        Returns a list of URLs to perform query operations.
        Returns:
        a list of URLs to perform query operations
        See Also:
        PARAM_MX_BASE_URL, PARAM_EXTSYS, PARAM_ES_QUERY
      • getUrlListForQueryMaxDomain

        public java.util.List<java.lang.String> getUrlListForQueryMaxDomain()
        Returns a list of URLs to perform query operations on the MAXDOMAIN object structure.
        Returns:
        a list of URLs to perform query operations on the MAXDOMAIN object structure
        See Also:
        PARAM_MX_BASE_URL, PARAM_EXTSYS, PARAM_DOMAIN_ES_QUERY
      • getUrlListForQueryMaxObject

        public java.util.List<java.lang.String> getUrlListForQueryMaxObject()
        Returns a list of URLs to perform query operations on the MAXOBJECT object structure.
        Returns:
        a list of URLs to perform query operations on the MAXOBJECT object structure
        See Also:
        PARAM_MX_BASE_URL, PARAM_EXTSYS, PARAM_MAXOBJECT_ES_QUERY
      • getUrlListForUpdate

        public java.util.List<java.lang.String> getUrlListForUpdate()
        Returns a list of URLs to perform update operations.
        Returns:
        a list of URLs to perform update operations
        See Also:
        PARAM_MX_BASE_URL, PARAM_EXTSYS, PARAM_ES_UPDATE
      • getUrlListForSync

        public java.util.List<java.lang.String> getUrlListForSync()
        Returns:
        a list of URLs to perform synchronize operations
        See Also:
        PARAM_EXTSYS, PARAM_ES_SYNC
      • getUserId

        public java.lang.String getUserId()
        Returns the user ID.
        Returns:
        user ID
        See Also:
        PARAM_USER_ID
      • getXsdSufix

        public java.lang.String getXsdSufix()
        Returns the XSD URL suffix.
        Returns:
        XSD URL suffix
        See Also:
        PARAM_OBJECT_STRUCTURE
      • isAuthenticationRequired

        public boolean isAuthenticationRequired()
        Indicates if the Maximo server requires basic user authentication.
        Returns:
        true if the Maximo server requires basic user authentication, otherwise false
        See Also:
        PARAM_AUTHENTICATION_REQUIRED
      • isErrorOnExcedentSizeEnabled

        public boolean isErrorOnExcedentSizeEnabled()
        Indicates if an error should be thrown when a text field exceeds the maximum size.
        Returns:
        true if an error should be thrown when a text field exceeds the maximum size. otherwise false
        See Also:
        PARAM_ERROR_ON_EXCEDENT_SIZE
      • isXmlCharValidationEnabled

        public boolean isXmlCharValidationEnabled()
        Indicates if invalid Unicode characters should be removed from XML content before parsing it.
        Returns:
        true if invalid Unicode characters should be removed from XML content before parsing it, otherwise false
        See Also:
        PARAM_XML_CHAR_VALIDATION