Class: Aws::CloudDirectory::Types::BatchWriteOperation

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/types.rb

Overview

Note:

When making an API call, you may pass BatchWriteOperation data as a hash:

{
  create_object: {
    schema_facet: [ # required
      {
        schema_arn: "Arn",
        facet_name: "FacetName",
      },
    ],
    object_attribute_list: [ # required
      {
        key: { # required
          schema_arn: "Arn", # required
          facet_name: "FacetName", # required
          name: "AttributeName", # required
        },
        value: { # required
          string_value: "StringAttributeValue",
          binary_value: "data",
          boolean_value: false,
          number_value: "NumberAttributeValue",
          datetime_value: Time.now,
        },
      },
    ],
    parent_reference: {
      selector: "SelectorObjectReference",
    },
    link_name: "LinkName",
    batch_reference_name: "BatchReferenceName",
  },
  attach_object: {
    parent_reference: { # required
      selector: "SelectorObjectReference",
    },
    child_reference: { # required
      selector: "SelectorObjectReference",
    },
    link_name: "LinkName", # required
  },
  detach_object: {
    parent_reference: { # required
      selector: "SelectorObjectReference",
    },
    link_name: "LinkName", # required
    batch_reference_name: "BatchReferenceName",
  },
  update_object_attributes: {
    object_reference: { # required
      selector: "SelectorObjectReference",
    },
    attribute_updates: [ # required
      {
        object_attribute_key: {
          schema_arn: "Arn", # required
          facet_name: "FacetName", # required
          name: "AttributeName", # required
        },
        object_attribute_action: {
          object_attribute_action_type: "CREATE_OR_UPDATE", # accepts CREATE_OR_UPDATE, DELETE
          object_attribute_update_value: {
            string_value: "StringAttributeValue",
            binary_value: "data",
            boolean_value: false,
            number_value: "NumberAttributeValue",
            datetime_value: Time.now,
          },
        },
      },
    ],
  },
  delete_object: {
    object_reference: { # required
      selector: "SelectorObjectReference",
    },
  },
  add_facet_to_object: {
    schema_facet: { # required
      schema_arn: "Arn",
      facet_name: "FacetName",
    },
    object_attribute_list: [ # required
      {
        key: { # required
          schema_arn: "Arn", # required
          facet_name: "FacetName", # required
          name: "AttributeName", # required
        },
        value: { # required
          string_value: "StringAttributeValue",
          binary_value: "data",
          boolean_value: false,
          number_value: "NumberAttributeValue",
          datetime_value: Time.now,
        },
      },
    ],
    object_reference: { # required
      selector: "SelectorObjectReference",
    },
  },
  remove_facet_from_object: {
    schema_facet: { # required
      schema_arn: "Arn",
      facet_name: "FacetName",
    },
    object_reference: { # required
      selector: "SelectorObjectReference",
    },
  },
  attach_policy: {
    policy_reference: { # required
      selector: "SelectorObjectReference",
    },
    object_reference: { # required
      selector: "SelectorObjectReference",
    },
  },
  detach_policy: {
    policy_reference: { # required
      selector: "SelectorObjectReference",
    },
    object_reference: { # required
      selector: "SelectorObjectReference",
    },
  },
  create_index: {
    ordered_indexed_attribute_list: [ # required
      {
        schema_arn: "Arn", # required
        facet_name: "FacetName", # required
        name: "AttributeName", # required
      },
    ],
    is_unique: false, # required
    parent_reference: {
      selector: "SelectorObjectReference",
    },
    link_name: "LinkName",
    batch_reference_name: "BatchReferenceName",
  },
  attach_to_index: {
    index_reference: { # required
      selector: "SelectorObjectReference",
    },
    target_reference: { # required
      selector: "SelectorObjectReference",
    },
  },
  detach_from_index: {
    index_reference: { # required
      selector: "SelectorObjectReference",
    },
    target_reference: { # required
      selector: "SelectorObjectReference",
    },
  },
  attach_typed_link: {
    source_object_reference: { # required
      selector: "SelectorObjectReference",
    },
    target_object_reference: { # required
      selector: "SelectorObjectReference",
    },
    typed_link_facet: { # required
      schema_arn: "Arn", # required
      typed_link_name: "TypedLinkName", # required
    },
    attributes: [ # required
      {
        attribute_name: "AttributeName", # required
        value: { # required
          string_value: "StringAttributeValue",
          binary_value: "data",
          boolean_value: false,
          number_value: "NumberAttributeValue",
          datetime_value: Time.now,
        },
      },
    ],
  },
  detach_typed_link: {
    typed_link_specifier: { # required
      typed_link_facet: { # required
        schema_arn: "Arn", # required
        typed_link_name: "TypedLinkName", # required
      },
      source_object_reference: { # required
        selector: "SelectorObjectReference",
      },
      target_object_reference: { # required
        selector: "SelectorObjectReference",
      },
      identity_attribute_values: [ # required
        {
          attribute_name: "AttributeName", # required
          value: { # required
            string_value: "StringAttributeValue",
            binary_value: "data",
            boolean_value: false,
            number_value: "NumberAttributeValue",
            datetime_value: Time.now,
          },
        },
      ],
    },
  },
  update_link_attributes: {
    typed_link_specifier: { # required
      typed_link_facet: { # required
        schema_arn: "Arn", # required
        typed_link_name: "TypedLinkName", # required
      },
      source_object_reference: { # required
        selector: "SelectorObjectReference",
      },
      target_object_reference: { # required
        selector: "SelectorObjectReference",
      },
      identity_attribute_values: [ # required
        {
          attribute_name: "AttributeName", # required
          value: { # required
            string_value: "StringAttributeValue",
            binary_value: "data",
            boolean_value: false,
            number_value: "NumberAttributeValue",
            datetime_value: Time.now,
          },
        },
      ],
    },
    attribute_updates: [ # required
      {
        attribute_key: {
          schema_arn: "Arn", # required
          facet_name: "FacetName", # required
          name: "AttributeName", # required
        },
        attribute_action: {
          attribute_action_type: "CREATE_OR_UPDATE", # accepts CREATE_OR_UPDATE, DELETE
          attribute_update_value: {
            string_value: "StringAttributeValue",
            binary_value: "data",
            boolean_value: false,
            number_value: "NumberAttributeValue",
            datetime_value: Time.now,
          },
        },
      },
    ],
  },
}

