josephholsten-rets4r 1.1.17 → 1.1.18

Sign up to get free protection for your applications and to get access to all the features.
Files changed (54) hide show
  1. metadata +44 -84
  2. data/CHANGELOG +0 -336
  3. data/CONTRIBUTORS +0 -7
  4. data/GPL +0 -340
  5. data/LICENSE +0 -29
  6. data/NEWS +0 -183
  7. data/README.rdoc +0 -45
  8. data/RUBYS +0 -56
  9. data/Rakefile +0 -57
  10. data/TODO +0 -29
  11. data/VERSION.yml +0 -5
  12. data/examples/client_get_object.rb +0 -47
  13. data/examples/client_login.rb +0 -37
  14. data/examples/client_metadata.rb +0 -40
  15. data/examples/client_parser.rb +0 -10
  16. data/examples/client_search.rb +0 -47
  17. data/examples/settings.yml +0 -12
  18. data/lib/rets4r.rb +0 -9
  19. data/lib/rets4r/auth.rb +0 -73
  20. data/lib/rets4r/client.rb +0 -723
  21. data/lib/rets4r/client/data.rb +0 -14
  22. data/lib/rets4r/client/dataobject.rb +0 -20
  23. data/lib/rets4r/client/metadata.rb +0 -15
  24. data/lib/rets4r/client/parsers/compact.rb +0 -42
  25. data/lib/rets4r/client/parsers/compact_nokogiri.rb +0 -81
  26. data/lib/rets4r/client/parsers/metadata.rb +0 -92
  27. data/lib/rets4r/client/parsers/response_parser.rb +0 -100
  28. data/lib/rets4r/client/transaction.rb +0 -31
  29. data/lib/rets4r/core_ext/array/extract_options.rb +0 -15
  30. data/lib/rets4r/core_ext/class/attribute_accessors.rb +0 -58
  31. data/lib/rets4r/core_ext/hash/keys.rb +0 -46
  32. data/lib/rets4r/core_ext/hash/slice.rb +0 -39
  33. data/lib/rets4r/listing_mapper.rb +0 -17
  34. data/lib/rets4r/listing_service.rb +0 -35
  35. data/lib/rets4r/loader.rb +0 -8
  36. data/lib/tasks/annotations.rake +0 -20
  37. data/lib/tasks/coverage.rake +0 -13
  38. data/test/compact_nokogiri_test.rb +0 -35
  39. data/test/data/1.5/bad_compact.xml +0 -7
  40. data/test/data/1.5/count_only_compact.xml +0 -3
  41. data/test/data/1.5/error.xml +0 -1
  42. data/test/data/1.5/invalid_compact.xml +0 -4
  43. data/test/data/1.5/login.xml +0 -16
  44. data/test/data/1.5/metadata.xml +0 -0
  45. data/test/data/1.5/search_compact.xml +0 -8
  46. data/test/data/1.5/search_compact_big.xml +0 -136
  47. data/test/data/1.5/search_unescaped_compact.xml +0 -8
  48. data/test/data/listing_service.yml +0 -36
  49. data/test/listing_mapper_test.rb +0 -112
  50. data/test/loader_test.rb +0 -24
  51. data/test/test_auth.rb +0 -68
  52. data/test/test_client.rb +0 -315
  53. data/test/test_helper.rb +0 -12
  54. data/test/test_parser.rb +0 -96
