Scala SDK Samples - Contact Roles Operations

Get Contact Roles
              
              
package com.zoho.crm.sample.contactroles

import java.lang.reflect.Field
import java.util

import com.zoho.crm.api.contactroles.ActionResponse
import com.zoho.crm.api.ParameterMap
import com.zoho.crm.api.contactroles.APIException
import com.zoho.crm.api.contactroles.ActionHandler
import com.zoho.crm.api.contactroles.ActionWrapper
import com.zoho.crm.api.contactroles.BodyWrapper
import com.zoho.crm.api.contactroles.ContactRole
import com.zoho.crm.api.contactroles.ContactRolesOperations
import com.zoho.crm.api.contactroles.ContactRolesOperations.DeleteContactRolesParam
import com.zoho.crm.api.contactroles.ResponseHandler
import com.zoho.crm.api.contactroles.ResponseWrapper
import com.zoho.crm.api.contactroles.SuccessResponse
import com.zoho.crm.api.util.APIResponse
import com.zoho.crm.api.util.Model

import scala.collection.mutable.ArrayBuffer


object ContactRoles {
	/**
   *  Get Contact Roles 
   * This method is used to get all the Contact Roles and print the response.
   *
   * @throws Exception
   */
  @throws[Exception]
  def getContactRoles(): Unit = { //Get instance of ContactRolesOperations Class
    val contactRolesOperations = new ContactRolesOperations
    //Call getContactRoles method
    val responseOption = contactRolesOperations.getContactRoles
    if (responseOption.isDefined) { //check response
       var response= responseOption.get
      println("Status Code: " + response.getStatusCode)
      if (util.Arrays.asList(204, 304).contains(response.getStatusCode)) {
        println(if (response.getStatusCode == 204) "No Content"
        else "Not Modified")
        return
      }
      //Check if expected response is received
      if (response.isExpected) { //Get object from response
        val responseHandler = response.getObject
        if (responseHandler.isInstanceOf[ResponseWrapper]) { //Get the received ResponseWrapper instance
          val responseWrapper = responseHandler.asInstanceOf[ResponseWrapper]
          //Get the list of obtained ContactRole instances
          val contactRoles = responseWrapper.getContactRoles
          
          for (contactRole {
              println(entry._1 + ": " + entry._2)
            })
            //Get the Message
            println("Message: " + exception.getMessage.getValue)
          }
        }
      }
      else if (response.getStatusCode != 204) { //If response is not as expected
        //Get model object from response
        val responseObject = response.getModel
        //Get the response object's class
        val clas = responseObject.getClass
        //Get all declared fields of the response class
        val fields = clas.getDeclaredFields
        for (field 
Create Contact Roles
              
              
package com.zoho.crm.sample.contactroles

import java.lang.reflect.Field
import java.util

import com.zoho.crm.api.contactroles.ActionResponse
import com.zoho.crm.api.ParameterMap
import com.zoho.crm.api.contactroles.APIException
import com.zoho.crm.api.contactroles.ActionHandler
import com.zoho.crm.api.contactroles.ActionWrapper
import com.zoho.crm.api.contactroles.BodyWrapper
import com.zoho.crm.api.contactroles.ContactRole
import com.zoho.crm.api.contactroles.ContactRolesOperations
import com.zoho.crm.api.contactroles.ContactRolesOperations.DeleteContactRolesParam
import com.zoho.crm.api.contactroles.ResponseHandler
import com.zoho.crm.api.contactroles.ResponseWrapper
import com.zoho.crm.api.contactroles.SuccessResponse
import com.zoho.crm.api.util.APIResponse
import com.zoho.crm.api.util.Model

import scala.collection.mutable.ArrayBuffer


object ContactRoles {
	/**
   *  Create Contact Roles 
   * This method is used to create Contact Roles and print the response.
   *
   * @throws Exception
   */
  @throws[Exception]
  def createContactRoles(): Unit = {
    val contactRolesOperations = new ContactRolesOperations
    //Get instance of BodyWrapper Class that will contain the request body
    val bodyWrapper = new BodyWrapper
    //List of ContactRole instances
    val contactRoles = new ArrayBuffer[ContactRole]
    for (i {
                println(entry._1 + ": " + entry._2)
              })
              println("Message: " + successResponse.getMessage.getValue)
            }
            else if (actionResponse.isInstanceOf[APIException]) {
              val exception = actionResponse.asInstanceOf[APIException]
              println("Status: " + exception.getStatus.getValue)
              println("Code: " + exception.getCode.getValue)
              println("Details: ")

              exception.getDetails.foreach(entry=>{
                println(entry._1 + ": " + entry._2)
              })
              println("Message: " + exception.getMessage.getValue)
            }
          }
        }
        else if (actionHandler.isInstanceOf[APIException]) {
          val exception = actionHandler.asInstanceOf[APIException]
          println("Status: " + exception.getStatus.getValue)
          println("Code: " + exception.getCode.getValue)
          println("Details: ")

          exception.getDetails.foreach(entry=>{
            println(entry._1 + ": " + entry._2)
          })
          println("Message: " + exception.getMessage.getValue)
        }
      }
      else {
        val responseObject = response.getModel
        val clas = responseObject.getClass
        val fields = clas.getDeclaredFields
        for (field 
Update Contact Roles
              
              
package com.zoho.crm.sample.contactroles

import java.lang.reflect.Field
import java.util

import com.zoho.crm.api.contactroles.ActionResponse
import com.zoho.crm.api.ParameterMap
import com.zoho.crm.api.contactroles.APIException
import com.zoho.crm.api.contactroles.ActionHandler
import com.zoho.crm.api.contactroles.ActionWrapper
import com.zoho.crm.api.contactroles.BodyWrapper
import com.zoho.crm.api.contactroles.ContactRole
import com.zoho.crm.api.contactroles.ContactRolesOperations
import com.zoho.crm.api.contactroles.ContactRolesOperations.DeleteContactRolesParam
import com.zoho.crm.api.contactroles.ResponseHandler
import com.zoho.crm.api.contactroles.ResponseWrapper
import com.zoho.crm.api.contactroles.SuccessResponse
import com.zoho.crm.api.util.APIResponse
import com.zoho.crm.api.util.Model

import scala.collection.mutable.ArrayBuffer


object ContactRoles {
	/**
   *  Update Contact Roles 
   * This method is used to update Contact Roles and print the response.
   *
   * @throws Exception
   */
  @throws[Exception]
  def updateContactRoles(): Unit = {
    val contactRolesOperations = new ContactRolesOperations
    val bodyWrapper = new BodyWrapper
    val contactRolesList = new ArrayBuffer[ContactRole]
    val cr1 = new ContactRole
    //Set ID to the ContactRole instance
    cr1.setId(Option(3524033000005956024l))
    //Set name to the ContactRole instance
    cr1.setName(Option("Edisadted1"))
    contactRolesList.addOne(cr1)
    val cr2 = new ContactRole
    cr2.setId(Option(3524033000005956022l))
    cr2.setSequenceNumber(Option(1))
    cr2.setName(Option("Editsded1"))
    contactRolesList.addOne(cr2)
    bodyWrapper.setContactRoles(contactRolesList)
    //Call updateContactRoles method that takes BodyWrapper instance as parameter
    val responseOption = contactRolesOperations.updateContactRoles(bodyWrapper)
    if (responseOption.isDefined) {
      var response = responseOption.get
      println("Status Code: " + response.getStatusCode)
      if (response.isExpected) {
        val actionHandler = response.getObject
        if (actionHandler.isInstanceOf[ActionWrapper]) {
          val actionWrapper = actionHandler.asInstanceOf[ActionWrapper]
          val actionResponses = actionWrapper.getContactRoles
          
          for (actionResponse {
                println(entry._1 + ": " + entry._2)
              })
              println("Message: " + successResponse.getMessage.getValue)
            }
            else if (actionResponse.isInstanceOf[APIException]) {
              val exception = actionResponse.asInstanceOf[APIException]
              println("Status: " + exception.getStatus.getValue)
              println("Code: " + exception.getCode.getValue)
              println("Details: ")

              exception.getDetails.foreach(entry=>{
                println(entry._1 + ": " + entry._2)
              })
              println("Message: " + exception.getMessage.getValue)
            }
          }
        }
        else if (actionHandler.isInstanceOf[APIException]) {
          val exception = actionHandler.asInstanceOf[APIException]
          println("Status: " + exception.getStatus.getValue)
          println("Code: " + exception.getCode.getValue)
          println("Details: ")

          exception.getDetails.foreach(entry=>{
            println(entry._1 + ": " + entry._2)
          })
          println("Message: " + exception.getMessage.getValue)
        }
      }
      else {
        val responseObject = response.getModel
        val clas = responseObject.getClass
        val fields = clas.getDeclaredFields
        for (field 
Delete Contact Roles
              
              
package com.zoho.crm.sample.contactroles

import java.lang.reflect.Field
import java.util

import com.zoho.crm.api.contactroles.ActionResponse
import com.zoho.crm.api.ParameterMap
import com.zoho.crm.api.contactroles.APIException
import com.zoho.crm.api.contactroles.ActionHandler
import com.zoho.crm.api.contactroles.ActionWrapper
import com.zoho.crm.api.contactroles.BodyWrapper
import com.zoho.crm.api.contactroles.ContactRole
import com.zoho.crm.api.contactroles.ContactRolesOperations
import com.zoho.crm.api.contactroles.ContactRolesOperations.DeleteContactRolesParam
import com.zoho.crm.api.contactroles.ResponseHandler
import com.zoho.crm.api.contactroles.ResponseWrapper
import com.zoho.crm.api.contactroles.SuccessResponse
import com.zoho.crm.api.util.APIResponse
import com.zoho.crm.api.util.Model

import scala.collection.mutable.ArrayBuffer


object ContactRoles {
	/**
   *  Delete Contact Roles 
   * This method is used to delete Contact Roles and print the response.
   *
   * @param contactRoleIds - The List of ContactRole IDs to be deleted.
   * @throws Exception
   */
  @throws[Exception]
  def deleteContactRoles(contactRoleIds: ArrayBuffer[Long]): Unit = { //example
    //		ArrayList contactRoleIds = new ArrayList(Arrays.asList(3477061000005208001l,3477061000005208002l))
    val contactRolesOperations = new ContactRolesOperations
    //Get instance of ParameterMap Class
    val paramInstance = new ParameterMap
    
    for (id {
                println(entry._1 + ": " + entry._2)
              })
              println("Message: " + successResponse.getMessage.getValue)
            }
            else if (actionResponse.isInstanceOf[APIException]) {
              val exception = actionResponse.asInstanceOf[APIException]
              println("Status: " + exception.getStatus.getValue)
              println("Code: " + exception.getCode.getValue)
              println("Details: ")

              exception.getDetails.foreach(entry=>{
                println(entry._1 + ": " + entry._2)
              })
              println("Message: " + exception.getMessage.getValue)
            }
          }
        }
        else if (actionHandler.isInstanceOf[APIException]) {
          val exception = actionHandler.asInstanceOf[APIException]
          println("Status: " + exception.getStatus.getValue)
          println("Code: " + exception.getCode.getValue)
          println("Details: ")

          exception.getDetails.foreach(entry=>{
            println(entry._1 + ": " + entry._2)
          })
          println("Message: " + exception.getMessage.getValue)
        }
      }
      else {
        val responseObject = response.getModel
        val clas = responseObject.getClass
        val fields = clas.getDeclaredFields
        for (field 
Get a Contact Role
              
              
package com.zoho.crm.sample.contactroles

import java.lang.reflect.Field
import java.util

import com.zoho.crm.api.contactroles.ActionResponse
import com.zoho.crm.api.ParameterMap
import com.zoho.crm.api.contactroles.APIException
import com.zoho.crm.api.contactroles.ActionHandler
import com.zoho.crm.api.contactroles.ActionWrapper
import com.zoho.crm.api.contactroles.BodyWrapper
import com.zoho.crm.api.contactroles.ContactRole
import com.zoho.crm.api.contactroles.ContactRolesOperations
import com.zoho.crm.api.contactroles.ContactRolesOperations.DeleteContactRolesParam
import com.zoho.crm.api.contactroles.ResponseHandler
import com.zoho.crm.api.contactroles.ResponseWrapper
import com.zoho.crm.api.contactroles.SuccessResponse
import com.zoho.crm.api.util.APIResponse
import com.zoho.crm.api.util.Model

import scala.collection.mutable.ArrayBuffer


object ContactRoles {
	/**
   *  Get Contact Role 
   * This method is used to get single Contact Role with ID and print the response.
   *
   * @param contactRoleId - The ID of the ContactRole to be obtained
   * @throws Exception
   */
  @throws[Exception]
  def getContactRole(contactRoleId: Long): Unit = { //Long contactRoleId = 3477061000005177004l
    val contactRolesOperations = new ContactRolesOperations
    //Call getContactRole method that takes contactRoleId as parameter
    val responseOption = contactRolesOperations.getContactRole(contactRoleId)
    if (responseOption.isDefined) {
      var response = responseOption.get
      println("Status Code: " + response.getStatusCode)
      if (util.Arrays.asList(204, 304).contains(response.getStatusCode)) {
        println(if (response.getStatusCode == 204) "No Content"
        else "Not Modified")
        return
      }
      if (response.isExpected) {
        val responseHandler = response.getObject
        if (responseHandler.isInstanceOf[ResponseWrapper]) {
          val responseWrapper = responseHandler.asInstanceOf[ResponseWrapper]
          val contactRoles = responseWrapper.getContactRoles
          
          for (contactRole {
            println(entry._1 + ": " + entry._2)
          })
          println("Message: " + exception.getMessage.getValue)
        }
      }
      else {
        val responseObject = response.getModel
        val clas = responseObject.getClass
        val fields = clas.getDeclaredFields
        for (field 
Update a Contact Role
              
              
package com.zoho.crm.sample.contactroles

import java.lang.reflect.Field
import java.util

import com.zoho.crm.api.contactroles.ActionResponse
import com.zoho.crm.api.ParameterMap
import com.zoho.crm.api.contactroles.APIException
import com.zoho.crm.api.contactroles.ActionHandler
import com.zoho.crm.api.contactroles.ActionWrapper
import com.zoho.crm.api.contactroles.BodyWrapper
import com.zoho.crm.api.contactroles.ContactRole
import com.zoho.crm.api.contactroles.ContactRolesOperations
import com.zoho.crm.api.contactroles.ContactRolesOperations.DeleteContactRolesParam
import com.zoho.crm.api.contactroles.ResponseHandler
import com.zoho.crm.api.contactroles.ResponseWrapper
import com.zoho.crm.api.contactroles.SuccessResponse
import com.zoho.crm.api.util.APIResponse
import com.zoho.crm.api.util.Model

import scala.collection.mutable.ArrayBuffer


object ContactRoles {
	/**
   *  Update Contact Role 
   * This method is used to update single Contact Role with ID and print the response.
   *
   * @param contactRoleId The ID of the ContactRole to be updated
   * @throws Exception
   */
  @throws[Exception]
  def updateContactRole(contactRoleId: Long): Unit = { //ID of the ContactRole to be updated
    //Long contactRoleId = 525508000005067923l
    val contactRolesOperations = new ContactRolesOperations
    val bodyWrapper = new BodyWrapper
    val contactRolesList = new ArrayBuffer[ContactRole]
    val cr1 = new ContactRole
    cr1.setName(Option("contactRole4"))
    //Set sequence number to the ContactRole instance
    cr1.setSequenceNumber(Option(2))
    contactRolesList.addOne(cr1)
    bodyWrapper.setContactRoles(contactRolesList)
    //Call updateContactRole method that takes BodyWrapper instance and contactRoleId as parameters
    val responseOption = contactRolesOperations.updateContactRole(contactRoleId,bodyWrapper )
    if (responseOption.isDefined) {
      var response = responseOption.get
      println("Status Code: " + response.getStatusCode)
      if (response.isExpected) {
        val actionHandler = response.getObject
        if (actionHandler.isInstanceOf[ActionWrapper]) {
          val actionWrapper = actionHandler.asInstanceOf[ActionWrapper]
          val actionResponses = actionWrapper.getContactRoles
          
          for (actionResponse {
                println(entry._1 + ": " + entry._2)
              })
              println("Message: " + successResponse.getMessage.getValue)
            }
            else if (actionResponse.isInstanceOf[APIException]) {
              val exception = actionResponse.asInstanceOf[APIException]
              println("Status: " + exception.getStatus.getValue)
              println("Code: " + exception.getCode.getValue)
              println("Details: ")

              exception.getDetails.foreach(entry=>{
                println(entry._1 + ": " + entry._2)
              })
              println("Message: " + exception.getMessage.getValue)
            }
          }
        }
        else if (actionHandler.isInstanceOf[APIException]) {
          val exception = actionHandler.asInstanceOf[APIException]
          println("Status: " + exception.getStatus.getValue)
          println("Code: " + exception.getCode.getValue)
          println("Details: ")

          exception.getDetails.foreach(entry=>{
            println(entry._1 + ": " + entry._2)
          })
          println("Message: " + exception.getMessage.getValue)
        }
      }
      else {
        val responseObject = response.getModel
        val clas = responseObject.getClass
        val fields = clas.getDeclaredFields
        for (field 
Delete a Contact Role
              
              
package com.zoho.crm.sample.contactroles

import java.lang.reflect.Field
import java.util

import com.zoho.crm.api.contactroles.ActionResponse
import com.zoho.crm.api.ParameterMap
import com.zoho.crm.api.contactroles.APIException
import com.zoho.crm.api.contactroles.ActionHandler
import com.zoho.crm.api.contactroles.ActionWrapper
import com.zoho.crm.api.contactroles.BodyWrapper
import com.zoho.crm.api.contactroles.ContactRole
import com.zoho.crm.api.contactroles.ContactRolesOperations
import com.zoho.crm.api.contactroles.ContactRolesOperations.DeleteContactRolesParam
import com.zoho.crm.api.contactroles.ResponseHandler
import com.zoho.crm.api.contactroles.ResponseWrapper
import com.zoho.crm.api.contactroles.SuccessResponse
import com.zoho.crm.api.util.APIResponse
import com.zoho.crm.api.util.Model

import scala.collection.mutable.ArrayBuffer


object ContactRoles {
	/**
   *  Delete Contact Role 
   * This method is used to delete single Contact Role with ID and print the response.
   *
   * @param contactRoleId ID of the ContactRole to be deleted
   * @throws Exception
   */
  @throws[Exception]
  def deleteContactRole(contactRoleId: Long): Unit = {
    val contactRolesOperations = new ContactRolesOperations
    //Call deleteContactRole which takes contactRoleId as parameter
    val responseOption = contactRolesOperations.deleteContactRole(contactRoleId)
    if (responseOption.isDefined) {
      var response = responseOption.get
      println("Status Code: " + response.getStatusCode)
      if (response.isExpected) {
        val actionHandler = response.getObject
        if (actionHandler.isInstanceOf[ActionWrapper]) {
          val actionWrapper = actionHandler.asInstanceOf[ActionWrapper]
          val actionResponses = actionWrapper.getContactRoles
          
          for (actionResponse {
                println(entry._1 + ": " + entry._2)
              })
              println("Message: " + successResponse.getMessage.getValue)
            }
            else if (actionResponse.isInstanceOf[APIException]) {
              val exception = actionResponse.asInstanceOf[APIException]
              println("Status: " + exception.getStatus.getValue)
              println("Code: " + exception.getCode.getValue)
              println("Details: ")

              exception.getDetails.foreach(entry=>{
                println(entry._1 + ": " + entry._2)
              })
              println("Message: " + exception.getMessage.getValue)
            }
          }
        }
        else if (actionHandler.isInstanceOf[APIException]) {
          val exception = actionHandler.asInstanceOf[APIException]
          println("Status: " + exception.getStatus.getValue)
          println("Code: " + exception.getCode.getValue)
          println("Details: ")

          exception.getDetails.foreach(entry=>{
            println(entry._1 + ": " + entry._2)
          })
          println("Message: " + exception.getMessage.getValue)
        }
      }
      else {
        val responseObject = response.getModel
        val clas = responseObject.getClass
        val fields = clas.getDeclaredFields
        for (field