Package com.ads.services.webservice.rest

# Class MappingManagerResource

java.lang.Object
com.ads.services.webservice.rest.MappingManagerResource

@RestController @RequestMapping("/api/mappingmanager") public class MappingManagerResource extends Object
Contains the methods related to perform the operations such as creation, updation, deletion and retrieval of Projects, Mappings, Subjects, MappingSpecifications and Documents, cloneMapping, versioning the map, Baseline Project, Publish the mappings.
All the REST methods have return type ResponseEntity.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `jakarta.servlet.http.HttpServletRequest`
  `request`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `MappingManagerResource()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `org.springframework.http.ResponseEntity`
  `addMappingSpecifications(int mappingId, ArrayList<MappingSpecificationRow> mappingSpecificationRows)`
  Inserts list of mappingSpecifications into the specified mappingId.
  `org.springframework.http.ResponseEntity`
  `baselineProject(int projectId, String versionLabel, String changeDescription)`
  Appends the baseline to the project for the specified projectId.
  `org.springframework.http.ResponseEntity`
  `createMapping(List<Mapping> mappings, int fillOptions)`
  Creates Mappings for the specified mapping objects and fillOptions.
  Specifying projectId or subjectId and mappingName are mandatory in each mapping object.
  Here fillOptions can be Integer values of either `APIConstants.MMFillOptions.MAPPING_SPECIFICATIONS` or `APIConstants.MMFillOptions.MAPPING_DOCUMENTS` or `APIConstants.MMFillOptions.MAPPING_EXTENDED_PROPERTIES` for example: If you want to add mappings along with mapping specifications and documents you need to pass the fillOptions parameter value as 3 (MAPPING_SPECIFICATIONS(1) + MAPPING_DOCUMENTS(2)).
  `org.springframework.http.ResponseEntity`
  `createProjects(List<Project> projects)`
  Creates the list of projects for the specified list of project objects.
  Specifying the projectName in each project object is mandatory along with the other information regarding project.
  `org.springframework.http.ResponseEntity`
  `createSubjects(List<Subject> subjects)`
  Creates the list of subjects for the specified list of subject objects.
  `org.springframework.http.ResponseEntity`
  `deleteMappings(String mappingIds, APIConstants.VersionMode versionMode, float versionNo)`
  Deletes the mappings of the specified mappingIds.
  `org.springframework.http.ResponseEntity`
  `deleteMappingSpecifications(String mappingSequenceIds)`
  Deletes the mappingSpecifications for the specified list of mappingSequenceIds.
  `org.springframework.http.ResponseEntity`
  `deleteProjects(String projectIds)`
  Deletes the list of projects for the specified projectIds.Specifying projectIds list is mandatory to delete the projects.
  If the projects are deleted all its associated date will also be deleted.
  `org.springframework.http.ResponseEntity`
  `deleteSubjects(String subjectIds)`
  Deletes the list of subjects for the specified subjectIds.
  `org.springframework.http.ResponseEntity`
  `getMapping(int mappingId, int fillOptions, int page, int per_page)`
  Returns mapping object for the specified mappingId and fillOptions.
  `org.springframework.http.ResponseEntity`
  `getMappingId(String projectName, String subjectPath, String mappingName)`
  Returns the mappingId for the specified projectName, subjectPath and mappingName.
  `org.springframework.http.ResponseEntity`
  `getMappings(String mappingIds, int fillOptions, int page, int per_page)`
  Returns list of mappings for the specified mappingIds list and fillOptions.
  `org.springframework.http.ResponseEntity`
  `getMappingSpecifications(int mappingId, int page, int per_page)`
  Returns the list of mapping specifications for the specified mappingId.
  `org.springframework.http.ResponseEntity`
  `getMappingSpecifications(String mappingSequenceIds, int page, int per_page)`
  Returns the list of mapping specification rows for the specified list of mappingSequenceIds.
  `org.springframework.http.ResponseEntity`
  `getProject(int projectId)`
  Returns the project object for the specified projectId.
  `org.springframework.http.ResponseEntity`
  `getProjectId(String projectName)`
  Returns the projectId for the specified projectName.
  `org.springframework.http.ResponseEntity`
  `getProjects(String projectIds, int page, int per_page)`
  Returns the list of all projects for the specified projectIds, where each project contains details like projectName, projectDescription, projectDocuments etc..
  `org.springframework.http.ResponseEntity`
  `getSubject(int subjectId)`
  Returns subject object for the specified subjectId.
  `org.springframework.http.ResponseEntity`
  `getSubjectId(String projectName, String subjectPath)`
  Returns subjectId for the specified projectName and subjectPath.
  `org.springframework.http.ResponseEntity`
  `getSubjects(String subjectIds, int page, int per_page)`
  Returns the list of subjects for the specified subjectIds.
  `org.springframework.http.ResponseEntity`
  `publishMapping(int mappingId, String effectiveDate, String changeDescription, String publishNotes)`
  Mapping will be published for the specified mappingId, effectiveDate, changeDescription and publishNotes.
  `org.springframework.http.ResponseEntity`
  `publishMappings(String mappingIds, String effectiveDate, String changeDescription, String publishNotes)`
  Mappings will be published for the specified mappingIds effectiveDate and changeDescription and publishNotes.
  `org.springframework.http.ResponseEntity`
  `syncMetadata(List<Integer> mappingIds)`
  `org.springframework.http.ResponseEntity`
  `unPublishMap(int mappingId)`
  Mapping is unpublished for the specified mappingId.
  `org.springframework.http.ResponseEntity`
  `updateMappings(List<Mapping> mappings)`
  Updates the mappings for the specified list of mapping objects.
  `org.springframework.http.ResponseEntity`
  `updateMappingSpecifications(ArrayList<MappingSpecificationRow> mappingSpecificationRows)`
  Mapping specifications are updated with the specified mappingSpecificationRow objects.
  `org.springframework.http.ResponseEntity`
  `updateProjects(List<Project> projects)`
  Updates the projects for the specified list of project objects.
  `org.springframework.http.ResponseEntity`
  `updateSubjects(List<Subject> subjects)`
  Updates the subjects details for the specified list of subject objects.
  `org.springframework.http.ResponseEntity`
  `versionMapping(int mappingId, String versionLabel, String changeDescription)`
  Appends mapping version for the specified mappingId.

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

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

- ## Field Details

  - ### request

    @Autowired public jakarta.servlet.http.HttpServletRequest request

- ## Constructor Details

  - ### MappingManagerResource

    public MappingManagerResource()

- ## Method Details

  - ### getMapping

    @GetMapping(path="/mappings/{mapping_id}", produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity getMapping(@PathVariable(name="mapping_id") int mappingId, @RequestParam(name="fillOptions",defaultValue="0") int fillOptions, @RequestParam(name="page",defaultValue="1") int page, @RequestParam(name="per_page",defaultValue="25") int per_page) throws Exception
    Returns mapping object for the specified mappingId and fillOptions.
    Here fillOptions parameter takes value of either `APIConstants.MMFillOptions.MAPPING_SPECIFICATIONS` or `APIConstants.MMFillOptions.MAPPING_DOCUMENTS` Based on the value passed its related data is returned within the mapping object and if you want to get mapping Specifications and mapping documents then fillOptions parameter value will be addition of MAPPING_SPECIFICATIONS value and MAPPING_DOCUMENTS value i.e 1+2=3. The default integer value for fillOptions is 0(zero).
    Note: Pagination is applied, and by default, 25 records are displayed per page.
    Parameters:
      `fillOptions` - int `APIConstants.MMFillOptions`.
      `mappingId` - int
      `page` - The page number to retrieve (1-indexed).
      `per_page` - The number of records to display per page.
    Returns:
      Response - Mapping object.
    Throws:
      `Exception`
    Since:
      12.0

  - ### getMappings

    @GetMapping(path="/mappings", produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity getMappings(@RequestParam(name="mappingIds") String mappingIds, @RequestParam(name="fillOptions",defaultValue="0") int fillOptions, @RequestParam(name="page",defaultValue="1") int page, @RequestParam(name="per_page",defaultValue="25") int per_page) throws Exception
    Returns list of mappings for the specified mappingIds list and fillOptions. Specification of mappingIds list is mandatory.
    Here fillOptions parameter takes value of either `APIConstants.MMFillOptions.MAPPING_SPECIFICATIONS` or `APIConstants.MMFillOptions.MAPPING_DOCUMENTS` Based on the value passed its related data is returned within the mapping object and if you want to get mapping Specifications and mapping documents then fillOptions parameter value will be addition of MAPPING_SPECIFICATIONS value and MAPPING_DOCUMENTS value i.e 1+2=3. The default integer value for fillOptions is 0(zero).
    Parameters:
      `mappingIds` - String
      `fillOptions` - int `APIConstants.MMFillOptions`.
      `page` - The page number to retrieve (1-indexed).
      `per_page` - The number of records to display per page.
    Returns:
      Response - List of mapping objects.
    Throws:
      `Exception`
    Since:
      12.0

  - ### getMappingSpecifications

    @GetMapping(path="/mappings/specifications/{mapping_id}", produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity getMappingSpecifications(@PathVariable(name="mapping_id") int mappingId, @RequestParam(name="page",defaultValue="1") int page, @RequestParam(name="per_page",defaultValue="25") int per_page) throws Exception
    Returns the list of mapping specifications for the specified mappingId.
    Specifying the mappingId is mandatory, based on which it returns list of mapping specifications associated with it.
    Note: Pagination is applied, and by default, 25 records are displayed per page.
    Parameters:
      `mappingId` - int
      `page` - The page number to retrieve (1-indexed).
      `per_page` - The number of records to display per page.
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### getMappingSpecifications

    @GetMapping(path="/mappings/specifications", produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity getMappingSpecifications(@RequestParam(name="mappingSequenceIds") String mappingSequenceIds, @RequestParam(name="page",defaultValue="1") int page, @RequestParam(name="per_page",defaultValue="25") int per_page) throws Exception
    Returns the list of mapping specification rows for the specified list of mappingSequenceIds.
    Mapping specifications includes all source details and target details. Specifying the mappingSequenceIds are mandatory.
    Note: Pagination is applied, and by default, 25 records are displayed per page.
    Parameters:
      `mappingSequenceIds` - String
      `page` - The page number to retrieve (1-indexed).
      `per_page` - The number of records to display per page.
    Returns:
      Response - Mapping object with specifications.
    Throws:
      `Exception`
    Since:
      12.0

  - ### getProjects

    @GetMapping(path="/projects", produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity getProjects(@RequestParam(name="projectIds",required=false) String projectIds, @RequestParam(name="page",defaultValue="1") int page, @RequestParam(name="per_page",defaultValue="25") int per_page) throws Exception
    Returns the list of all projects for the specified projectIds, where each project contains details like projectName, projectDescription, projectDocuments etc..
    Note: Pagination is applied, and by default, 25 records are displayed per page.
    Parameters:
      `projectIds` - String
      `page` - The page number to retrieve (1-indexed).
      `per_page` - The number of records to display per page.
    Returns:
      Response - List of project objects
    Throws:
      `Exception`
    Since:
      12.0

  - ### getSubject

    @GetMapping(path="/subjects/{subject_id}", produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity getSubject(@PathVariable(name="subject_id") int subjectId) throws Exception
    Returns subject object for the specified subjectId.
    Specifying the subjectId is mandatory based on which the subject object is retrieved.
    Parameters:
      `subjectId` - int .
    Returns:
      Response - Subject object
    Throws:
      `Exception`
    Since:
      12.0

  - ### getSubjects

    @GetMapping(path="/subjects", produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity getSubjects(@RequestParam(name="subjectIds") String subjectIds, @RequestParam(name="page",defaultValue="1") int page, @RequestParam(name="per_page",defaultValue="25") int per_page) throws Exception
    Returns the list of subjects for the specified subjectIds.
    Specification of subjectIds is mandatory, based on which it returns the list of all subjects and their information.
    Note: Pagination is applied, and by default, 25 records are displayed per page.
    Parameters:
      `subjectIds` - String
      `page` - The page number to retrieve (1-indexed).
      `per_page` - The number of records to display per page.
    Returns:
      Response - List of subject objects.
    Throws:
      `Exception`
    Since:
      12.0

  - ### addMappingSpecifications

    @PostMapping(path="/mappings/specifications", consumes={"application/json","application/xml"}, produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity addMappingSpecifications(@RequestParam(name="mappingId") int mappingId, @RequestBody ArrayList<MappingSpecificationRow> mappingSpecificationRows) throws Exception
    Inserts list of mappingSpecifications into the specified mappingId.
    Specifying the mappingId and list of mappingSpecifications are mandatory,all the mappingSpecifications will get inserted in to the particular mappingId.
    Parameters:
      `mappingId` - int
      `mappingSpecificationRows` - List
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### baselineProject

    @PostMapping(path="/projects/{project_id}/baseline", produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity baselineProject(@PathVariable(name="project_id") int projectId, @RequestParam(name="versionLabel",required=false) String versionLabel, @RequestParam(name="changeDescription") String changeDescription) throws Exception
    Appends the baseline to the project for the specified projectId.
    Adds baseline to the project basing the type of versionLabel and specification of the changeDescription which is mandatory.
    Parameters:
      `projectId` - int
      `versionLabel` - String
      `changeDescription` - String .
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### createMapping

    @PostMapping(path="/mappings", consumes={"application/json","application/xml"}, produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity createMapping(@RequestBody List<Mapping> mappings, @RequestParam(name="fillOptions",defaultValue="0") int fillOptions) throws Exception
    Creates Mappings for the specified mapping objects and fillOptions.
    Specifying projectId or subjectId and mappingName are mandatory in each mapping object.
    Here fillOptions can be Integer values of either `APIConstants.MMFillOptions.MAPPING_SPECIFICATIONS` or `APIConstants.MMFillOptions.MAPPING_DOCUMENTS` or `APIConstants.MMFillOptions.MAPPING_EXTENDED_PROPERTIES` for example: If you want to add mappings along with mapping specifications and documents you need to pass the fillOptions parameter value as 3 (MAPPING_SPECIFICATIONS(1) + MAPPING_DOCUMENTS(2)).
    If mapping details are added successfully, RequestStatus.isRequestSuccess() will return true otherwise false.
    Parameters:
      `mappings` - List
      `fillOptions` - `APIConstants.MMFillOptions` int
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### createProjects

    @PostMapping(path="/projects", consumes={"application/json","application/xml"}, produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity createProjects(@RequestBody List<Project> projects) throws Exception
    Creates the list of projects for the specified list of project objects.
    Specifying the projectName in each project object is mandatory along with the other information regarding project.
    Parameters:
      `projects` - List
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### createSubjects

    @PostMapping(path="/subjects", consumes={"application/json","application/xml"}, produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity createSubjects(@RequestBody List<Subject> subjects) throws Exception
    Creates the list of subjects for the specified list of subject objects.
    Specifying projectId and subjectName in each subject object are mandatory to create the subjects.
    Parameters:
      `subjects` - List
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### deleteMappings

    @DeleteMapping(path="/mappings", produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity deleteMappings(@RequestParam(name="mappingIds") String mappingIds, @RequestParam(name="versionMode") APIConstants.VersionMode versionMode, @RequestParam(name="versionNo",required=false,defaultValue="0.0") float versionNo) throws Exception
    Deletes the mappings of the specified mappingIds. Specifying the mappingIds and versionMode are mandatory. If versionMode is not specified current version mappings will be deleted
    Version has values ALL_VERSIONS, CURRENT_VERSION, SPECIFIC_VERSION. ALL_VERSIONS - Deletes all mappings, CURRENT_VERSION -SPECIFIC_VERSION - Deletes a particular version.
    If the versionMode is SPECIFIC_VERSION, specification of versionNo is mandatory.
    Parameters:
      `mappingIds` - String - should be active mappings list
      `versionMode` - APIConstants.VersionMode - valid modes - ALL_VERSIONS, CURRENT_VERSION, SPECIFIC_VERSION.
      `versionNo` - float .
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### deleteMappingSpecifications

    @DeleteMapping(path="/mappings/specifications", produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity deleteMappingSpecifications(@RequestParam(name="mappingSequenceIds") String mappingSequenceIds) throws Exception
    Deletes the mappingSpecifications for the specified list of mappingSequenceIds. Specifying the mappingSequenceIds are mandatory.
    Parameters:
      `mappingSequenceIds` - String
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### deleteProjects

    @DeleteMapping(path="/projects", produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity deleteProjects(@RequestParam(name="projectIds") String projectIds) throws Exception
    Deletes the list of projects for the specified projectIds.Specifying projectIds list is mandatory to delete the projects.
    If the projects are deleted all its associated date will also be deleted.
    Parameters:
      `projectIds` - String
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### deleteSubjects

    @DeleteMapping(path="/subjects", produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity deleteSubjects(@RequestParam(name="subjectIds") String subjectIds) throws Exception
    Deletes the list of subjects for the specified subjectIds. Specifying the subjectIds list is mandatory to delete the subjects.
    If the subjects are deleted all its associated date will also be deleted.
    Parameters:
      `subjectIds` - String
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### getProject

    @GetMapping(path="/projects/{project_id}", produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity getProject(@PathVariable(name="project_id") int projectId) throws Exception
    Returns the project object for the specified projectId.
    Specifying the projectId is mandatory, based on which it returns the details like projectName, projectDescription, costCenter, projectOwnerName, sponserName, businessSponserName, projectDocument details and projectResources details.
    Parameters:
      `projectId` - int .
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### publishMapping

    @PostMapping(path="/mappings/{mapping_id}/publish", produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity publishMapping(@PathVariable(name="mapping_id") int mappingId, @RequestParam(name="effectiveDate") String effectiveDate, @RequestParam(name="changeDescription") String changeDescription, @RequestParam(name="publishNotes") String publishNotes) throws Exception
    Mapping will be published for the specified mappingId, effectiveDate, changeDescription and publishNotes.
    Specifying the mappingId, effectiveDate, changeDescription and publishNotes are mandatory.
    Parameters:
      `mappingId` - int
      `effectiveDate` - String - expected format as YYYY-MM-DDTHH:mm:ss
      `changeDescription` - String
      `publishNotes` - String
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### publishMappings

    @PostMapping(path="/mappings/publish", produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity publishMappings(@RequestParam(name="mappingIds") String mappingIds, @RequestParam(name="effectiveDate") String effectiveDate, @RequestParam(name="changeDescription") String changeDescription, @RequestParam(name="publishNotes") String publishNotes) throws Exception
    Mappings will be published for the specified mappingIds effectiveDate and changeDescription and publishNotes.
    specifying the mappingIds, effectiveDate, changed description and publish notes are mandatory along with the other details.
    Parameters:
      `mappingIds` - String
      `effectiveDate` - String - expected format as YYYY-MM-DDTHH:mm:ss
      `changeDescription` - String
      `publishNotes` - String
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### unPublishMap

    @PostMapping(path="/mappings/{mapping_id}/unpublish", produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity unPublishMap(@PathVariable(name="mapping_id") int mappingId) throws Exception
    Mapping is unpublished for the specified mappingId. Specifying the mappingId is mandatory.
    Once the map is unpublished, it will be removed from published mappings workspace and the map will be a normal map in projects Tree.
    In case when a particular map is published many times, it creates multiple versions.
    In that case, to delete a particular version, specifying mappingName and versionNo are mandatory.
    Parameters:
      `mappingId` - int
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### updateMappings

    @PutMapping(path="/mappings", consumes={"application/json","application/xml"}, produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity updateMappings(@RequestBody List<Mapping> mappings) throws Exception
    Updates the mappings for the specified list of mapping objects.
    All the details pertaining to mappings can be updated except the mappingName. The information which needs to be updated should be provided through mapping object in the form of JSON.
    Specifying valid projectId, mappingId and mapingName in each mapping object are mandatory.
    Parameters:
      `mappings` - List
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### updateMappingSpecifications

    @PutMapping(path="/mappings/specifications", consumes={"application/json","application/xml"}, produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity updateMappingSpecifications(@RequestBody ArrayList<MappingSpecificationRow> mappingSpecificationRows) throws Exception
    Mapping specifications are updated with the specified mappingSpecificationRow objects. Specifying the mapSequenceIds and mappingId in each mappingSpecificationRow object are mandatory.
    Parameters:
      `mappingSpecificationRows` - List
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### updateProjects

    @PutMapping(path="/projects", consumes={"application/json","application/xml"}, produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity updateProjects(@RequestBody List<Project> projects) throws Exception
    Updates the projects for the specified list of project objects. All the information pertaining to the project can be updated.
    Specifying projectId and projectName in each project object are mandatory.
    Parameters:
      `projects` - List
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### updateSubjects

    @PutMapping(path="/subjects", consumes={"application/json","application/xml"}, produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity updateSubjects(@RequestBody List<Subject> subjects) throws Exception
    Updates the subjects details for the specified list of subject objects. All the information regarding subjects can be updated by providing the details in each subject object.
    Specifying subjectId, subjectName and projectId in each subject object are mandatory.
    Parameters:
      `subjects` - List
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### versionMapping

    @PostMapping(path="/mappings/{mapping_id}/version", produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity versionMapping(@PathVariable(name="mapping_id") int mappingId, @RequestParam(name="versionLabel",required=false) String versionLabel, @RequestParam(name="changeDescription") String changeDescription) throws Exception
    Appends mapping version for the specified mappingId.
    Appends a new version to the mappings, specifying the changed description is mandatory along with the other details of mapping object.
    Parameters:
      `mappingId` - int
      `versionLabel` - String
      `changeDescription` - String
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### getProjectId

    @GetMapping("/projects/id") public org.springframework.http.ResponseEntity getProjectId(@RequestParam(name="projectName") String projectName) throws Exception
    Returns the projectId for the specified projectName. Specifying the projectName is mandatory.
    Parameters:
      `projectName` - String
    Returns:
      Response
    Throws:
      `Exception`
    Since:
      12.1

  - ### getSubjectId

    @GetMapping("/subjects/id") public org.springframework.http.ResponseEntity getSubjectId(@RequestParam(name="projectName") String projectName, @RequestParam(name="subjectPath") String subjectPath) throws Exception
    Returns subjectId for the specified projectName and subjectPath.
    Returns the subjectId of a particular subjectPath present in a specific project.
    Parameters:
      `projectName` - String
      `subjectPath` - String
    Returns:
      Response
    Throws:
      `Exception` - sample for subjectPath ==> (s1/s2)- to get s2 id ==> (s1)- to get s1 id
    Since:
      12.1

  - ### getMappingId

    @GetMapping("/mappings/id") public org.springframework.http.ResponseEntity getMappingId(@RequestParam(name="projectName") String projectName, @RequestParam(name="subjectPath",required=false) String subjectPath, @RequestParam(name="mappingName") String mappingName) throws Exception
    Returns the mappingId for the specified projectName, subjectPath and mappingName.
    Specifying the projectName and mappingName are mandatory. If the Map is in subject specifying the subjectPath is mandatory.
    Parameters:
      `projectName` - String
      `subjectPath` - String
      `mappingName` - String
    Returns:
      Response
    Throws:
      `Exception` - sample for subjectPath ==> (p1,/s1/s2, m1)- to get m1 id which is in s2 level ==> Sample for subjectPath ==> (s1/s2)- to get s2 ID and (s1)- to get s1 ID
    Since:
      12.1

  - ### syncMetadata

    @PostMapping(path="/mappings/sync/metadata", consumes={"application/json","application/xml"}, produces={"application/json","application/xml"}) public org.springframework.http.ResponseEntity syncMetadata(@RequestBody List<Integer> mappingIds) throws Exception
    Throws:
      `Exception`