tlconnor-xero_gateway 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
data/test/xsd/README ADDED
@@ -0,0 +1,2 @@
1
+ These XML schemas are taken directly from https://network.xero.com/Help/Xero%20API%20Reference%201.0.htm
2
+ and all XML generated to be sent to Xero should match these schemas
@@ -0,0 +1,50 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
3
+ <xs:element name="Contact">
4
+ <xs:complexType>
5
+ <xs:sequence>
6
+ <xs:element minOccurs="0" name="ContactID" type="xs:string" />
7
+ <xs:element minOccurs="0" name="ContactNumber" type="xs:string" />
8
+ <xs:element name="Name" type="xs:string" />
9
+ <xs:element minOccurs="0" name="EmailAddress" type="xs:string" />
10
+ <xs:element name="Addresses">
11
+ <xs:complexType>
12
+ <xs:sequence>
13
+ <xs:element name="Address">
14
+ <xs:complexType>
15
+ <xs:sequence>
16
+ <xs:element name="AddressType" type="xs:string" />
17
+ <xs:element minOccurs="0" name="AddressLine1" type="xs:string" />
18
+ <xs:element minOccurs="0" name="AddressLine2" type="xs:string" />
19
+ <xs:element minOccurs="0" name="AddressLine3" type="xs:string" />
20
+ <xs:element minOccurs="0" name="AddressLine4" type="xs:string" />
21
+ <xs:element minOccurs="0" name="City" type="xs:string" />
22
+ <xs:element minOccurs="0" name="Region" type="xs:string" />
23
+ <xs:element minOccurs="0" name="PostalCode" type="xs:unsignedShort" />
24
+ <xs:element minOccurs="0" name="Country" type="xs:string" />
25
+ </xs:sequence>
26
+ </xs:complexType>
27
+ </xs:element>
28
+ </xs:sequence>
29
+ </xs:complexType>
30
+ </xs:element>
31
+ <xs:element name="Phones">
32
+ <xs:complexType>
33
+ <xs:sequence>
34
+ <xs:element maxOccurs="unbounded" name="Phone">
35
+ <xs:complexType>
36
+ <xs:sequence>
37
+ <xs:element name="PhoneType" type="xs:string" />
38
+ <xs:element minOccurs="0" name="PhoneNumber" type="xs:unsignedInt" />
39
+ <xs:element minOccurs="0" name="PhoneAreaCode" type="xs:unsignedByte" />
40
+ <xs:element minOccurs="0" name="PhoneCountryCode" type="xs:unsignedByte" />
41
+ </xs:sequence>
42
+ </xs:complexType>
43
+ </xs:element>
44
+ </xs:sequence>
45
+ </xs:complexType>
46
+ </xs:element>
47
+ </xs:sequence>
48
+ </xs:complexType>
49
+ </xs:element>
50
+ </xs:schema>
@@ -0,0 +1,98 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
3
+ <xs:element name="Invoice">
4
+ <xs:complexType>
5
+ <xs:sequence>
6
+ <xs:element name="InvoiceType" type="xs:string" />
7
+ <xs:element name="Contact">
8
+ <xs:complexType>
9
+ <xs:sequence>
10
+ <xs:element minOccurs="0" name="ContactID" type="xs:string" />
11
+ <xs:element name="Name" type="xs:string" />
12
+ <xs:element minOccurs="0" name="EmailAddress" type="xs:string" />
13
+ <xs:element name="Addresses">
14
+ <xs:complexType>
15
+ <xs:sequence>
16
+ <xs:element name="Address">
17
+ <xs:complexType>
18
+ <xs:sequence>
19
+ <xs:element name="AddressType" type="xs:string" />
20
+ <xs:element minOccurs="0" name="AddressLine1" type="xs:string" />
21
+ <xs:element minOccurs="0" name="AddressLine2" type="xs:string" />
22
+ <xs:element minOccurs="0" name="AddressLine3" type="xs:string" />
23
+ <xs:element minOccurs="0" name="AddressLine4" type="xs:string" />
24
+ <xs:element minOccurs="0" name="City" type="xs:string" />
25
+ <xs:element minOccurs="0" name="Region" type="xs:string" />
26
+ <xs:element minOccurs="0" name="PostalCode" type="xs:unsignedShort" />
27
+ <xs:element minOccurs="0" name="Country" type="xs:string" />
28
+ </xs:sequence>
29
+ </xs:complexType>
30
+ </xs:element>
31
+ </xs:sequence>
32
+ </xs:complexType>
33
+ </xs:element>
34
+ <xs:element minOccurs="0" name="Phones">
35
+ <xs:complexType>
36
+ <xs:sequence>
37
+ <xs:element maxOccurs="unbounded" name="Phone">
38
+ <xs:complexType>
39
+ <xs:sequence>
40
+ <xs:element name="PhoneType" type="xs:string" />
41
+ <xs:element minOccurs="0" name="PhoneNumber" type="xs:unsignedInt" />
42
+ <xs:element minOccurs="0" name="PhoneAreaCode" type="xs:unsignedByte" />
43
+ <xs:element minOccurs="0" name="PhoneCountryCode" type="xs:unsignedByte" />
44
+ </xs:sequence>
45
+ </xs:complexType>
46
+ </xs:element>
47
+ </xs:sequence>
48
+ </xs:complexType>
49
+ </xs:element>
50
+ </xs:sequence>
51
+ </xs:complexType>
52
+ </xs:element>
53
+ <xs:element name="InvoiceDate" type="xs:dateTime" />
54
+ <xs:element minOccurs="0" name="DueDate" type="xs:dateTime" />
55
+ <xs:element name="InvoiceNumber" type="xs:string" />
56
+ <xs:element minOccurs="0" name="Reference" type="xs:string" />
57
+ <xs:element minOccurs="0" name="TaxInclusive" type="xs:boolean" />
58
+ <xs:element minOccurs="0" name="IncludesTax" type="xs:boolean" />
59
+ <xs:element minOccurs="0" name="SubTotal" type="xs:decimal" />
60
+ <xs:element minOccurs="0" name="TotalTax" type="xs:decimal" />
61
+ <xs:element minOccurs="0" name="Total" type="xs:decimal" />
62
+ <xs:element name="LineItems">
63
+ <xs:complexType>
64
+ <xs:sequence>
65
+ <xs:element maxOccurs="unbounded" name="LineItem">
66
+ <xs:complexType>
67
+ <xs:sequence>
68
+ <xs:element name="Description" type="xs:string" />
69
+ <xs:element minOccurs="0" name="Quantity" type="xs:decimal" />
70
+ <xs:element name="UnitAmount" type="xs:decimal" />
71
+ <xs:element minOccurs="0" name="TaxType" type="xs:string" />
72
+ <xs:element name="TaxAmount" type="xs:decimal" />
73
+ <xs:element name="LineAmount" type="xs:decimal" />
74
+ <xs:element name="AccountCode" type="xs:string" />
75
+ <xs:element name="Tracking">
76
+ <xs:complexType>
77
+ <xs:sequence>
78
+ <xs:element name="TrackingCategory">
79
+ <xs:complexType>
80
+ <xs:sequence>
81
+ <xs:element name="Name" type="xs:string" />
82
+ <xs:element name="Option" type="xs:string" />
83
+ </xs:sequence>
84
+ </xs:complexType>
85
+ </xs:element>
86
+ </xs:sequence>
87
+ </xs:complexType>
88
+ </xs:element>
89
+ </xs:sequence>
90
+ </xs:complexType>
91
+ </xs:element>
92
+ </xs:sequence>
93
+ </xs:complexType>
94
+ </xs:element>
95
+ </xs:sequence>
96
+ </xs:complexType>
97
+ </xs:element>
98
+ </xs:schema>
@@ -0,0 +1,44 @@
1
+ Gem::Specification.new do |s|
2
+ s.name = "xero_gateway"
3
+ s.version = "1.0.0"
4
+ s.date = "2008-12-01"
5
+ s.summary = "Enables ruby based applications to communicate with the Xero API"
6
+ s.email = "tlconnor@gmail.com"
7
+ s.homepage = "http://github.com/tlconnor/xero_gateway"
8
+ s.description = "Enables ruby based applications to communicate with the Xero API"
9
+ s.has_rdoc = false
10
+ s.authors = ["Tim Connor"]
11
+ s.add_dependency('builder', '>= 2.1.2')
12
+ s.files = ["README.textile",
13
+ "CHANGELOG.textile",
14
+ "LICENSE",
15
+ "Rakefile",
16
+ "lib/xero_gateway.rb",
17
+ "lib/xero_gateway/account.rb",
18
+ "lib/xero_gateway/address.rb",
19
+ "lib/xero_gateway/contact.rb",
20
+ "lib/xero_gateway/dates.rb",
21
+ "lib/xero_gateway/gateway.rb",
22
+ "lib/xero_gateway/http.rb",
23
+ "lib/xero_gateway/invoice.rb",
24
+ "lib/xero_gateway/line_item.rb",
25
+ "lib/xero_gateway/money.rb",
26
+ "lib/xero_gateway/phone.rb",
27
+ "lib/xero_gateway/response.rb",
28
+ "lib/xero_gateway/messages/account_message.rb",
29
+ "lib/xero_gateway/messages/contact_message.rb",
30
+ "lib/xero_gateway/messages/invoice_message.rb",
31
+ "test/test_helper.rb",
32
+ "test/unit/messages/contact_message_test.rb",
33
+ "test/unit/messages/invoice_message_test.rb",
34
+ "test/integration/gateway_test.rb",
35
+ "test/integration/stub_responses/accounts.xml",
36
+ "test/integration/stub_responses/contact.xml",
37
+ "test/integration/stub_responses/contacts.xml",
38
+ "test/integration/stub_responses/invoice.xml",
39
+ "test/integration/stub_responses/invoices.xml",
40
+ "test/xsd/README",
41
+ "test/xsd/create_contact.xsd",
42
+ "test/xsd/create_invoice.xsd",
43
+ "xero_gateway.gemspec"]
44
+ end
metadata ADDED
@@ -0,0 +1,92 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: tlconnor-xero_gateway
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Tim Connor
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2008-12-01 00:00:00 -08:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: builder
17
+ version_requirement:
18
+ version_requirements: !ruby/object:Gem::Requirement
19
+ requirements:
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: 2.1.2
23
+ version:
24
+ description: Enables ruby based applications to communicate with the Xero API
25
+ email: tlconnor@gmail.com
26
+ executables: []
27
+
28
+ extensions: []
29
+
30
+ extra_rdoc_files: []
31
+
32
+ files:
33
+ - README.textile
34
+ - CHANGELOG.textile
35
+ - LICENSE
36
+ - Rakefile
37
+ - lib/xero_gateway.rb
38
+ - lib/xero_gateway/account.rb
39
+ - lib/xero_gateway/address.rb
40
+ - lib/xero_gateway/contact.rb
41
+ - lib/xero_gateway/dates.rb
42
+ - lib/xero_gateway/gateway.rb
43
+ - lib/xero_gateway/http.rb
44
+ - lib/xero_gateway/invoice.rb
45
+ - lib/xero_gateway/line_item.rb
46
+ - lib/xero_gateway/money.rb
47
+ - lib/xero_gateway/phone.rb
48
+ - lib/xero_gateway/response.rb
49
+ - lib/xero_gateway/messages/account_message.rb
50
+ - lib/xero_gateway/messages/contact_message.rb
51
+ - lib/xero_gateway/messages/invoice_message.rb
52
+ - test/test_helper.rb
53
+ - test/unit/messages/contact_message_test.rb
54
+ - test/unit/messages/invoice_message_test.rb
55
+ - test/integration/gateway_test.rb
56
+ - test/integration/stub_responses/accounts.xml
57
+ - test/integration/stub_responses/contact.xml
58
+ - test/integration/stub_responses/contacts.xml
59
+ - test/integration/stub_responses/invoice.xml
60
+ - test/integration/stub_responses/invoices.xml
61
+ - test/xsd/README
62
+ - test/xsd/create_contact.xsd
63
+ - test/xsd/create_invoice.xsd
64
+ - xero_gateway.gemspec
65
+ has_rdoc: false
66
+ homepage: http://github.com/tlconnor/xero_gateway
67
+ post_install_message:
68
+ rdoc_options: []
69
+
70
+ require_paths:
71
+ - lib
72
+ required_ruby_version: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ version: "0"
77
+ version:
78
+ required_rubygems_version: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: "0"
83
+ version:
84
+ requirements: []
85
+
86
+ rubyforge_project:
87
+ rubygems_version: 1.2.0
88
+ signing_key:
89
+ specification_version: 2
90
+ summary: Enables ruby based applications to communicate with the Xero API
91
+ test_files: []
92
+