Change History
==============
(V2.5.0) Changes
-----------------
* NEXUSIC_RESTAPI:
    1. Added ``createLinkedAssets`` function to allow user to created linked assets in the NEXUS IC database
    2. Modified ``createNewAssets`` function to bypass asset type if not included in the input dictionary
    3. Created ``AssetNode`` class to allow usage of graph algorithms to represent Asset Hierarchy. Only implemented for NEXUSIC
    4. Added ``addGraphAsset`` function to all users add an asset to the graph data structure. Implemented following Depth-first search algorithm
    5. Rewrote ``getAssetByFullLocation`` function to avoid using the Full_Location as an API call query parameter and implemented the solution using graph algorithms

(V2.4.3) Changes
-----------------
* NEXUSIC_RESTAPI:
    1. Added response status code 204 to ``validate_and_return_response`` function

* MAXIMO_API:
    1. Added response status code 204 to ``validate_and_return_response`` function

* OSIPI_WebAPI:
    1. Added response status code 204 to ``validate_and_return_response`` function

* DOCUMENTUM_API:
    1. Added response status code 204 to ``validate_and_return_response`` function

* Utils:
    1. Added Utils to documentation

(V2.4.2) Changes
-----------------
* NEXUSIC_RESTAPI:
    1. Fixed a bug with logger level

(V2.4.1) Changes
-----------------
* NEXUSIC_RESTAPI:
    1. Fixed the reference to the utils file

* MAXIMO_API:
    1. Fixed the reference to the utils file

* OSIPI_WebAPI:
    1. Fixed the reference to the utils file

* DOCUMENTUM_API:
    1. Fixed the reference to the utils file

(V2.4.0) Changes
-----------------
* Utils:
    1. Added ``setup_logger`` function to setup logger
    2. Added ``print_log`` function  to print to console and log file

* NEXUSIC_RESTAPI:
    1. Replaced all ``print`` statements with ``utils.print_log``
    2. Removed ``self.verbose`` from all functions

* MAXIMO_API:
    1. Replaced all ``print`` statements with ``utils.print_log``
    2. Removed ``self.verbose`` from all functions

* OSIPI_WebAPI:
    1. Replaced all ``print`` statements with ``utils.print_log``
    2. Removed ``self.verbose`` from all functions

* DOCUMENTUM_API:
    1. Replaced all ``print`` statements with ``utils.print_log``
    2. Removed ``self.verbose`` from all functions

(V2.3.11) Changes
-----------------
* NEXUSIC_RESTAPI:
    1. Fixed a bug in ``getLookupListItem`` function

(V2.3.10) Changes
-----------------
* MAXIMO_API:
    1. Fixed a bug in the ``MAXAUTH`` authentication method

(V2.3.9) Changes
----------------
* MAXIMO_API:
    1. Added ``MAXAUTH`` as another authentication method

(V2.3.8) Changes
----------------
* MAXIMO_API:
    1. Added the ability to decide whether to skip SSL verification during authentication

(V2.3.7) Changes
----------------
* NEXUSIC_RESTAPI:
    1. Changed the error handler for the ``validate_and_return_response`` function to raise an Exception instead of returning a string
    2. In the ``getLookupListItem`` function: Added the ability to pass the Lookup list name as a filter parameter

(V2.3.6) Changes
----------------
* OSIPI_WebAPI:
    1. Improved ``validate_and_return_response`` function error handler

(V2.3.5) Changes
----------------
* MAXIMO_API:
    1. Added ``use_oslc`` to ``oslc_update_record`` function to allow using either oslc or rest in the Post call

(V2.3.4) Changes
----------------
* NEXUSIC_RESTAPI:
    1. Fixed a bug in ``createNewRecord`` function

(V2.3.3) Changes
----------------
* MAXIMO_API:
    1. Added ``oslc_create_new_record`` function
    2. Added ``oslc_update_record`` function
    3. Added ``mbo_exec_method`` function

(V2.3.2) Changes
----------------
* Docs:
    1. Added library Sphinx docs

(V2.3.1) Changes
----------------
* MAXIMO_API:
    1. Added the ability to run API calls using _mif
    2. Added ``mbo_update_record`` function
    3. Added ``mbo_get_table`` function
