Class: EPP::Contact::Command

Inherits:
Object
  • Object
show all
Includes:
XMLHelpers
Defined in:
lib/epp-client/contact/command.rb

Direct Known Subclasses

Check, Create, Delete, Info, Transfer, Update

Defined Under Namespace

Classes: TooManyStreetLines

Constant Summary collapse

DISCLOSE_ORDER =
['name', 'org', 'addr', 'voice', 'fax', 'email']
MAX_STREETS =
3

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from XMLHelpers

#as_xml, #epp_namespace, #epp_node, #xml_document, #xml_namespace, #xml_node

Instance Attribute Details

#namespacesObject (readonly)

Returns the value of attribute namespaces.



5
6
7
# File 'lib/epp-client/contact/command.rb', line 5

def namespaces
  @namespaces
end

Instance Method Details

#nameObject

Raises:

  • (NotImplementedError)


22
23
24
# File 'lib/epp-client/contact/command.rb', line 22

def name
  raise NotImplementedError, "#name must be implemented in subclasses"
end

#set_namespaces(namespaces) ⇒ Object



18
19
20
# File 'lib/epp-client/contact/command.rb', line 18

def set_namespaces(namespaces)
  @namespaces = namespaces
end

#to_xmlObject



26
27
28
29
30
31
32
33
34
# File 'lib/epp-client/contact/command.rb', line 26

def to_xml
  @namespaces ||= {}
  node = contact_node(name)

  xattr = XML::Attr.new(node, "schemaLocation", SCHEMA_LOCATION)
  xattr.namespaces.namespace = @namespaces['xsi'] || XML::Namespace.new(node, 'xsi', 'http://www.w3.org/2001/XMLSchema-instance')

  node
end