class AWS::SimpleWorkflow::TypeCollection

@private
The base class for {WorkflowTypeCollection} and {ActivityTypeCollection}.

def [] name, version

Returns:
  • (ActivityType, WorkflowType) -

Parameters:
  • version (String) -- Version of the type.
  • name (String) -- Name of the type.
def [] name, version
  member_class.new(domain, name, version)
end

def _each_item next_token, limit, options = {}, &block

def _each_item next_token, limit, options = {}, &block
  options[:domain] = domain.name
  options[:next_page_token] = next_token if next_token
  options[:maximum_page_size] = limit if limit
  options[:registration_status] ||= @registration_status
  options[:name] ||= @named if @named # may be nil
  options[:reverse_order] = @reverse_order unless 
    options.has_key?(:reverse_order)
  ruby_name = Core::Inflection.ruby_name(member_class.name)
  type_key = member_class.type_key
  client_method = :"list_#{ruby_name}s"
  response = client.send(client_method, options)
  response.data['typeInfos'].each do |desc|
    type = member_class.new_from(client_method, desc, domain, 
      desc[type_key]['name'], 
      desc[type_key]['version']) 
    yield(type)
    
  end
  response.data['nextPageToken']
end

def collection_with options = {}

def collection_with options = {}
  self.class.new(domain, {
    :registration_status => @registration_status,
    :reverse_order => @reverse_order,
    :named => @named,
    :config => config,
  }.merge(options))
end

def deprecated

Returns:
  • (TypeCollection) - Returns a collection that
def deprecated
  collection_with(:registration_status => 'DEPRECATED')
end

def initialize domain, options = {}

Parameters:
  • domain (Domain) -- The domain the (workflow or activity types
def initialize domain, options = {}
  @domain = domain
  @named = options[:named]
  @registration_status = options[:registration_status] ? 
    options[:registration_status].to_s.upcase : 'REGISTERED'
  @reverse_order = options.key?(:reverse_order) ?
    !!options[:reverse_order] : false
  super
end

def member_class

def member_class
  name = self.class.name.split(/::/).last.sub(/Collection/, '')
  SimpleWorkflow.const_get(name)
end

def named name

Returns:
  • (TypeCollection) - Returns a collection that
def named name
  collection_with(:named => name.to_s)
end

def register

def register
  raise NotImplementedError # implemented in subclasses
end

def reverse_order

Returns:
  • (TypeCollection) - Returns a collection that
def reverse_order
  collection_with(:reverse_order => true)
end