* DOCUMENTUM_API:
    1. Added new connector to DOCUMENTUM

(V2.2.1) Changes
----------------
* NEXUSIC_RESTAPI:
    1. Added ``jobStatus`` function
    2. Added ``jobContent`` function
    3. Added ``importLibrary`` function

(V2.2.0) Changes
----------------
* NEXUSIC_RESTAPI:
    1. Added ``generateReport_v2`` function
    2. Added ``get_rt_id`` function
    3. Added ``importRepository`` function
    4. Added ``importMultimedia`` function
    5. Updated ``createNewEvents`` function to import events multimedia
* MAXIMO_API:
    1. Added ``get_mx_wos`` function
    2. Added ``get_mx_srs`` function
    3. Added ``mxapi_post_request`` function
    4. Added ``mbo_create_new_record`` function
    5. Renamed ``get_table`` to ``oslc_get_table``

(V2.1.8) Changes
----------------
* NEXUSIC_RESTAPI:
    1. Added ``createNewAssets`` function

(V2.1.7) Changes
----------------
* NEXUSIC_RESTAPI:
    1. Added ``component_id`` field in the event input dictionary in ``createNewEvents`` function
    2. Optimized ``createNewEvents`` function performance

(V2.1.6) Changes
----------------
* NEXUSIC_RESTAPI:
    1. Added the following arguments to ``createNewEvents`` function:
        - ``sameAsset``
        - ``sameWorkpack``
        - ``sameEventType``
        - ``sameSurveySet``

    2. Fixed a bug in ``createNewEvents`` function to import continuous events

(V2.1.5) Changes
----------------
* NEXUSIC_RESTAPI:
    1. Added ``getLookupListItem`` function

(V2.1.4) Changes
----------------
* NEXUSIC_RESTAPI:
    1. ``__init__.py`` version import bug fix

(V2.1.3) Changes
----------------
* NEXUSIC_RESTAPI:
    1. Added the ability to get multiple pages in the ``getTable`` function
    2. Removed ``current_attempt`` arugment from:
        - ``getAssetLocationByName``
        - ``getAssetLocationByID``
        - ``getAssetChildren``
        - ``getAssetTypesID``
        - ``getTableDBNames``
        - ``getAssetByFullLocation``
        - ``getTableDefInfo``

(V2.1.2) Changes
----------------
* NEXUSIC_RESTAPI:
    1. Added ``getAssetByFullLocation`` function
    2. Added ``getTableDefInfo`` function
    3. Added ``createNewEvents`` function
* OSIPI_WebAPI:
    1. Added docstring
* MAXIMO_API:
    1. Added docstring

(V2.1.1) Changes
----------------
* OSIPI_WebAPI:
    1. Added the ability to retrieve multiple AssetServers and DataServers in ``get_system_links`` function
    2. Added the ability to get points list for a specific DataServer in ``getPointsList`` function

(V2.1.0) Changes
----------------
* NEXUSIC_RESTAPI:
    1. Added ``createNewRecord`` function
* MAXIMO_RESTAPI:
    1. Added read only connector class
* OSIPI_WebAPI:
    1. Added read only connector class

(V2.0.5) Changes
----------------
* NEXUSIC_RESTAPI:
    1. Improved disconnection error handler
    2. ``getAssetChildren`` function: Added the ability to search at a specific level
    3. Added ``getAssetTypesID`` function
    4. Added ``getTableDBNames`` function

(V2.0.4) Changes
----------------
* NEXUSIC_RESTAPI:
    1. Added ``getAssetLocationByName`` function
    2. Added ``getAssetLocationByID`` function
    3. Added ``getAssetChildren`` function

(V2.0.3) Changes
----------------
* NEXUSIC_RESTAPI:
    1. Added the ability to authenticate using two modes (APIKEY and BASIC)
        - APIKEY: Requires an API Key to authenticate
        - BASIC: Requires username and password

(V2.0.2) Changes
----------------
* NEXUSIC_RESTAPI:
    1. Added the ability to bypass SSL verification

(V2.0.1) Changes
----------------
* Initial deployment in pypi.org