Represents the output of a BatchWrite operation.

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#add_facet_to_objectTypes::BatchAddFacetToObject

A batch operation that adds a facet to an object.



3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/types.rb', line 3292

class BatchWriteOperation < Struct.new(
  :create_object,
  :attach_object,
  :detach_object,
  :update_object_attributes,
  :delete_object,
  :add_facet_to_object,
  :remove_facet_from_object,
  :attach_policy,
  :detach_policy,
  :create_index,
  :attach_to_index,
  :detach_from_index,
  :attach_typed_link,
  :detach_typed_link,
  :update_link_attributes)
  SENSITIVE = []
  include Aws::Structure
end

#attach_objectTypes::BatchAttachObject

Attaches an object to a Directory.



3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/types.rb', line 3292

class BatchWriteOperation < Struct.new(
  :create_object,
  :attach_object,
  :detach_object,
  :update_object_attributes,
  :delete_object,
  :add_facet_to_object,
  :remove_facet_from_object,
  :attach_policy,
  :detach_policy,
  :create_index,
  :attach_to_index,
  :detach_from_index,
  :attach_typed_link,
  :detach_typed_link,
  :update_link_attributes)
  SENSITIVE = []
  include Aws::Structure
end

#attach_policyTypes::BatchAttachPolicy

Attaches a policy object to a regular object. An object can have a limited number of attached policies.



3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/types.rb', line 3292

class BatchWriteOperation < Struct.new(
  :create_object,
  :attach_object,
  :detach_object,
  :update_object_attributes,
  :delete_object,
  :add_facet_to_object,
  :remove_facet_from_object,
  :attach_policy,
  :detach_policy,
  :create_index,
  :attach_to_index,
  :detach_from_index,
  :attach_typed_link,
  :detach_typed_link,
  :update_link_attributes)
  SENSITIVE = []
  include Aws::Structure
end

#attach_to_indexTypes::BatchAttachToIndex

Attaches the specified object to the specified index.



3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/types.rb', line 3292

class BatchWriteOperation < Struct.new(
  :create_object,
  :attach_object,
  :detach_object,
  :update_object_attributes,
  :delete_object,
  :add_facet_to_object,
  :remove_facet_from_object,
  :attach_policy,
  :detach_policy,
  :create_index,
  :attach_to_index,
  :detach_from_index,
  :attach_typed_link,
  :detach_typed_link,
  :update_link_attributes)
  SENSITIVE = []
  include Aws::Structure
end

Attaches a typed link to a specified source and target object. For more information, see Typed Links.



3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/types.rb', line 3292

class BatchWriteOperation < Struct.new(
  :create_object,
  :attach_object,
  :detach_object,
  :update_object_attributes,
  :delete_object,
  :add_facet_to_object,
  :remove_facet_from_object,
  :attach_policy,
  :detach_policy,
  :create_index,
  :attach_to_index,
  :detach_from_index,
  :attach_typed_link,
  :detach_typed_link,
  :update_link_attributes)
  SENSITIVE = []
  include Aws::Structure
end

#create_indexTypes::BatchCreateIndex

Creates an index object. See Indexing and search for more information.



3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/types.rb', line 3292

class BatchWriteOperation < Struct.new(
  :create_object,
  :attach_object,
  :detach_object,
  :update_object_attributes,
  :delete_object,
  :add_facet_to_object,
  :remove_facet_from_object,
  :attach_policy,
  :detach_policy,
  :create_index,
  :attach_to_index,
  :detach_from_index,
  :attach_typed_link,
  :detach_typed_link,
  :update_link_attributes)
  SENSITIVE = []
  include Aws::Structure
end

#create_objectTypes::BatchCreateObject

Creates an object.



3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/types.rb', line 3292

