In Files

  • wsdl/operationBinding.rb

Class/Module Index [+]

Quicksearch

WSDL::OperationBinding

Attributes

fault[R]
input[R]
name[R]
output[R]
soapoperation[R]

Public Class Methods

new() click to toggle source
 
               # File wsdl/operationBinding.rb, line 22
def initialize
  super
  @name = nil
  @input = nil
  @output = nil
  @fault = []
  @soapoperation = nil
end
            

Public Instance Methods

find_operation() click to toggle source
 
               # File wsdl/operationBinding.rb, line 39
def find_operation
  porttype.operations[@name] or raise RuntimeError.new("#{@name} not found")
end
            
parse_attr(attr, value) click to toggle source
 
               # File wsdl/operationBinding.rb, line 97
def parse_attr(attr, value)
  case attr
  when NameAttrName
    @name = XSD::QName.new(targetnamespace, value.source)
  else
    nil
  end
end
            
parse_element(element) click to toggle source
 
               # File wsdl/operationBinding.rb, line 71
def parse_element(element)
  case element
  when InputName
    o = Param.new
    @input = o
    o
  when OutputName
    o = Param.new
    @output = o
    o
  when FaultName
    o = Param.new
    @fault << o
    o
  when SOAPOperationName
    o = WSDL::SOAP::Operation.new
    @soapoperation = o
    o
  when DocumentationName
    o = Documentation.new
    o
  else
    nil
  end
end
            
porttype() click to toggle source
 
               # File wsdl/operationBinding.rb, line 35
def porttype
  root.porttype(parent.type)
end
            
soapaction() click to toggle source
 
               # File wsdl/operationBinding.rb, line 63
def soapaction
  if @soapoperation
    @soapoperation.soapaction
  else
    nil
  end
end
            
soapoperation_name() click to toggle source
 
               # File wsdl/operationBinding.rb, line 43
def soapoperation_name
  if @soapoperation
    @soapoperation.input_info.op_name
  else
    find_operation.name
  end
end
            
soapoperation_style() click to toggle source
 
               # File wsdl/operationBinding.rb, line 51
def soapoperation_style
  style = nil
  if @soapoperation
    style = @soapoperation.operation_style
  elsif parent.soapbinding
    style = parent.soapbinding.style
  else
    raise TypeError.new("operation style definition not found")
  end
  style || :document
end
            
targetnamespace() click to toggle source
 
               # File wsdl/operationBinding.rb, line 31
def targetnamespace
  parent.targetnamespace
end