@@ -1,46 +0,0 @@
1
- # from ActiveSupport
2
- class Hash
3
- # Return a new hash with all keys converted to strings.
4
- def stringify_keys
5
- dup.stringify_keys!
6
- end
7
-
8
- # Destructively convert all keys to strings.
9
- def stringify_keys!
10
- keys.each do |key|
11
- self[key.to_s] = delete(key)
12
- end
13
- self
14
- end
15
-
16
- # Return a new hash with all keys converted to symbols, as long as
17
- # they respond to +to_sym+.
18
- def symbolize_keys
19
- dup.symbolize_keys!
20
- end
21
-
22
- # Destructively convert all keys to symbols, as long as they respond
23
- # to +to_sym+.
24
- def symbolize_keys!
25
- keys.each do |key|
26
- self[(key.to_sym rescue key) || key] = delete(key)
27
- end
28
- self
29
- end
30
-
31
- alias_method :to_options, :symbolize_keys
32
- alias_method :to_options!, :symbolize_keys!
33
-
34
- # Validate all keys in a hash match *valid keys, raising ArgumentError on a mismatch.
35
- # Note that keys are NOT treated indifferently, meaning if you use strings for keys but assert symbols
36
- # as keys, this will fail.
37
- #
38
- # ==== Examples
39
- # { :name => "Rob", :years => "28" }.assert_valid_keys(:name, :age) # => raises "ArgumentError: Unknown key(s): years"
40
- # { :name => "Rob", :age => "28" }.assert_valid_keys("name", "age") # => raises "ArgumentError: Unknown key(s): name, age"
41
- # { :name => "Rob", :age => "28" }.assert_valid_keys(:name, :age) # => passes, raises nothing
42
- def assert_valid_keys(*valid_keys)
43
- unknown_keys = keys - [valid_keys].flatten
44
- raise(ArgumentError, "Unknown key(s): #{unknown_keys.join(", ")}") unless unknown_keys.empty?
45
- end
46
- end
@@ -1,39 +0,0 @@
1
- # from ActiveSupport
2
- class Hash
3
- # Slice a hash to include only the given keys. This is useful for
4
- # limiting an options hash to valid keys before passing to a method:
5
- #
6
- # def search(criteria = {})
7
- # assert_valid_keys(:mass, :velocity, :time)
8
- # end
9
- #
10
- # search(options.slice(:mass, :velocity, :time))
11
- #
12
- # If you have an array of keys you want to limit to, you should splat them:
13
- #
14
- # valid_keys = [:mass, :velocity, :time]
15
- # search(options.slice(*valid_keys))
16
- def slice(*keys)
17
- keys = keys.map! { |key| convert_key(key) } if respond_to?(:convert_key)
18
- hash = self.class.new
19
- keys.each { |k| hash[k] = self[k] if has_key?(k) }
20
- hash
21
- end
22
-
23
- # Replaces the hash with only the given keys.
24
- # Returns a hash contained the removed key/value pairs
25
- # {:a => 1, :b => 2, :c => 3, :d => 4}.slice!(:a, :b) # => {:c => 3, :d =>4}
26
- def slice!(*keys)
27
- keys = keys.map! { |key| convert_key(key) } if respond_to?(:convert_key)
28
- omit = slice(*self.keys - keys)
29
- hash = slice(*keys)
30
- replace(hash)
31
- omit
32
- end
33
-
34
- def extract!(*keys)
35
- result = {}
36
- keys.each {|key| result[key] = delete(key) }
37
- result
38
- end
39
- end
@@ -1,17 +0,0 @@
1
- module RETS4R
2
- class ListingMapper
3
- def initialize(params = {})
4
- @select = params[:select] || ListingService.connection[:select]
5
- end
6
- def select
7
- @select
8
- end
9
- def map(original)
10
- listing = {}
11
- @select.each_pair {|rets_key, record_key|
12
- listing[record_key] = original[rets_key]
13
- }
14
- listing
15
- end
16
- end
17
- end
@@ -1,35 +0,0 @@
1
- require 'rets4r/core_ext/class/attribute_accessors'
2
- require 'rets4r/core_ext/hash/keys'
3
- require 'rets4r/core_ext/hash/slice'
4
-
5
- module RETS4R
6
- class ListingService
7
- # RECORD_COUNT_ONLY=Librets::SearchRequest::RECORD_COUNT_ONLY
8
- RECORD_COUNT_ONLY='fixme'
9
- # Contains the listing service configurations - typically stored in
10
- # config/listing_service.yml - as a Hash.
11
- cattr_accessor :configurations, :instance_writer => false
12
- cattr_accessor :env, :instance_writer => false
13
-
14
- class << self
15
-
16
- # Connection configuration for the specified environment, or the current
17
- # environment if none is given.
18
- def connection(spec = nil)
19
- case spec
20
- when nil
21
- connection(RETS4R::ListingService.env)
22
- when Symbol, String
23
- if configuration = configurations[spec.to_s]
24
- configuration.symbolize_keys
25
- else
26
- raise ArgumentError, "#{spec} listing service is not configured"
27
- end
28
- else
29
- raise ArgumentError, "#{spec} listing service is not configured"
30
- end
31
- end
32
-
33
- end # class << self
34
- end
35
- end
data/lib/rets4r/loader.rb DELETED
@@ -1,8 +0,0 @@
1
- module RETS4R
2
- class Loader
3
- def self.load(file, &block)
4
- parser = RETS4R::Client::CompactNokogiriParser.new(file)
5
- parser.each(&block)
6
- end
7
- end
8
- end
@@ -1,20 +0,0 @@
1
- require 'source_annotation_extractor'
2
-
3
- desc "Enumerate all annotations"
4
- task :notes do
5
- SourceAnnotationExtractor.enumerate "OPTIMIZE|FIXME|TODO", :tag => true
6
- end
7
-
8
- namespace :notes do
9
- ["OPTIMIZE", "FIXME", "TODO"].each do |annotation|
10
- desc "Enumerate all #{annotation} annotations"
11
- task annotation.downcase.intern do
12
- SourceAnnotationExtractor.enumerate annotation
13
- end
14
- end
15
-
16
- desc "Enumerate a custom annotation, specify with ANNOTATION=WTFHAX"
17
- task :custom do
18
- SourceAnnotationExtractor.enumerate ENV['ANNOTATION']
19
- end
20
- end
@@ -1,13 +0,0 @@
1
- begin
2
- require 'rcov/rcovtask'
3
- Rcov::RcovTask.new do |test|
4
- test.libs << 'test'
5
- test.pattern = "test/test_*.rb"
6
- test.verbose = true
7
- test.rcov_opts << ' --sort coverage'
8
- end
9
- rescue LoadError
10
- task :rcov do
11
- abort "RCov is not available. In order to run rcov, you must: gem install rcov"
12
- end
13
- end
@@ -1,35 +0,0 @@
1
- $:.unshift File.expand_path(File.join(File.dirname(__FILE__), "..", "lib"))
2
-
3
- require 'test/unit'
4
- require 'rets4r'
5
-
6
- class CompactNokogiriTest < Test::Unit::TestCase
7
- def test_should_do_stuff
8
- file = File.expand_path(File.join('test', 'data', '1.5', 'search_compact.xml'))
9
- listings = RETS4R::Client::CompactNokogiriParser.new(open(file)).to_a
10
- assert_equal({"Third"=>"Datum3", "Second"=>"Datum2", "First"=>"Datum1"}, listings[0])
11
- assert_equal({"Third"=>"Datum6", "Second"=>"Datum5", "First"=>"Datum4"}, listings[1])
12
- end
13
- def test_should_handle_big_data
14
- file = File.expand_path(File.join('test', 'data', '1.5', 'bad_compact.xml'))
15
- listings = RETS4R::Client::CompactNokogiriParser.new(open(file)).to_a
16
- assert_equal 1, listings.length
17
- assert_equal 79, listings.first.keys.length
18
- end
19
- def test_each_should_yield_between_results
20
- file = File.expand_path(
21
- File.join('test', 'data', '1.5', 'search_compact_big.xml'))
22
- stat = File::Stat.new(file)
23
- unless stat.size > stat.blksize
24
- flunk "This test probably won't work on this machine.
25
- It needs a test input file larger than the native block size."
26
- end
27
- stream = open(file)
28
- positions = []
29
- listings = RETS4R::Client::CompactNokogiriParser.new(stream).each do |row|
30
- positions << stream.pos
31
- end
32
- assert positions.first < positions.last,
33
- "data was yielded durring the reading of the stream"
34
- end
35
- end
@@ -1,7 +0,0 @@
1
- <RETS ReplyCode="0" ReplyText="Operation Successful">
2
- <COUNT Records="38610" />
3
- <DELIMITER value="09" />
4
- <COLUMNS> MLSNUM AGENTLIST AGENTLIST_FULLNAME OFFICELIST OFFICELIST_OFFICENAM1 INTERNETLIST_ALL LISTSTATUSFLAG PHOTOCOUNT LISTSTATUS BEDS CARPORTCAP NUMDININGAREAS FIREPLACES BATHSFULL BATHSFULLLEVEL1 BATHSFULLLEVEL2 BATHSFULLLEVEL3 BATHSFULLBASEMENT GARAGECAP BATHSHALF BATHSHALFLEVEL1 BATHSHALFLEVEL2 BATHSHALFLEVEL3 BATHSHALFBASEMENT NUMLIVINGAREAS NUMBARNS NUMLAKES NUMPONDS NUMRESIDENCE NUMSTOCKTANKS STORIES NUMWELLS SCHOOLDISTRICT AGENTSELL_FULLNAME OFFICESELL_OFFICENAM2 STATE STREETNAME STREETTYPE STREETNUM STREETNUMDISPLAY STREETDIRSUFFIX STREETDIR STYLE SUBDIVISION ACRES INTERNETDISPLAYYN ROOMBEDBATHDESC STORIESBLDG CITY COMMONFEATURES COUNTY ACRESCULTIVATED INTERIOR LISTPRICE SQFTPRICE LOTNUM LOTDESC LOTDIM LOTSIZE LISTPRICELOW ACRESPRICE MAPBOOK MAPCOORD MAPPAGE LISTPRICEORIG GARAGEDESC PROPTYPE REMARKS PROPSUBTYPE PROPSUBTYPEDISPLAY SQFTTOTAL SQFTSOURCE UTILITIES UID UIDPRP TAXUNEXEMPT UNITNUM YEARBUILT ZIPCODE </COLUMNS>
5
- <DATA> 11322886 000533246 CD Boyd, II FMAB McClure, REALTORS OMWS,immo,RCOM,SYND 8 act 4 0 2 1 3 2 0 2 2 Wylie ISD, Taylor Co. TX Thompson PKWY 8317 8317 STYRANCH Belle Vista Estates 0.361 Y BBFJET-TUB,BBFLIN-CLO,BBFSEP-SHO,BBFW+I-CLO Abilene Taylor INFBAY-WIN,INFCABLE-A,INFDECLTNG,INFHIGHSPD,INFLOFT,INFSOUND-W,INFVAUL-CL,INFWIND-CO 239000 84.6 LTDSUBDIV 87X182 LTS.5-.99A 0 662049 OT none 9999 239000 PARATTACHE,PAROPENER,PARREAR,PARSIDE RES Custom home built in 05&apos;. Growing neighborhood convienient to Wylie schools. Abundant living areas and and open space floor plan.Could be 5th BDRM, or upstair BDRM &amp; Bath could be another living area. Perfect office next to Master. Gourmet sized kitchen, granite countertops, barell ceilings, wonderful storage space!!!! S RES-S 2825 TAX STUASPHALT,UTLCITY-SE,UTLCITY-WA,STUCONCRET 3211078 3211078 5876 2005 79606-6652 </DATA>
6
- <MAXROWS />
7
- </RETS>
@@ -1,3 +0,0 @@
1
- <RETS ReplyCode="0" ReplyText="SUCCESS">
2
- <COUNT Records="1024"/>
3
- </RETS>
@@ -1 +0,0 @@
1
- <RETS ReplyCode="20400" ReplyText="Invalid Invalidness." />
@@ -1,4 +0,0 @@
1
- <RETS ReplyCode="0" ReplyText="SUCCESS">
2
- <COUNT Records="4"/>
3
- <DELIMITER value="09" />
4
- <COLUMNS> First Second Third </COL
@@ -1,16 +0,0 @@
1
- <RETS ReplyCode="0" ReplyText="Login Request">
2
- <RETS-RESPONSE>
3
- MemberName=Spiffy Realtor
4
- User=srealtor,1,11,11111
5
- Broker=1,2
6
- MetadataVersion=1.1.1
7
- MinMetadataVersion=1.0.0
8
- TimeoutSeconds=1200
9
- Action=/rets/ActionURL
10
- GetMetadata=/rets/GetMetadata
11
- GetObject=/rets/GetObject
12
- Login=/rets/Login
13
- Logout=/rets/Logout
14
- Search=/rets/Search
15
- </RETS-RESPONSE>
16
- </RETS>
File without changes
@@ -1,8 +0,0 @@
1
- <RETS ReplyCode="0" ReplyText="SUCCESS">
2
- <COUNT Records="4"/>
3
- <DELIMITER value="09" />
4
- <COLUMNS> First Second Third </COLUMNS>
5
- <DATA> Datum1 Datum2 Datum3</DATA>
6
- <DATA> Datum4 Datum5 Datum6</DATA>
7
- <MAXROWS/>
8
- </RETS>
@@ -1,136 +0,0 @@
1
- <RETS ReplyCode="0" ReplyText="SUCCESS">
2
- <COUNT Records="4"/>
3
- <DELIMITER value="09" />
4
- <COLUMNS> First Second Third </COLUMNS>
5
- <DATA> Datum1 Datum2 Datum3</DATA>
6
- <DATA> Datum4 Datum5 Datum6</DATA>
7
- <DATA> Datum4 Datum5 Datum6</DATA>
8
- <DATA> Datum1 Datum2 Datum3</DATA>
9
- <DATA> Datum1 Datum2 Datum3</DATA>
10
- <DATA> Datum4 Datum5 Datum6</DATA>
11
- <DATA> Datum4 Datum5 Datum6</DATA>
12
- <DATA> Datum1 Datum2 Datum3</DATA>
13
- <DATA> Datum4 Datum5 Datum6</DATA>
14
- <DATA> Datum4 Datum5 Datum6</DATA>
15
- <DATA> Datum1 Datum2 Datum3</DATA>
16
- <DATA> Datum1 Datum2 Datum3</DATA>
17
- <DATA> Datum4 Datum5 Datum6</DATA>
18
- <DATA> Datum4 Datum5 Datum6</DATA>
19
- <DATA> Datum1 Datum2 Datum3</DATA>
20
- <DATA> Datum4 Datum5 Datum6</DATA>
21
- <DATA> Datum4 Datum5 Datum6</DATA>
22
- <DATA> Datum1 Datum2 Datum3</DATA>
23
- <DATA> Datum1 Datum2 Datum3</DATA>
24
- <DATA> Datum4 Datum5 Datum6</DATA>
25
- <DATA> Datum4 Datum5 Datum6</DATA>
26
- <DATA> Datum1 Datum2 Datum3</DATA>
27
- <DATA> Datum4 Datum5 Datum6</DATA>
28
- <DATA> Datum4 Datum5 Datum6</DATA>
29
- <DATA> Datum1 Datum2 Datum3</DATA>
30
- <DATA> Datum1 Datum2 Datum3</DATA>
31
- <DATA> Datum4 Datum5 Datum6</DATA>
32
- <DATA> Datum4 Datum5 Datum6</DATA>
33
- <DATA> Datum1 Datum2 Datum3</DATA>
34
- <DATA> Datum4 Datum5 Datum6</DATA>
35
- <DATA> Datum4 Datum5 Datum6</DATA>
36
- <DATA> Datum1 Datum2 Datum3</DATA>
37
- <DATA> Datum1 Datum2 Datum3</DATA>
38
- <DATA> Datum4 Datum5 Datum6</DATA>
39
- <DATA> Datum4 Datum5 Datum6</DATA>
40
- <DATA> Datum1 Datum2 Datum3</DATA>
41
- <DATA> Datum4 Datum5 Datum6</DATA>
42
- <DATA> Datum4 Datum5 Datum6</DATA>
43
- <DATA> Datum1 Datum2 Datum3</DATA>
44
- <DATA> Datum1 Datum2 Datum3</DATA>
45
- <DATA> Datum4 Datum5 Datum6</DATA>
46
- <DATA> Datum4 Datum5 Datum6</DATA>
47
- <DATA> Datum1 Datum2 Datum3</DATA>
48
- <DATA> Datum4 Datum5 Datum6</DATA>
49
- <DATA> Datum4 Datum5 Datum6</DATA>
50
- <DATA> Datum1 Datum2 Datum3</DATA>
51
- <DATA> Datum1 Datum2 Datum3</DATA>
52
- <DATA> Datum4 Datum5 Datum6</DATA>
53
- <DATA> Datum4 Datum5 Datum6</DATA>
54
- <DATA> Datum1 Datum2 Datum3</DATA>
55
- <DATA> Datum4 Datum5 Datum6</DATA>
56
- <DATA> Datum4 Datum5 Datum6</DATA>
57
- <DATA> Datum1 Datum2 Datum3</DATA>
58
- <DATA> Datum1 Datum2 Datum3</DATA>
59
- <DATA> Datum4 Datum5 Datum6</DATA>
60
- <DATA> Datum4 Datum5 Datum6</DATA>
61
- <DATA> Datum1 Datum2 Datum3</DATA>
62
- <DATA> Datum4 Datum5 Datum6</DATA>
63
- <DATA> Datum4 Datum5 Datum6</DATA>
64
- <DATA> Datum1 Datum2 Datum3</DATA>
65
- <DATA> Datum1 Datum2 Datum3</DATA>
66
- <DATA> Datum4 Datum5 Datum6</DATA>
67
- <DATA> Datum4 Datum5 Datum6</DATA>
68
- <DATA> Datum1 Datum2 Datum3</DATA>
69
- <DATA> Datum4 Datum5 Datum6</DATA>
70
- <DATA> Datum4 Datum5 Datum6</DATA>
71
- <DATA> Datum1 Datum2 Datum3</DATA>
72
- <DATA> Datum1 Datum2 Datum3</DATA>
73
- <DATA> Datum4 Datum5 Datum6</DATA>
74
- <DATA> Datum4 Datum5 Datum6</DATA>
75
- <DATA> Datum1 Datum2 Datum3</DATA>
76
- <DATA> Datum4 Datum5 Datum6</DATA>
77
- <DATA> Datum4 Datum5 Datum6</DATA>
78
- <DATA> Datum1 Datum2 Datum3</DATA>
79
- <DATA> Datum1 Datum2 Datum3</DATA>
80
- <DATA> Datum4 Datum5 Datum6</DATA>
81
- <DATA> Datum4 Datum5 Datum6</DATA>
82
- <DATA> Datum1 Datum2 Datum3</DATA>
83
- <DATA> Datum4 Datum5 Datum6</DATA>
84
- <DATA> Datum4 Datum5 Datum6</DATA>
85
- <DATA> Datum1 Datum2 Datum3</DATA>
86
- <DATA> Datum1 Datum2 Datum3</DATA>
87
- <DATA> Datum4 Datum5 Datum6</DATA>
88
- <DATA> Datum4 Datum5 Datum6</DATA>
89
- <DATA> Datum1 Datum2 Datum3</DATA>
90
- <DATA> Datum4 Datum5 Datum6</DATA>
91
- <DATA> Datum4 Datum5 Datum6</DATA>
92
- <DATA> Datum1 Datum2 Datum3</DATA>
93
- <DATA> Datum1 Datum2 Datum3</DATA>
94
- <DATA> Datum4 Datum5 Datum6</DATA>
95
- <DATA> Datum4 Datum5 Datum6</DATA>
96
- <DATA> Datum1 Datum2 Datum3</DATA>
97
- <DATA> Datum4 Datum5 Datum6</DATA>
98
- <DATA> Datum4 Datum5 Datum6</DATA>
99
- <DATA> Datum1 Datum2 Datum3</DATA>
100
- <DATA> Datum1 Datum2 Datum3</DATA>
101
- <DATA> Datum4 Datum5 Datum6</DATA>
102
- <DATA> Datum4 Datum5 Datum6</DATA>
103
- <DATA> Datum1 Datum2 Datum3</DATA>
104
- <DATA> Datum4 Datum5 Datum6</DATA>
105
- <DATA> Datum4 Datum5 Datum6</DATA>
106
- <DATA> Datum1 Datum2 Datum3</DATA>
107
- <DATA> Datum1 Datum2 Datum3</DATA>
108
- <DATA> Datum4 Datum5 Datum6</DATA>
109
- <DATA> Datum4 Datum5 Datum6</DATA>
110
- <DATA> Datum1 Datum2 Datum3</DATA>
111
- <DATA> Datum4 Datum5 Datum6</DATA>
112
- <DATA> Datum4 Datum5 Datum6</DATA>
113
- <DATA> Datum1 Datum2 Datum3</DATA>
114
- <DATA> Datum1 Datum2 Datum3</DATA>
115
- <DATA> Datum4 Datum5 Datum6</DATA>
116
- <DATA> Datum4 Datum5 Datum6</DATA>
117
- <DATA> Datum1 Datum2 Datum3</DATA>
118
- <DATA> Datum4 Datum5 Datum6</DATA>
119
- <DATA> Datum4 Datum5 Datum6</DATA>
120
- <DATA> Datum1 Datum2 Datum3</DATA>
121
- <DATA> Datum1 Datum2 Datum3</DATA>
122
- <DATA> Datum4 Datum5 Datum6</DATA>
123
- <DATA> Datum4 Datum5 Datum6</DATA>
124
- <DATA> Datum1 Datum2 Datum3</DATA>
125
- <DATA> Datum4 Datum5 Datum6</DATA>
126
- <DATA> Datum4 Datum5 Datum6</DATA>
127
- <DATA> Datum1 Datum2 Datum3</DATA>
128
- <DATA> Datum1 Datum2 Datum3</DATA>
129
- <DATA> Datum1 Datum2 Datum3</DATA>
130
- <DATA> Datum4 Datum5 Datum6</DATA>
131
- <DATA> Datum4 Datum5 Datum6</DATA>
132
- <DATA> Datum1 Datum2 Datum3</DATA>
133
- <DATA> Datum4 Datum5 Datum6</DATA>
134
- <DATA> Datum4 Datum5 Datum6</DATA>
135
- <MAXROWS/>
136
- </RETS>
@@ -1,8 +0,0 @@
1
- <RETS ReplyCode="0" ReplyText="SUCCESS">
2
- <COUNT Records="4"/>
3
- <DELIMITER value="09" />
4
- <COLUMNS> First Second Third </COLUMNS>
5
- <DATA> Datum1 <Datum&2 Datum3</DATA>
6
- <DATA> Datum4 D>atum5 Datum6</DATA>
7
- <MAXROWS/>
8
- </RETS>
@@ -1,36 +0,0 @@
1
- # This file specifies the access information for the listing service #
2
- # To access the standard RETS demo server, use:
3
- #
4
- test:
5
- url: http://demo.crt.realtors.org:6103/rets/login
6
- username: Joe
7
- password: Schmoe
8
- version: 1.7.2
9
- resource: Property
10
- class: RES
11
- object_type: Photo
12
- select:
13
- ListingID: :mls
14
- AgentID: :agent_id
15
- ModificationTimestamp: :rets_update_at
16
- Status: :status
17
- # ListDate: :list_date
18
- ListPrice: :list_price
19
- # ClosePrice: :close_price
20
- # ContractDate: :contract_date
21
- StreetNumber: :street_number
22
- StreetName: :street_name
23
- StreetDirection: :street_direction
24
- Unit: :unit_number
25
- ZipCode: :zip_code
26
- City: :city
27
- County: :county
28
- # Rooms: :rooms
29
- # State: :state
30
- # Board: :board
31
- LivingArea: :living_area
32
- Baths: :baths
33
- Bedrooms: :beds
34
- Garage: :garage
35
- SqFt: :square_feet
36
- YearBuilt: :year_built