class BatchWriteOperation < Struct.new(
  :create_object,
  :attach_object,
  :detach_object,
  :update_object_attributes,
  :delete_object,
  :add_facet_to_object,
  :remove_facet_from_object,
  :attach_policy,
  :detach_policy,
  :create_index,
  :attach_to_index,
  :detach_from_index,
  :attach_typed_link,
  :detach_typed_link,
  :update_link_attributes)
  SENSITIVE = []
  include Aws::Structure
end

#delete_objectTypes::BatchDeleteObject

Deletes an object in a Directory.



3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/types.rb', line 3292

class BatchWriteOperation < Struct.new(
  :create_object,
  :attach_object,
  :detach_object,
  :update_object_attributes,
  :delete_object,
  :add_facet_to_object,
  :remove_facet_from_object,
  :attach_policy,
  :detach_policy,
  :create_index,
  :attach_to_index,
  :detach_from_index,
  :attach_typed_link,
  :detach_typed_link,
  :update_link_attributes)
  SENSITIVE = []
  include Aws::Structure
end

#detach_from_indexTypes::BatchDetachFromIndex

Detaches the specified object from the specified index.



3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/types.rb', line 3292

class BatchWriteOperation < Struct.new(
  :create_object,
  :attach_object,
  :detach_object,
  :update_object_attributes,
  :delete_object,
  :add_facet_to_object,
  :remove_facet_from_object,
  :attach_policy,
  :detach_policy,
  :create_index,
  :attach_to_index,
  :detach_from_index,
  :attach_typed_link,
  :detach_typed_link,
  :update_link_attributes)
  SENSITIVE = []
  include Aws::Structure
end

#detach_objectTypes::BatchDetachObject

Detaches an object from a Directory.



3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/types.rb', line 3292

class BatchWriteOperation < Struct.new(
  :create_object,
  :attach_object,
  :detach_object,
  :update_object_attributes,
  :delete_object,
  :add_facet_to_object,
  :remove_facet_from_object,
  :attach_policy,
  :detach_policy,
  :create_index,
  :attach_to_index,
  :detach_from_index,
  :attach_typed_link,
  :detach_typed_link,
  :update_link_attributes)
  SENSITIVE = []
  include Aws::Structure
end

#detach_policyTypes::BatchDetachPolicy

Detaches a policy from a Directory.



3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/types.rb', line 3292

class BatchWriteOperation < Struct.new(
  :create_object,
  :attach_object,
  :detach_object,
  :update_object_attributes,
  :delete_object,
  :add_facet_to_object,
  :remove_facet_from_object,
  :attach_policy,
  :detach_policy,
  :create_index,
  :attach_to_index,
  :detach_from_index,
  :attach_typed_link,
  :detach_typed_link,
  :update_link_attributes)
  SENSITIVE = []
  include Aws::Structure
end

Detaches a typed link from a specified source and target object. For more information, see Typed Links.



3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/types.rb', line 3292

class BatchWriteOperation < Struct.new(
  :create_object,
  :attach_object,
  :detach_object,
  :update_object_attributes,
  :delete_object,
  :add_facet_to_object,
  :remove_facet_from_object,
  :attach_policy,
  :detach_policy,
  :create_index,
  :attach_to_index,
  :detach_from_index,
  :attach_typed_link,
  :detach_typed_link,
  :update_link_attributes)
  SENSITIVE = []
  include Aws::Structure
end

#remove_facet_from_objectTypes::BatchRemoveFacetFromObject

A batch operation that removes a facet from an object.



3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/types.rb', line 3292

class BatchWriteOperation < Struct.new(
  :create_object,
  :attach_object,
  :detach_object,
  :update_object_attributes,
  :delete_object,
  :add_facet_to_object,
  :remove_facet_from_object,
  :attach_policy,
  :detach_policy,
  :create_index,
  :attach_to_index,
  :detach_from_index,
  :attach_typed_link,
  :detach_typed_link,
  :update_link_attributes)
  SENSITIVE = []
  include Aws::Structure
end

Updates a given object's attributes.



3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/types.rb', line 3292

class BatchWriteOperation < Struct.new(
  :create_object,
  :attach_object,
  :detach_object,
  :update_object_attributes,
  :delete_object,
  :add_facet_to_object,
  :remove_facet_from_object,
  :attach_policy,
  :detach_policy,
  :create_index,
  :attach_to_index,
  :detach_from_index,
  :attach_typed_link,
  :detach_typed_link,
  :update_link_attributes)
  SENSITIVE = []
  include Aws::Structure
end

#update_object_attributesTypes::BatchUpdateObjectAttributes

Updates a given object's attributes.



3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/types.rb', line 3292

class BatchWriteOperation < Struct.new(
  :create_object,
  :attach_object,
  :detach_object,
  :update_object_attributes,
  :delete_object,
  :add_facet_to_object,
  :remove_facet_from_object,
  :attach_policy,
  :detach_policy,
  :create_index,
  :attach_to_index,
  :detach_from_index,
  :attach_typed_link,
  :detach_typed_link,
  :update_link_attributes)
  SENSITIVE = []
  include Aws::Structure
end