Package com.ads.services.webservice

# Class LineageService

java.lang.Object
com.ads.services.webservice.LineageService

public class LineageService extends Object
Contains the methods to get the lineage information on system/environment/table/column. RequestStatus return type methods will result in being returned as either true or false as its status.
All the WebServices methods have return type String - meaning if the method is execution is successful, then it will return a string in the form of JSON or XML String based on the outputFormat parameter given by the user.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `LineageService()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `getColumnDetails(String userName, String password, String outputFormat, String endPointType, int mappingSequenceId)`
  Returns the List Objects String in the form of JSON for the specified mappingSequenceId.The returned SMColumn Objects contains the details about the source and target columns like systemName, environmentName, tableName, columnName, columnDataType etc..
  `String`
  `getColumnDetailsByMapSeqIds(String userName, String password, String outputFormat, String endPointType, String mappingSequenceIds)`
  Returns the List Objects String in the form of JSON for the specified mappingSequenceId.
  `String`
  `getColumnLineage(String userName, String password, String outputFormat, String lineageType, String systemName, String environmentName, String tableName, String columnName, String projectIds)`
  Returns the Lineage Object String in the form of JSON for the specified system, environment, table and column name.
  `String`
  `getColumnsBySysEnvTabs(String userName, String password, String outputFormat, String endPointType, String systemEnvironmentTableJsonArray, String propertiesTypes, String projectIds)`
  Returns the List objects String in the form of JSON for the specified systemName, environmentName and tableName.
  `String`
  `getEnvironmentLineage(String userName, String password, String outputFormat, String lineageType, String systemName, String environmentName, String projectIds)`
  Returns the Lineage Object String in the form of JSON for the specified system and environment name.The returned Lineage object contains the details about the source and target environments like systemName, environmentName.
  `String`
  `getEnvironmentsBySystemNamesAs(String userName, String password, String outputFormat, String endPointType, String systemNames, String projectIds)`
  Returns the List objects String in the form of JSON for the specified systemName.
  `String`
  `getLineageColumns(String userName, String password, String outputFormat, String endPointType, String systemName, String environmentName, String tableName, String propertiesTypes, String projectIds)`
  Returns the List objects String in the form of JSON for the specified systemName, environmentName and tableName.
  `String`
  `getLineageEnvironments(String userName, String password, String outputFormat, String endPointType, String systemName, String projectIds)`
  Returns the List objects String in the form of JSON for the specified systemName.
  `String`
  `getLineageTables(String userName, String password, String outputFormat, String endPointType, String systemName, String environmentName, String projectIds)`
  Returns the List Objects String in the form of JSON for the specified systemName and environmentName.
  `String`
  `getSystemLineage(String userName, String password, String outputFormat, String lineageType, String systemName, String projectIds)`
  Returns the Lineage Object String in the form of JSON for the specified system name.
  `String`
  `getTableLineage(String userName, String password, String outputFormat, String lineageType, String systemName, String environmentName, String tableName, String projectIds)`
  Returns the Lineage Object String in the form of JSON for the specified system, environment and table name.
  `String`
  `getTablesBySysEnvs(String userName, String password, String outputFormat, String endPointType, String systemEnvironmentJsonArray, String projectIds)`
  Returns the List Objects String in the form of JSON for the specified systemName and environmentName.
  `String`
  `resetLineageData(String userName, String password)`
  It will reset the lineage data.
  `String`
  `syncLineageData(String userName, String password)`
  It will sync the lineage data.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### LineageService

    public LineageService()

- ## Method Details

  - ### getSystemLineage

    public String getSystemLineage(String userName, String password, String outputFormat, String lineageType, String systemName, String projectIds)
    Returns the Lineage Object String in the form of JSON for the specified system name. The returned Lineage object contains the details about the source and target systems like systemName.
    Specification of systemName and projectIds are mandatory, and the valid types of lineageType are `APIConstants.LineageType.FORWARD`, `APIConstants.LineageType.REVERSE`, `APIConstants.LineageType.DUAL`. And the projectIds value should be like "1,2,3.." to get the lineage on specific projects and "null" to get the lineage on all projects. outputFormat can be either JSON or XML. If outputFormat is not specified, by default the method will return the JSON String.
    Parameters:
      `userName` - String
      `password` - String
      `lineageType` - String - valid types FORWARD, REVERSE, DUAL.
      `systemName` - String
      `projectIds` - String - value should be like "1,2,3..."
      `outputFormat` - String - Valid values: JSON or XML
    Returns:
      String - RequestStatus object in the form of json string
    Since:
      9.3

  - ### getEnvironmentLineage

    public String getEnvironmentLineage(String userName, String password, String outputFormat, String lineageType, String systemName, String environmentName, String projectIds)
    Returns the Lineage Object String in the form of JSON for the specified system and environment name.The returned Lineage object contains the details about the source and target environments like systemName, environmentName.
    Specification of systemName, environmentName and projectIds are mandatory, and the valid types of lineageType are `APIConstants.LineageType.FORWARD`, `APIConstants.LineageType.REVERSE`, `APIConstants.LineageType.DUAL`. And the projectIds value should be like "1,2,3.." to get the lineage on specific projects and "null" to get the lineage on all projects. outputFormat can be either JSON or XML. If outputFormat is not specified, by default the method will return the JSON String.
    Parameters:
      `userName` - String
      `password` - String
      `lineageType` - String - valid types FORWARD, REVERSE, DUAL.
      `systemName` - String
      `environmentName` - String
      `projectIds` - String - value should be like "1,2,3..."
      `outputFormat` - String - Valid values: JSON or XML
    Returns:
      String - RequestStatus object in the form of json string
    Since:
      9.3

  - ### getTableLineage

    public String getTableLineage(String userName, String password, String outputFormat, String lineageType, String systemName, String environmentName, String tableName, String projectIds)
    Returns the Lineage Object String in the form of JSON for the specified system, environment and table name. The returned Lineage object contains the details about the source and target tables like systemName, environmentName, tableName.
    Specification of systemName, environmentName, tableName and projectIds are mandatory, and the valid types of lineageType are `APIConstants.LineageType.FORWARD`, `APIConstants.LineageType.REVERSE`, `APIConstants.LineageType.DUAL`. And the projectIds value should be like "1,2,3.." to get the lineage on specific projects and "null" to get the lineage on all projects. outputFormat can be either JSON or XML. If outputFormat is not specified, by default the method will return the JSON String.
    Parameters:
      `userName` - String
      `password` - String
      `lineageType` - String - valid types FORWARD, REVERSE, DUAL.
      `systemName` - String
      `environmentName` - String
      `tableName` - String
      `projectIds` - String
      `outputFormat` - String - Valid values: JSON or XML
    Returns:
      String - RequestStatus object in the form of json string
    Since:
      9.3

  - ### getColumnLineage

    public String getColumnLineage(String userName, String password, String outputFormat, String lineageType, String systemName, String environmentName, String tableName, String columnName, String projectIds)
    Returns the Lineage Object String in the form of JSON for the specified system, environment, table and column name. The returned Lineage object contains the details about the source and target columns like systemName, environmentName,tableName, columnName.
    Specification of systemName, environmentName, tableName, columnName and projectIds are mandatory, and the valid types of lineageType are `APIConstants.LineageType.FORWARD`, `APIConstants.LineageType.REVERSE`, `APIConstants.LineageType.DUAL`. And the projectIds value should be like "1,2,3.." to get the lineage on specific projects and "null" to get the lineage on all projects. outputFormat can be either JSON or XML. If outputFormat is not specified, by default the method will return the JSON String.
    Parameters:
      `userName` - String
      `password` - String
      `lineageType` - String - valid types FORWARD, REVERSE, DUAL.
      `systemName` - String
      `environmentName` - String
      `tableName` - String
      `columnName` - String
      `projectIds` - String
      `outputFormat` - String - Valid values: JSON or XML
    Returns:
      String - RequestStatus object in the form of json string
    Since:
      9.3

  - ### getColumnDetails

    public String getColumnDetails(String userName, String password, String outputFormat, String endPointType, int mappingSequenceId)
    Returns the List Objects String in the form of JSON for the specified mappingSequenceId.The returned SMColumn Objects contains the details about the source and target columns like systemName, environmentName, tableName, columnName, columnDataType etc..
    Specification of mappingSequenceId and endPointType are mandatory, and the valid types of endPointTypes are `APIConstants.EndPointType.SOURCE`, `APIConstants.EndPointType.TARGET`, `APIConstants.EndPointType.BOTH`. If we specify endPointType as SOURCE then the returned column object will have the source information like source system name, source environment name etc.. If we specify endPointType as TARGET then the returned column object will have the target information like target system name, target environment name etc.. If we specify endPointType as BOTH then the returned column object will have both the source and target information like source system name, source environment name, target system name, target environment name etc.. outputFormat can be either JSON or XML. If outputFormat is not specified, by default the method will return the JSON String.
    Parameters:
      `userName` - String
      `password` - String
      `endPointType` - String - valid types SOURCE, TARGET, BOTH.
      `mappingSequenceId` - int
      `outputFormat` - String - Valid values: JSON or XML
    Returns:
      String - RequestStatus object in the form of json string
    Since:
      9.3

  - ### getColumnDetailsByMapSeqIds

    public String getColumnDetailsByMapSeqIds(String userName, String password, String outputFormat, String endPointType, String mappingSequenceIds)
    Returns the List Objects String in the form of JSON for the specified mappingSequenceId. The returned SMColumn objects contains the details about the source and target columns like systemName, environmentName, tableName, columnName,columnDataType etc..
    Specification of mappingSequenceId and endPointType are mandatory, and the valid types of endPointTypes are `APIConstants.EndPointType.SOURCE`, `APIConstants.EndPointType.TARGET`, `APIConstants.EndPointType.BOTH`. If we specify endPointType as SOURCE then the returned column object will have the source information like source system name, source environment name etc.. If we specify endPointType as TARGET then the returned column object will have the target information like target system name, target environment name etc.. If we specify endPointType as BOTH then the returned column object will have both the source and target information like source system name, source environment name, target system name, target environment name etc.. outputFormat can be either JSON or XML. If outputFormat is not specified, by default the method will return the JSON String.
    Parameters:
      `userName` - String
      `password` - String
      `endPointType` - String - valid types SOURCE, TARGET, BOTH.
      `mappingSequenceIds` - String
      `outputFormat` - String - Valid values: JSON or XML
    Returns:
      String - RequestStatus object in the form of json string

      Sample 'mappingSequenceIds' :
      [1,2]

    Since:
      9.3

  - ### getLineageEnvironments

    public String getLineageEnvironments(String userName, String password, String outputFormat, String endPointType, String systemName, String projectIds)
    Returns the List objects String in the form of JSON for the specified systemName. The returned SMEnvironment objects contains the details like systemName,environmentName.
    Specification of endPointType, systemName and projectIds are mandatory, and the valid types of endPointTypes are `APIConstants.EndPointType.SOURCE`, `APIConstants.EndPointType.TARGET`, `APIConstants.EndPointType.BOTH`. If we specify endPointType as SOURCE then the returned environment object will have the source information like source system name, source environment name etc.. If we specify endPointType as TARGET then the returned environment object will have the target information like target system name, target environment name etc.. If we specify endPointType as BOTH then the returned environment object will have both the source and target information like source system name, source environment name, target system name, target environment name etc.. And the projectIds value should be like "1,2,3.." to get the list of environments of specific projects and "null" to get the list of environments of all projects. outputFormat can be either JSON or XML. If outputFormat is not specified, by default the method will return the JSON String.
    Parameters:
      `userName` - String
      `password` - String
      `endPointType` - String - valid types SOURCE, TARGET, BOTH.
      `systemName` - String
      `projectIds` - String
      `outputFormat` - String - Valid values: JSON or XML
    Returns:
      String - RequestStatus object in the form of json string
    Since:
      9.3

  - ### getEnvironmentsBySystemNamesAs

    public String getEnvironmentsBySystemNamesAs(String userName, String password, String outputFormat, String endPointType, String systemNames, String projectIds)
    Returns the List objects String in the form of JSON for the specified systemName. The returned SMEnvironment objects contains the details like systemName,environmentName.
    Specification of endPointType, systemName and projectIds are mandatory, and the valid types of endPointTypes are `APIConstants.EndPointType.SOURCE`, `APIConstants.EndPointType.TARGET`, `APIConstants.EndPointType.BOTH`. If we specify endPointType as SOURCE then the returned environment object will have the source information like source system name, source environment name etc.. If we specify endPointType as TARGET then the returned environment object will have the target information like target system name, target environment name etc.. If we specify endPointType as BOTH then the returned environment object will have both the source and target information like source system name, source environment name, target system name, target environment name etc.. And the projectIds value should be like "1,2,3.." to get the list of environments of specific projects and "null" to get the list of environments of all projects. outputFormat can be either JSON or XML. If outputFormat is not specified, by default the method will return the JSON String.
    Parameters:
      `userName` - String
      `password` - String
      `endPointType` - String - valid types SOURCE, TARGET, BOTH.
      `systemNames` - String
      `projectIds` - String
      `outputFormat` - String - Valid values: JSON or XML
    Returns:
      String - RequestStatus object in the form of json string

      Sample 'systemNames' :
      ["S1","S2","S3"]

    Since:
      9.3

  - ### getLineageTables

    public String getLineageTables(String userName, String password, String outputFormat, String endPointType, String systemName, String environmentName, String projectIds)
    Returns the List Objects String in the form of JSON for the specified systemName and environmentName. The returned SMTable objects contains the details like systemName, environmentName and tableName.
    Specification of endPointType, systemName, environmentName and projectIds are mandatory, and the valid types of endPointTypes are `APIConstants.EndPointType.SOURCE`, `APIConstants.EndPointType.TARGET`, `APIConstants.EndPointType.BOTH`. If we specify endPointType as SOURCE then the returned table object will have the source information like source system name, environment name and table name etc.. If we specify endPointType as TARGET then the returned table object will have the target information like target system name, environment name and table name etc.. If we specify endPointType as BOTH then the returned table object will have both the source and target information like source system name, source environment name, source table name, target system name, target environment name , target table name etc.. And the projectIds value should be like "1,2,3.." to get the list of tables of specific projects and "null" to get the list of tables of all projects. outputFormat can be either JSON or XML. If outputFormat is not specified, by default the method will return the JSON String.
    Parameters:
      `userName` - String
      `password` - String
      `endPointType` - String - valid types SOURCE, TARGET, BOTH.
      `systemName` - String
      `environmentName` - String
      `projectIds` - String
      `outputFormat` - String - Valid values: JSON or XML
    Returns:
      String - RequestStatus object in the form of json string
    Since:
      9.3

  - ### getTablesBySysEnvs

    public String getTablesBySysEnvs(String userName, String password, String outputFormat, String endPointType, String systemEnvironmentJsonArray, String projectIds)
    Returns the List Objects String in the form of JSON for the specified systemName and environmentName. The returned SMTable objects contains the details like systemName, environmentName and tableName.
    Specification of endPointType, systemName, environmentName and projectIds are mandatory, and the valid types of endPointTypes are `APIConstants.EndPointType.SOURCE`, `APIConstants.EndPointType.TARGET`, `APIConstants.EndPointType.BOTH`. If we specify endPointType as SOURCE then the returned table object will have the source information like source system name, environment name and table name etc.. If we specify endPointType as TARGET then the returned table object will have the target information like target system name, environment name and table name etc.. If we specify endPointType as BOTH then the returned table object will have both the source and target information like source system name, source environment name, source table name, target system name, target environment name , target table name etc.. And the projectIds value should be like "1,2,3.." to get the list of tables of specific projects and "null" to get the list of tables of all projects. outputFormat can be either JSON or XML. If outputFormat is not specified, by default the method will return the JSON String.
    Parameters:
      `userName` - String
      `password` - String
      `endPointType` - String - valid types SOURCE, TARGET, BOTH.
      `systemEnvironmentJsonArray` - String
      `projectIds` - String
      `outputFormat` - String - Valid values: JSON or XML
    Returns:
      String - RequestStatus object in the form of json string

      Sample 'systemEnvironmentJsonArray' :
      {"S2":["Env_A","Env_B"]}

    Since:
      9.3

  - ### getLineageColumns

    public String getLineageColumns(String userName, String password, String outputFormat, String endPointType, String systemName, String environmentName, String tableName, String propertiesTypes, String projectIds)
    Returns the List objects String in the form of JSON for the specified systemName, environmentName and tableName. The returned SMColumn objects contains the details like systemName, environmentName, tableName and columnName.
    Specification of endPointType, systemName, environmentName, tableName and projectIds are mandatory, and the valid types of endPointTypes are `APIConstants.EndPointType.SOURCE`, `APIConstants.EndPointType.TARGET`, `APIConstants.EndPointType.BOTH`. If we specify endPointType as SOURCE then the returned column object will have the source information like source system name, environment name, table name and column name etc.. If we specify endPointType as TARGET then the returned column object will have the target information like target system name, environment name, table name and column name etc.. If we specify endPointType as BOTH then the returned column object will have both the source and target information like source system name, source environment name, source table name,source column name, target system name, target environment name , target table name and target column name etc.. And the projectIds value should be like "1,2,3.." to get the list of columns of specific projects and "null" to get the list of columns of all projects.
    Valid types of propertiesTypes are `APIConstants.PropertiesType.TECHNICAL`, `APIConstants.PropertiesType.BUSINESS`, `APIConstants.PropertiesType.NONE` If we specify the propertiesTypes as BUSINESS then the column object will have business properties like colum definition, comments etc.. If we specify the propertiesTypes as TECHNICAL then the column object will have technical properties like column length,precision etc.. If we specify the propertiesTypes as NONE then the column object will have only system,environment,table and column name only. outputFormat can be either JSON or XML. If outputFormat is not specified, by default the method will return the JSON String.
    Parameters:
      `userName` - String
      `password` - String
      `endPointType` - String - valid types SOURCE, TARGET, BOTH.
      `systemName` - String
      `environmentName` - String
      `tableName` - String
      `projectIds` - String
      `propertiesTypes` - String - valid types TECHNICAL, BUSINESS, NONE.
      `outputFormat` - String - Valid values: JSON or XML
    Returns:
      String - RequestStatus object in the form of json string
    Since:
      9.3

  - ### getColumnsBySysEnvTabs

    public String getColumnsBySysEnvTabs(String userName, String password, String outputFormat, String endPointType, String systemEnvironmentTableJsonArray, String propertiesTypes, String projectIds)
    Returns the List objects String in the form of JSON for the specified systemName, environmentName and tableName. The returned SMColumn objects contains the details like systemName, environmentName, tableName and columnName.
    Specification of endPointType, systemName, environmentName, tableName and projectIds are mandatory, and the valid types of endPointTypes are `APIConstants.EndPointType.SOURCE`, `APIConstants.EndPointType.TARGET`, `APIConstants.EndPointType.BOTH`. If we specify endPointType as SOURCE then the returned column object will have the source information like source system name, environment name, table name and column name etc.. If we specify endPointType as TARGET then the returned column object will have the target information like target system name, environment name, table name and column name etc.. If we specify endPointType as BOTH then the returned column object will have both the source and target information like source system name, source environment name, source table name,source column name, target system name, target environment name , target table name and target column name etc.. And the projectIds value should be like "1,2,3.." to get the list of columns of specific projects and "null" to get the list of columns of all projects.
    Valid types of propertiesTypes are `APIConstants.PropertiesType.TECHNICAL`, `APIConstants.PropertiesType.BUSINESS`, `APIConstants.PropertiesType.NONE` If we specify the propertiesTypes as BUSINESS then the column object will have business properties like colum definition, comments etc.. If we specify the propertiesTypes as TECHNICAL then the column object will have technical properties like column length,precision etc.. If we specify the propertiesTypes as NONE then the column object will have only system,environment,table and column name only. outputFormat can be either JSON or XML. If outputFormat is not specified, by default the method will return the JSON String.
    Parameters:
      `userName` - String
      `password` - String
      `endPointType` - String - valid types SOURCE, TARGET, BOTH.
      `systemEnvironmentTableJsonArray` - String
      `projectIds` - String
      `propertiesTypes` - String - valid types TECHNICAL, BUSINESS, NONE.
      `outputFormat` - String - Valid values: JSON or XML
    Returns:
      String - RequestStatus object in the form of json string

      Sample 'systemEnvironmentJsonArray' :
      {"S2":{"Env_Excel":["dbo.Categories","dbo.Customers"],"Web_Env":["dbo.ADS_ASSOCIATIONS","dbo.ADS_FORM"]}}

    Since:
      9.3

  - ### syncLineageData

    public String syncLineageData(String userName, String password)
    It will sync the lineage data.
    Parameters:
      `userName` - - String
      `password` - - String
    Returns:
      String

  - ### resetLineageData

    public String resetLineageData(String userName, String password)
    It will reset the lineage data.
    Parameters:
      `userName` - - String
      `password` - - String
    Returns:
      String