Package com.collibra.dgc.core.api.component.meta

# Interface AttributeTypeApi

public interface AttributeTypeApi
Contains all API operations for handling Attribute Types.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `AttributeType`
  `addAttributeType(AddAttributeTypeRequest addAttributeTypeRequest)`
  Adds an Attribute Type.
  `List<AttributeType>`
  `addAttributeTypes(List<AddAttributeTypeRequest> addAttributeTypeRequests)`
  Adds multiple Attribute Types.
  `AttributeType`
  `changeAttributeType(ChangeAttributeTypeRequest changeAttributeTypeRequest)`
  Change the Attribute Type with information present in the request.
  `List<AttributeType>`
  `changeAttributeTypes(List<ChangeAttributeTypeRequest> changeAttributeTypeRequest)`
  Changes multiple Attribute Types.
  `boolean`
  `exists(UUID attributeTypeId)`
  Returns true if an Attribute Type with given `id` exists.
  `PagedResponse<AttributeType>`
  `findAttributeTypes(FindAttributeTypesRequest findRequest)`
  Returns Attribute Types matching the given search input.
  `AttributeType`
  `getAttributeType(UUID attributeTypeId)`
  Returns the attributeType with the given id.
  `AttributeType`
  `getAttributeTypeByName(String name)`
  Returns the Attribute Type with the given name.
  `AttributeType`
  `getAttributeTypeByPublicId(String publicId)`
  Returns the attribute type identified by the given public id.
  `void`
  `removeAttributeType(UUID attributeTypeId)`
  Remove the Attribute Type with the given id.
  `void`
  `removeAttributeTypes(List<UUID> attributeTypeIds)`
  Removes the Attribute Types with the given ids.

- ## Method Details

  - ### getAttributeType

    AttributeType getAttributeType(UUID attributeTypeId)
    Returns the attributeType with the given id.
    Parameters:
      `attributeTypeId` - the id of the attributeType
    Returns:
      the found attributeType

  - ### getAttributeTypeByName

    AttributeType getAttributeTypeByName(String name)
    Returns the Attribute Type with the given name.
    Parameters:
      `name` - the name of the Attribute Type
    Returns:
      the found Attribute Type

  - ### getAttributeTypeByPublicId

    AttributeType getAttributeTypeByPublicId(String publicId)
    Returns the attribute type identified by the given public id.
    Parameters:
      `publicId` - the public id of the attribute type
    Returns:
      the found attribute type

  - ### exists

    boolean exists(UUID attributeTypeId)
    Returns true if an Attribute Type with given `id` exists.
    Parameters:
      `attributeTypeId` - the `id` of the Attribute Type
    Returns:
      true if an Attribute Type with given `id` exists, `false` otherwise

  - ### addAttributeType

    AttributeType addAttributeType(AddAttributeTypeRequest addAttributeTypeRequest)
    Adds an Attribute Type.
    Parameters:
      `addAttributeTypeRequest` - information required to create the Attribute Type
    Returns:
      the created Attribute Type

  - ### addAttributeTypes

    @SecurityAuditMethod(resultFormatter=com.collibra.audit.formatter.CollectionFormatter.class) List<AttributeType> addAttributeTypes(List<AddAttributeTypeRequest> addAttributeTypeRequests)
    Adds multiple Attribute Types.
    Parameters:
      `addAttributeTypeRequests` - the list of Attribute Type request
    Returns:
      the created Attribute Types

  - ### removeAttributeType

    void removeAttributeType(UUID attributeTypeId)
    Remove the Attribute Type with the given id.
    Parameters:
      `attributeTypeId` - the id of the Attribute Type

  - ### removeAttributeTypes

    void removeAttributeTypes(List<UUID> attributeTypeIds)
    Removes the Attribute Types with the given ids.
    Parameters:
      `attributeTypeIds` - the Attribute Type Ids

  - ### changeAttributeType

    AttributeType changeAttributeType(ChangeAttributeTypeRequest changeAttributeTypeRequest)
    Change the Attribute Type with information present in the request. Only the information present in the request is considered. Any other properties are left untouched.
    Parameters:
      `changeAttributeTypeRequest` - information about changes to do on the existing Attribute Type
    Returns:
      the modified Attribute Type

  - ### changeAttributeTypes

    @SecurityAuditMethod(resultFormatter=com.collibra.audit.formatter.CollectionFormatter.class) List<AttributeType> changeAttributeTypes(List<ChangeAttributeTypeRequest> changeAttributeTypeRequest)
    Changes multiple Attribute Types.
    Parameters:
      `changeAttributeTypeRequest` - list of changes to do on Attribute types
    Returns:
      the modified Attribute Types

  - ### findAttributeTypes

    @SecurityAuditMethod(resultFormatter=com.collibra.dgc.core.api.internal.security.audit.formatter.PagedResponseFormatter.class) PagedResponse<AttributeType> findAttributeTypes(FindAttributeTypesRequest findRequest)
    Returns Attribute Types matching the given search input.
    Parameters:
      `findRequest` - specified search criteria for search Attribute Types
    Returns:
      the found attributeTypes