Class: Aws::AppSync::Types::CreateResolverRequest

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

Overview

Note:

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

{
  api_id: "String", # required
  type_name: "ResourceName", # required
  field_name: "ResourceName", # required
  data_source_name: "ResourceName",
  request_mapping_template: "MappingTemplate",
  response_mapping_template: "MappingTemplate",
  kind: "UNIT", # accepts UNIT, PIPELINE
  pipeline_config: {
    functions: ["String"],
  },
  sync_config: {
    conflict_handler: "OPTIMISTIC_CONCURRENCY", # accepts OPTIMISTIC_CONCURRENCY, LAMBDA, AUTOMERGE, NONE
    conflict_detection: "VERSION", # accepts VERSION, NONE
    lambda_conflict_handler_config: {
      lambda_conflict_handler_arn: "String",
    },
  },
  caching_config: {
    ttl: 1,
    caching_keys: ["String"],
  },
  max_batch_size: 1,
}

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#api_idString

The ID for the GraphQL API for which the resolver is being created.

Returns:

  • (String)


1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
# File 'gems/aws-sdk-appsync/lib/aws-sdk-appsync/types.rb', line 1161

class CreateResolverRequest < Struct.new(
  :api_id,
  :type_name,
  :field_name,
  :data_source_name,
  :request_mapping_template,
  :response_mapping_template,
  :kind,
  :pipeline_config,
  :sync_config,
  :caching_config,
  :max_batch_size)
  SENSITIVE = []
  include Aws::Structure
end

#caching_configTypes::CachingConfig

The caching configuration for the resolver.



1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
# File 'gems/aws-sdk-appsync/lib/aws-sdk-appsync/types.rb', line 1161

class CreateResolverRequest < Struct.new(
  :api_id,
  :type_name,
  :field_name,
  :data_source_name,
  :request_mapping_template,
  :response_mapping_template,
  :kind,
  :pipeline_config,
  :sync_config,
  :caching_config,
  :max_batch_size)
  SENSITIVE = []
  include Aws::Structure
end

#data_source_nameString

The name of the data source for which the resolver is being created.

Returns:

  • (String)


1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
# File 'gems/aws-sdk-appsync/lib/aws-sdk-appsync/types.rb', line 1161

class CreateResolverRequest < Struct.new(
  :api_id,
  :type_name,
  :field_name,
  :data_source_name,
  :request_mapping_template,
  :response_mapping_template,
  :kind,
  :pipeline_config,
  :sync_config,
  :caching_config,
  :max_batch_size)
  SENSITIVE = []
  include Aws::Structure
end

#field_nameString

The name of the field to attach the resolver to.

Returns:

  • (String)


1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
# File 'gems/aws-sdk-appsync/lib/aws-sdk-appsync/types.rb', line 1161

class CreateResolverRequest < Struct.new(
  :api_id,
  :type_name,
  :field_name,
  :data_source_name,
  :request_mapping_template,
  :response_mapping_template,
  :kind,
  :pipeline_config,
  :sync_config,
  :caching_config,
  :max_batch_size)
  SENSITIVE = []
  include Aws::Structure
end

#kindString

The resolver type.

  • UNIT: A UNIT resolver type. A UNIT resolver is the default resolver type. You can use a UNIT resolver to run a GraphQL query against a single data source.

  • PIPELINE: A PIPELINE resolver type. You can use a PIPELINE resolver to invoke a series of Function objects in a serial manner. You can use a pipeline resolver to run a GraphQL query against multiple data sources.

Returns:

  • (String)


1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
# File 'gems/aws-sdk-appsync/lib/aws-sdk-appsync/types.rb', line 1161

class CreateResolverRequest < Struct.new(
  :api_id,
  :type_name,
  :field_name,
  :data_source_name,
  :request_mapping_template,
  :response_mapping_template,
  :kind,
  :pipeline_config,
  :sync_config,
  :caching_config,
  :max_batch_size)
  SENSITIVE = []
  include Aws::Structure
end

#max_batch_sizeInteger

The maximum batching size for a resolver.

Returns:

  • (Integer)


1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
# File 'gems/aws-sdk-appsync/lib/aws-sdk-appsync/types.rb', line 1161

class CreateResolverRequest < Struct.new(
  :api_id,
  :type_name,
  :field_name,
  :data_source_name,
  :request_mapping_template,
  :response_mapping_template,
  :kind,
  :pipeline_config,
  :sync_config,
  :caching_config,
  :max_batch_size)
  SENSITIVE = []
  include Aws::Structure
end

#pipeline_configTypes::PipelineConfig

The PipelineConfig.



1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
# File 'gems/aws-sdk-appsync/lib/aws-sdk-appsync/types.rb', line 1161

class CreateResolverRequest < Struct.new(
  :api_id,
  :type_name,
  :field_name,
  :data_source_name,
  :request_mapping_template,
  :response_mapping_template,
  :kind,
  :pipeline_config,
  :sync_config,
  :caching_config,
  :max_batch_size)
  SENSITIVE = []
  include Aws::Structure
end

#request_mapping_templateString

The mapping template to use for requests.

A resolver uses a request mapping template to convert a GraphQL expression into a format that a data source can understand. Mapping templates are written in Apache Velocity Template Language (VTL).

VTL request mapping templates are optional when using an Lambda data source. For all other data sources, VTL request and response mapping templates are required.

Returns:

  • (String)


1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
# File 'gems/aws-sdk-appsync/lib/aws-sdk-appsync/types.rb', line 1161

class CreateResolverRequest < Struct.new(
  :api_id,
  :type_name,
  :field_name,
  :data_source_name,
  :request_mapping_template,
  :response_mapping_template,
  :kind,
  :pipeline_config,
  :sync_config,
  :caching_config,
  :max_batch_size)
  SENSITIVE = []
  include Aws::Structure
end

#response_mapping_templateString

The mapping template to use for responses from the data source.

Returns:

  • (String)


1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
# File 'gems/aws-sdk-appsync/lib/aws-sdk-appsync/types.rb', line 1161

class CreateResolverRequest < Struct.new(
  :api_id,
  :type_name,
  :field_name,
  :data_source_name,
  :request_mapping_template,
  :response_mapping_template,
  :kind,
  :pipeline_config,
  :sync_config,
  :caching_config,
  :max_batch_size)
  SENSITIVE = []
  include Aws::Structure
end

#sync_configTypes::SyncConfig

The SyncConfig for a resolver attached to a versioned data source.

Returns:



1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
# File 'gems/aws-sdk-appsync/lib/aws-sdk-appsync/types.rb', line 1161

class CreateResolverRequest < Struct.new(
  :api_id,
  :type_name,
  :field_name,
  :data_source_name,
  :request_mapping_template,
  :response_mapping_template,
  :kind,
  :pipeline_config,
  :sync_config,
  :caching_config,
  :max_batch_size)
  SENSITIVE = []
  include Aws::Structure
end

#type_nameString

The name of the Type.

Returns:

  • (String)


1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
# File 'gems/aws-sdk-appsync/lib/aws-sdk-appsync/types.rb', line 1161

class CreateResolverRequest < Struct.new(
  :api_id,
  :type_name,
  :field_name,
  :data_source_name,
  :request_mapping_template,
  :response_mapping_template,
  :kind,
  :pipeline_config,
  :sync_config,
  :caching_config,
  :max_batch_size)
  SENSITIVE = []
  include Aws::Structure
end