├── target ├── classes │ ├── default.properties │ └── org │ │ └── realtors │ │ └── rets │ │ ├── client │ │ ├── ReplyCode.class │ │ ├── RetsUtil.class │ │ ├── RetsSession.class │ │ ├── RetsVersion.class │ │ ├── CapabilityUrls.class │ │ ├── LoginRequest.class │ │ ├── LoginResponse.class │ │ ├── LogoutRequest.class │ │ ├── LogoutResponse.class │ │ ├── RetsException.class │ │ ├── RetsHttpClient.class │ │ ├── RetsSession$1.class │ │ ├── RetsTransport.class │ │ ├── SearchRequest.class │ │ ├── SearchResult.class │ │ ├── CompactRowPolicy.class │ │ ├── GetObjectRequest.class │ │ ├── KeyValueResponse.class │ │ ├── ReplyCodeHandler.class │ │ ├── RetsHttpRequest.class │ │ ├── RetsHttpResponse.class │ │ ├── RetsTransport$1.class │ │ ├── SearchResultImpl.class │ │ ├── SearchResultInfo.class │ │ ├── SearchResultSet.class │ │ ├── StreamingThread.class │ │ ├── CommonsHttpClient.class │ │ ├── CompactRowPolicy$1.class │ │ ├── CompactRowPolicy$2.class │ │ ├── CompactRowPolicy$3.class │ │ ├── CompactRowPolicy$4.class │ │ ├── GenericHttpRequest.class │ │ ├── GetMetadataRequest.class │ │ ├── GetMetadataResponse.class │ │ ├── GetObjectIterator.class │ │ ├── GetObjectResponse$1.class │ │ ├── GetObjectResponse.class │ │ ├── MetaCollectorImpl.class │ │ ├── NetworkEventMonitor.class │ │ ├── SearchResultHandler.class │ │ ├── ChangePasswordRequest.class │ │ ├── MetaCollectorAdapter.class │ │ ├── SearchResultCollector.class │ │ ├── SearchResultProcessor.class │ │ ├── SingleObjectResponse.class │ │ ├── SinglePartInputStream.class │ │ ├── StreamingSearchResult.class │ │ ├── ChangePasswordResponse.class │ │ ├── InvalidArgumentException.class │ │ ├── InvalidReplyCodeHandler.class │ │ ├── NullNetworkEventMonitor.class │ │ ├── BrokerCodeRequredException.class │ │ ├── CommonsHttpClientResponse.class │ │ ├── GetObjectResponseIterator.class │ │ ├── InvalidHttpStatusException.class │ │ ├── InvalidReplyCodeException.class │ │ ├── InvalidReplyCodeHandler$1.class │ │ ├── VersionInsensitiveRequest.class │ │ ├── CommonsHttpClientResponse$1.class │ │ ├── GetObjectResponseIterator$1.class │ │ ├── CollectionOfCollectionsIterator.class │ │ ├── StreamingSearchResultProcessor.class │ │ └── NonMultipartGetObjectResponseIterator.class │ │ └── common │ │ ├── metadata │ │ ├── AttrType.class │ │ ├── CacheKey.class │ │ ├── MetaObject.class │ │ ├── Metadata.class │ │ ├── MetadataType.class │ │ ├── types │ │ │ ├── MClass.class │ │ │ ├── MTable.class │ │ │ ├── MEditMask.class │ │ │ ├── MLookup.class │ │ │ ├── MObject.class │ │ │ ├── MResource.class │ │ │ ├── MSystem.class │ │ │ ├── MUpdate.class │ │ │ ├── MForeignKey.class │ │ │ ├── MLookupType.class │ │ │ ├── MSearchHelp.class │ │ │ ├── MUpdateHelp.class │ │ │ ├── MUpdateType.class │ │ │ ├── MValidationExternal.class │ │ │ ├── MValidationLookup.class │ │ │ ├── MValidationExpression.class │ │ │ ├── MValidationLookupType.class │ │ │ └── MValidationExternalType.class │ │ ├── MetaCollector.class │ │ ├── MetadataBuilder.class │ │ ├── MetadataElement.class │ │ ├── attrib │ │ │ ├── AttrDate.class │ │ │ ├── AttrEnum.class │ │ │ ├── AttrText.class │ │ │ ├── AttrAlphanum.class │ │ │ ├── AttrBoolean.class │ │ │ ├── AttrNumeric.class │ │ │ ├── AttrPlaintext.class │ │ │ ├── AttrVersion.class │ │ │ ├── AttrGenericText.class │ │ │ ├── AttrAbstractText.class │ │ │ └── AttrNumericPositive.class │ │ ├── MetadataException.class │ │ ├── JDomCompactBuilder.class │ │ ├── JDomStandardBuilder.class │ │ └── MetaParseException.class │ │ └── util │ │ ├── CaseInsensitiveTreeMap.class │ │ └── CaseInsensitiveComparator.class ├── test-classes │ ├── getMetadataResponse_noRecords.xml │ ├── org │ │ └── realtors │ │ │ └── rets │ │ │ ├── client │ │ │ ├── getMetadataResponse_noRecords.xml │ │ │ ├── 2237858_0.jpg │ │ │ ├── AllTests.class │ │ │ ├── logout_no_equals.xml │ │ │ ├── IOFailReader.class │ │ │ ├── RetsTestCase.class │ │ │ ├── LoginRequestTest.class │ │ │ ├── RetsVersionTest.class │ │ │ ├── LoginResponseTest.class │ │ │ ├── LogoutResponseTest.class │ │ │ ├── logout_valid10.xml │ │ │ ├── objects-missing.multipart │ │ │ ├── SearchResultImplTest.class │ │ │ ├── GetMetadataRequestTest.class │ │ │ ├── GetMetadataResponseTest.class │ │ │ ├── SearchResultHandlerTest.class │ │ │ ├── SingleObjectResponseTest.class │ │ │ ├── GetObjectResponseIteratorTest.class │ │ │ ├── TestInvalidReplyCodeHandler.class │ │ │ ├── StreamingSearchResultProcessorTest.class │ │ │ ├── logout_valid15.xml │ │ │ ├── logout_lower_case.xml │ │ │ ├── getMetadataResponse_system.xml │ │ │ ├── getMetadataResponse_updateType.xml │ │ │ ├── login_valid10.xml │ │ │ ├── login_valid15.xml │ │ │ ├── login_lower_case.xml │ │ │ └── getMetadataResponse_lookupZero.xml │ │ │ └── common │ │ │ ├── metadata │ │ │ ├── MetaObjectTest.class │ │ │ ├── TestMetaObject.class │ │ │ ├── MetadataTestCase.class │ │ │ └── attrib │ │ │ │ ├── AttrDateTest.class │ │ │ │ ├── AttrEnumTest.class │ │ │ │ ├── AttrTextTest.class │ │ │ │ ├── AttrTypeTest.class │ │ │ │ ├── AttrBooleanTest.class │ │ │ │ ├── AttrNumericTest.class │ │ │ │ ├── AttrVersionTest.class │ │ │ │ ├── AttrAlphanumTest.class │ │ │ │ ├── AttrPlaintextTest.class │ │ │ │ ├── AttrAbstractTextTest.class │ │ │ │ ├── AttrGenericTextTest.class │ │ │ │ ├── AttrAbstractTextTest$1.class │ │ │ │ └── AttrAbstractTextTest$2.class │ │ │ └── util │ │ │ └── CaseInsensitiveTreeMapTest.class │ ├── 2237858_0.jpg │ ├── objects-missing.multipart │ ├── logout_no_equals.xml │ ├── logout_valid10.xml │ ├── logout_valid15.xml │ ├── logout_lower_case.xml │ ├── getMetadataResponse_system.xml │ ├── getMetadataResponse_updateType.xml │ ├── login_valid10.xml │ ├── login_valid15.xml │ ├── login_lower_case.xml │ └── getMetadataResponse_lookupZero.xml ├── rets-client-1.0-SNAPSHOT.jar ├── rets-client-dev-jar-with-dependencies.jar ├── rets-client-local-jar-with-dependencies.jar ├── surefire │ ├── surefirebooter3200783096487495894.jar │ ├── surefire1047207366595594537tmp │ ├── surefire1195538764577706349tmp │ ├── surefire1216010197734281349tmp │ ├── surefire1262081682660938857tmp │ ├── surefire1387154663838779498tmp │ ├── surefire1464749165967842791tmp │ ├── surefire1492999902892910503tmp │ ├── surefire1532712237711020660tmp │ ├── surefire1842890421029207792tmp │ ├── surefire1854944961487737565tmp │ ├── surefire1919857459026649828tmp │ ├── surefire215298406594038389tmp │ ├── surefire2318134279420498577tmp │ ├── surefire2438589483983803541tmp │ ├── surefire2483365746875659747tmp │ ├── surefire3192217381789807174tmp │ ├── surefire3431954969005794570tmp │ ├── surefire3693650195086611054tmp │ ├── surefire3744169073364774868tmp │ ├── surefire3784037666858916910tmp │ ├── surefire3852622586660969977tmp │ ├── surefire3858844971832557735tmp │ ├── surefire4248703738937261625tmp │ ├── surefire4468999745129215922tmp │ ├── surefire4791772307033909316tmp │ ├── surefire4829116721224646390tmp │ ├── surefire4843188555112760330tmp │ ├── surefire4851349393380772647tmp │ ├── surefire4865372513902939766tmp │ ├── surefire4922332544883190369tmp │ ├── surefire5019614204050753340tmp │ ├── surefire5107962151425800393tmp │ ├── surefire5135011183131367499tmp │ ├── surefire5203179808347750768tmp │ ├── surefire5301950855194686567tmp │ ├── surefire5469627346521673832tmp │ ├── surefire5500444483208561722tmp │ ├── surefire5685736346208368728tmp │ ├── surefire5913655645254117567tmp │ ├── surefire5952864067376549516tmp │ ├── surefire6085515411690994418tmp │ ├── surefire6350604962428600842tmp │ ├── surefire6353438738341360831tmp │ ├── surefire6449411295299751431tmp │ ├── surefire7006328491880906670tmp │ ├── surefire7664328925516118186tmp │ ├── surefire7856491079463817095tmp │ ├── surefire8037005780957884807tmp │ ├── surefire8154074090473864578tmp │ ├── surefire8227005987029297409tmp │ ├── surefire8285663795962981905tmp │ ├── surefire8424339682497965283tmp │ ├── surefire8467233221775712211tmp │ ├── surefire8514863316756582492tmp │ ├── surefire8654311504234995563tmp │ ├── surefire8695585172718290973tmp │ └── surefire8976090716014338703tmp ├── maven-archiver │ └── pom.properties ├── filtered-sources │ └── java │ │ └── org │ │ └── realtors │ │ └── rets │ │ ├── client │ │ ├── InvalidArgumentException.java │ │ ├── LogoutRequest.java │ │ ├── NullNetworkEventMonitor.java │ │ ├── GetObjectIterator.java │ │ ├── SearchResultProcessor.java │ │ ├── SearchResultCollector.java │ │ ├── VersionInsensitiveRequest.java │ │ ├── SearchResultSet.java │ │ ├── RetsException.java │ │ ├── InvalidHttpStatusException.java │ │ ├── SearchResult.java │ │ ├── LoginRequest.java │ │ ├── MetaCollectorImpl.java │ │ ├── InvalidReplyCodeHandler.java │ │ ├── RetsHttpResponse.java │ │ ├── ReplyCodeHandler.java │ │ ├── NetworkEventMonitor.java │ │ ├── SearchResultInfo.java │ │ ├── BrokerCodeRequredException.java │ │ ├── GenericHttpRequest.java │ │ ├── RetsHttpClient.java │ │ ├── ChangePasswordResponse.java │ │ ├── CollectionOfCollectionsIterator.java │ │ ├── InvalidReplyCodeException.java │ │ ├── RetsUtil.java │ │ ├── LogoutResponse.java │ │ └── SingleObjectResponse.java │ │ └── common │ │ ├── util │ │ ├── CaseInsensitiveComparator.java │ │ └── CaseInsensitiveTreeMap.java │ │ └── metadata │ │ ├── AttrType.java │ │ ├── MetaParseException.java │ │ ├── MetaCollector.java │ │ ├── MetadataType.java │ │ ├── MetadataException.java │ │ ├── attrib │ │ ├── AttrPlaintext.java │ │ ├── AttrNumeric.java │ │ ├── AttrText.java │ │ ├── AttrAlphanum.java │ │ ├── AttrEnum.java │ │ ├── AttrGenericText.java │ │ ├── AttrNumericPositive.java │ │ ├── AttrAbstractText.java │ │ └── AttrBoolean.java │ │ ├── MetadataElement.java │ │ └── types │ │ ├── MEditMask.java │ │ ├── MSearchHelp.java │ │ └── MUpdateHelp.java └── surefire-reports │ ├── org.realtors.rets.client.RetsVersionTest.txt │ ├── org.realtors.rets.client.LoginRequestTest.txt │ ├── org.realtors.rets.client.LoginResponseTest.txt │ ├── org.realtors.rets.client.LogoutResponseTest.txt │ ├── org.realtors.rets.client.SearchResultImplTest.txt │ ├── org.realtors.rets.client.GetMetadataRequestTest.txt │ ├── org.realtors.rets.client.GetMetadataResponseTest.txt │ ├── org.realtors.rets.client.SearchResultHandlerTest.txt │ ├── org.realtors.rets.client.SingleObjectResponseTest.txt │ ├── org.realtors.rets.common.metadata.MetaObjectTest.txt │ ├── org.realtors.rets.common.metadata.attrib.AttrTextTest.txt │ ├── org.realtors.rets.client.GetObjectResponseIteratorTest.txt │ ├── org.realtors.rets.common.metadata.attrib.AttrDateTest.txt │ ├── org.realtors.rets.common.metadata.attrib.AttrEnumTest.txt │ ├── org.realtors.rets.common.metadata.attrib.AttrAlphanumTest.txt │ ├── org.realtors.rets.common.metadata.attrib.AttrBooleanTest.txt │ ├── org.realtors.rets.common.metadata.attrib.AttrNumericTest.txt │ ├── org.realtors.rets.common.metadata.attrib.AttrPlaintextTest.txt │ ├── org.realtors.rets.common.metadata.attrib.AttrVersionTest.txt │ ├── org.realtors.rets.common.util.CaseInsensitiveTreeMapTest.txt │ ├── org.realtors.rets.client.StreamingSearchResultProcessorTest.txt │ ├── org.realtors.rets.common.metadata.attrib.AttrAbstractTextTest.txt │ └── org.realtors.rets.common.metadata.attrib.AttrGenericTextTest.txt ├── src ├── main │ ├── resources │ │ └── default.properties │ └── java │ │ └── org │ │ └── realtors │ │ └── rets │ │ ├── client │ │ ├── InvalidArgumentException.java │ │ ├── LogoutRequest.java │ │ ├── NullNetworkEventMonitor.java │ │ ├── GetObjectIterator.java │ │ ├── SearchResultProcessor.java │ │ ├── SearchResultCollector.java │ │ ├── VersionInsensitiveRequest.java │ │ ├── SearchResultSet.java │ │ ├── RetsException.java │ │ ├── InvalidHttpStatusException.java │ │ ├── SearchResult.java │ │ ├── LoginRequest.java │ │ ├── MetaCollectorImpl.java │ │ ├── InvalidReplyCodeHandler.java │ │ ├── RetsHttpResponse.java │ │ ├── ReplyCodeHandler.java │ │ ├── NetworkEventMonitor.java │ │ ├── SearchResultInfo.java │ │ ├── BrokerCodeRequredException.java │ │ ├── GenericHttpRequest.java │ │ ├── RetsHttpClient.java │ │ ├── ChangePasswordResponse.java │ │ ├── CollectionOfCollectionsIterator.java │ │ ├── InvalidReplyCodeException.java │ │ ├── RetsUtil.java │ │ ├── LogoutResponse.java │ │ └── SingleObjectResponse.java │ │ └── common │ │ ├── util │ │ ├── CaseInsensitiveComparator.java │ │ └── CaseInsensitiveTreeMap.java │ │ └── metadata │ │ ├── AttrType.java │ │ ├── MetaParseException.java │ │ ├── MetaCollector.java │ │ ├── MetadataType.java │ │ ├── MetadataException.java │ │ ├── attrib │ │ ├── AttrPlaintext.java │ │ ├── AttrNumeric.java │ │ ├── AttrText.java │ │ ├── AttrAlphanum.java │ │ ├── AttrEnum.java │ │ ├── AttrGenericText.java │ │ ├── AttrNumericPositive.java │ │ ├── AttrAbstractText.java │ │ └── AttrBoolean.java │ │ ├── MetadataElement.java │ │ └── types │ │ ├── MEditMask.java │ │ ├── MSearchHelp.java │ │ └── MUpdateHelp.java └── test │ ├── resources │ ├── getMetadataResponse_noRecords.xml │ ├── 2237858_0.jpg │ ├── objects-missing.multipart │ ├── logout_no_equals.xml │ ├── logout_valid10.xml │ ├── logout_valid15.xml │ ├── logout_lower_case.xml │ ├── getMetadataResponse_system.xml │ ├── getMetadataResponse_updateType.xml │ ├── login_valid10.xml │ ├── login_valid15.xml │ ├── login_lower_case.xml │ └── getMetadataResponse_lookupZero.xml │ └── java │ └── org │ └── realtors │ └── rets │ ├── client │ ├── getMetadataResponse_noRecords.xml │ ├── 2237858_0.jpg │ ├── logout_no_equals.xml │ ├── objects-missing.multipart │ ├── logout_valid10.xml │ ├── logout_valid15.xml │ ├── logout_lower_case.xml │ ├── getMetadataResponse_system.xml │ ├── getMetadataResponse_updateType.xml │ ├── TestInvalidReplyCodeHandler.java │ ├── login_valid10.xml │ ├── login_valid15.xml │ ├── login_lower_case.xml │ ├── IOFailReader.java │ ├── LoginRequestTest.java │ ├── SingleObjectResponseTest.java │ ├── AllTests.java │ ├── getMetadataResponse_lookupZero.xml │ └── RetsTestCase.java │ └── common │ └── metadata │ ├── MetadataTestCase.java │ ├── attrib │ ├── AttrEnumTest.java │ ├── AttrGenericTextTest.java │ ├── AttrTextTest.java │ ├── AttrNumericTest.java │ ├── AttrPlaintextTest.java │ ├── AttrTypeTest.java │ ├── AttrDateTest.java │ ├── AttrVersionTest.java │ ├── AttrAbstractTextTest.java │ └── AttrAlphanumTest.java │ └── TestMetaObject.java ├── .gitignore └── docs └── lib ├── junit-4.1-src.jar ├── jdom-1.1-sources.zip ├── commons-codec-1.2-src.jar ├── guava-11.0.1-sources.jar ├── commons-lang-2.4-sources.jar ├── httpcomponents-core-4.1-src.zip └── httpcomponents-client-4.1.1-src.zip /target/classes/default.properties: -------------------------------------------------------------------------------- 1 | # required for build 2 | -------------------------------------------------------------------------------- /src/main/resources/default.properties: -------------------------------------------------------------------------------- 1 | # required for build 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.class 2 | 3 | # Package Files # 4 | *.jar 5 | *.war 6 | *.ear 7 | -------------------------------------------------------------------------------- /src/test/resources/getMetadataResponse_noRecords.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /target/test-classes/getMetadataResponse_noRecords.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/lib/junit-4.1-src.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/docs/lib/junit-4.1-src.jar -------------------------------------------------------------------------------- /docs/lib/jdom-1.1-sources.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/docs/lib/jdom-1.1-sources.zip -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/client/getMetadataResponse_noRecords.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/test/resources/2237858_0.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/src/test/resources/2237858_0.jpg -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/getMetadataResponse_noRecords.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/lib/commons-codec-1.2-src.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/docs/lib/commons-codec-1.2-src.jar -------------------------------------------------------------------------------- /docs/lib/guava-11.0.1-sources.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/docs/lib/guava-11.0.1-sources.jar -------------------------------------------------------------------------------- /target/rets-client-1.0-SNAPSHOT.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/rets-client-1.0-SNAPSHOT.jar -------------------------------------------------------------------------------- /target/test-classes/2237858_0.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/2237858_0.jpg -------------------------------------------------------------------------------- /docs/lib/commons-lang-2.4-sources.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/docs/lib/commons-lang-2.4-sources.jar -------------------------------------------------------------------------------- /docs/lib/httpcomponents-core-4.1-src.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/docs/lib/httpcomponents-core-4.1-src.zip -------------------------------------------------------------------------------- /docs/lib/httpcomponents-client-4.1.1-src.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/docs/lib/httpcomponents-client-4.1.1-src.zip -------------------------------------------------------------------------------- /src/test/resources/objects-missing.multipart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/src/test/resources/objects-missing.multipart -------------------------------------------------------------------------------- /target/test-classes/objects-missing.multipart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/objects-missing.multipart -------------------------------------------------------------------------------- /src/test/resources/logout_no_equals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Logged Out 4 | 5 | -------------------------------------------------------------------------------- /target/test-classes/logout_no_equals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Logged Out 4 | 5 | -------------------------------------------------------------------------------- /target/rets-client-dev-jar-with-dependencies.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/rets-client-dev-jar-with-dependencies.jar -------------------------------------------------------------------------------- /target/rets-client-local-jar-with-dependencies.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/rets-client-local-jar-with-dependencies.jar -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/client/2237858_0.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/src/test/java/org/realtors/rets/client/2237858_0.jpg -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/ReplyCode.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/ReplyCode.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/RetsUtil.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/RetsUtil.class -------------------------------------------------------------------------------- /target/surefire/surefirebooter3200783096487495894.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/surefire/surefirebooter3200783096487495894.jar -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/client/logout_no_equals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Logged Out 4 | 5 | -------------------------------------------------------------------------------- /src/test/resources/logout_valid10.xml: -------------------------------------------------------------------------------- 1 | 2 | ConnectTime = 1000 3 | Billing = $20.00 4 | SignOffMessage = Good Bye 5 | 6 | -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/RetsSession.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/RetsSession.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/RetsVersion.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/RetsVersion.class -------------------------------------------------------------------------------- /target/maven-archiver/pom.properties: -------------------------------------------------------------------------------- 1 | #Generated by Maven 2 | #Wed Dec 18 23:23:49 PST 2013 3 | version=1.0-SNAPSHOT 4 | groupId=java-rets-client 5 | artifactId=java-rets-client 6 | -------------------------------------------------------------------------------- /target/test-classes/logout_valid10.xml: -------------------------------------------------------------------------------- 1 | 2 | ConnectTime = 1000 3 | Billing = $20.00 4 | SignOffMessage = Good Bye 5 | 6 | -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/CapabilityUrls.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/CapabilityUrls.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/LoginRequest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/LoginRequest.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/LoginResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/LoginResponse.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/LogoutRequest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/LogoutRequest.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/LogoutResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/LogoutResponse.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/RetsException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/RetsException.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/RetsHttpClient.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/RetsHttpClient.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/RetsSession$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/RetsSession$1.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/RetsTransport.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/RetsTransport.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/SearchRequest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/SearchRequest.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/SearchResult.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/SearchResult.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/2237858_0.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/client/2237858_0.jpg -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/AllTests.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/client/AllTests.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/logout_no_equals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Logged Out 4 | 5 | -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/CompactRowPolicy.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/CompactRowPolicy.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/GetObjectRequest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/GetObjectRequest.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/KeyValueResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/KeyValueResponse.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/ReplyCodeHandler.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/ReplyCodeHandler.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/RetsHttpRequest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/RetsHttpRequest.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/RetsHttpResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/RetsHttpResponse.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/RetsTransport$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/RetsTransport$1.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/SearchResultImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/SearchResultImpl.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/SearchResultInfo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/SearchResultInfo.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/SearchResultSet.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/SearchResultSet.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/StreamingThread.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/StreamingThread.class -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/client/objects-missing.multipart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/src/test/java/org/realtors/rets/client/objects-missing.multipart -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/CommonsHttpClient.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/CommonsHttpClient.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/CompactRowPolicy$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/CompactRowPolicy$1.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/CompactRowPolicy$2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/CompactRowPolicy$2.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/CompactRowPolicy$3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/CompactRowPolicy$3.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/CompactRowPolicy$4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/CompactRowPolicy$4.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/GenericHttpRequest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/GenericHttpRequest.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/GetMetadataRequest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/GetMetadataRequest.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/GetMetadataResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/GetMetadataResponse.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/GetObjectIterator.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/GetObjectIterator.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/GetObjectResponse$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/GetObjectResponse$1.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/GetObjectResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/GetObjectResponse.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/MetaCollectorImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/MetaCollectorImpl.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/NetworkEventMonitor.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/NetworkEventMonitor.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/SearchResultHandler.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/SearchResultHandler.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/AttrType.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/AttrType.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/CacheKey.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/CacheKey.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/MetaObject.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/MetaObject.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/Metadata.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/Metadata.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/IOFailReader.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/client/IOFailReader.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/RetsTestCase.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/client/RetsTestCase.class -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/client/logout_valid10.xml: -------------------------------------------------------------------------------- 1 | 2 | ConnectTime = 1000 3 | Billing = $20.00 4 | SignOffMessage = Good Bye 5 | 6 | -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/ChangePasswordRequest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/ChangePasswordRequest.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/MetaCollectorAdapter.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/MetaCollectorAdapter.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/SearchResultCollector.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/SearchResultCollector.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/SearchResultProcessor.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/SearchResultProcessor.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/SingleObjectResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/SingleObjectResponse.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/SinglePartInputStream.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/SinglePartInputStream.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/StreamingSearchResult.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/StreamingSearchResult.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/MetadataType.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/MetadataType.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/types/MClass.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/types/MClass.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/types/MTable.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/types/MTable.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/LoginRequestTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/client/LoginRequestTest.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/RetsVersionTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/client/RetsVersionTest.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/ChangePasswordResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/ChangePasswordResponse.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/InvalidArgumentException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/InvalidArgumentException.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/InvalidReplyCodeHandler.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/InvalidReplyCodeHandler.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/NullNetworkEventMonitor.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/NullNetworkEventMonitor.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/MetaCollector.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/MetaCollector.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/MetadataBuilder.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/MetadataBuilder.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/MetadataElement.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/MetadataElement.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/attrib/AttrDate.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/attrib/AttrDate.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/attrib/AttrEnum.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/attrib/AttrEnum.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/attrib/AttrText.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/attrib/AttrText.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/types/MEditMask.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/types/MEditMask.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/types/MLookup.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/types/MLookup.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/types/MObject.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/types/MObject.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/types/MResource.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/types/MResource.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/types/MSystem.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/types/MSystem.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/types/MUpdate.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/types/MUpdate.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/LoginResponseTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/client/LoginResponseTest.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/LogoutResponseTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/client/LogoutResponseTest.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/logout_valid10.xml: -------------------------------------------------------------------------------- 1 | 2 | ConnectTime = 1000 3 | Billing = $20.00 4 | SignOffMessage = Good Bye 5 | 6 | -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/objects-missing.multipart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/client/objects-missing.multipart -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/BrokerCodeRequredException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/BrokerCodeRequredException.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/CommonsHttpClientResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/CommonsHttpClientResponse.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/GetObjectResponseIterator.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/GetObjectResponseIterator.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/InvalidHttpStatusException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/InvalidHttpStatusException.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/InvalidReplyCodeException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/InvalidReplyCodeException.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/InvalidReplyCodeHandler$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/InvalidReplyCodeHandler$1.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/VersionInsensitiveRequest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/VersionInsensitiveRequest.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/MetadataException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/MetadataException.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/types/MForeignKey.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/types/MForeignKey.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/types/MLookupType.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/types/MLookupType.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/types/MSearchHelp.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/types/MSearchHelp.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/types/MUpdateHelp.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/types/MUpdateHelp.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/types/MUpdateType.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/types/MUpdateType.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/SearchResultImplTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/client/SearchResultImplTest.class -------------------------------------------------------------------------------- /src/test/resources/logout_valid15.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | ConnectTime = 1000 4 | Billing = $20.00 5 | SignOffMessage = Good Bye 6 | 7 | -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/CommonsHttpClientResponse$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/CommonsHttpClientResponse$1.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/GetObjectResponseIterator$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/GetObjectResponseIterator$1.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/JDomCompactBuilder.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/JDomCompactBuilder.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/JDomStandardBuilder.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/JDomStandardBuilder.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/MetaParseException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/MetaParseException.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/attrib/AttrAlphanum.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/attrib/AttrAlphanum.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/attrib/AttrBoolean.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/attrib/AttrBoolean.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/attrib/AttrNumeric.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/attrib/AttrNumeric.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/attrib/AttrPlaintext.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/attrib/AttrPlaintext.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/attrib/AttrVersion.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/attrib/AttrVersion.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/util/CaseInsensitiveTreeMap.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/util/CaseInsensitiveTreeMap.class -------------------------------------------------------------------------------- /target/test-classes/logout_valid15.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | ConnectTime = 1000 4 | Billing = $20.00 5 | SignOffMessage = Good Bye 6 | 7 | -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/GetMetadataRequestTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/client/GetMetadataRequestTest.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/GetMetadataResponseTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/client/GetMetadataResponseTest.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/SearchResultHandlerTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/client/SearchResultHandlerTest.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/SingleObjectResponseTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/client/SingleObjectResponseTest.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/common/metadata/MetaObjectTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/common/metadata/MetaObjectTest.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/common/metadata/TestMetaObject.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/common/metadata/TestMetaObject.class -------------------------------------------------------------------------------- /src/test/resources/logout_lower_case.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | connecttime = 1000 4 | billing = $20.00 5 | signoffmessage = Good Bye 6 | 7 | -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/CollectionOfCollectionsIterator.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/CollectionOfCollectionsIterator.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/StreamingSearchResultProcessor.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/StreamingSearchResultProcessor.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/attrib/AttrGenericText.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/attrib/AttrGenericText.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/util/CaseInsensitiveComparator.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/util/CaseInsensitiveComparator.class -------------------------------------------------------------------------------- /target/test-classes/logout_lower_case.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | connecttime = 1000 4 | billing = $20.00 5 | signoffmessage = Good Bye 6 | 7 | -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/common/metadata/MetadataTestCase.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/common/metadata/MetadataTestCase.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/attrib/AttrAbstractText.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/attrib/AttrAbstractText.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/types/MValidationExternal.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/types/MValidationExternal.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/types/MValidationLookup.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/types/MValidationLookup.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/GetObjectResponseIteratorTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/client/GetObjectResponseIteratorTest.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/TestInvalidReplyCodeHandler.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/client/TestInvalidReplyCodeHandler.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/common/metadata/attrib/AttrDateTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/common/metadata/attrib/AttrDateTest.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/common/metadata/attrib/AttrEnumTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/common/metadata/attrib/AttrEnumTest.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/common/metadata/attrib/AttrTextTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/common/metadata/attrib/AttrTextTest.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/common/metadata/attrib/AttrTypeTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/common/metadata/attrib/AttrTypeTest.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/attrib/AttrNumericPositive.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/attrib/AttrNumericPositive.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/types/MValidationExpression.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/types/MValidationExpression.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/types/MValidationLookupType.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/types/MValidationLookupType.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/common/metadata/attrib/AttrBooleanTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/common/metadata/attrib/AttrBooleanTest.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/common/metadata/attrib/AttrNumericTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/common/metadata/attrib/AttrNumericTest.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/common/metadata/attrib/AttrVersionTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/common/metadata/attrib/AttrVersionTest.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/common/util/CaseInsensitiveTreeMapTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/common/util/CaseInsensitiveTreeMapTest.class -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/client/logout_valid15.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | ConnectTime = 1000 4 | Billing = $20.00 5 | SignOffMessage = Good Bye 6 | 7 | -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/client/NonMultipartGetObjectResponseIterator.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/client/NonMultipartGetObjectResponseIterator.class -------------------------------------------------------------------------------- /target/classes/org/realtors/rets/common/metadata/types/MValidationExternalType.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/classes/org/realtors/rets/common/metadata/types/MValidationExternalType.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/StreamingSearchResultProcessorTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/client/StreamingSearchResultProcessorTest.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/common/metadata/attrib/AttrAlphanumTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/common/metadata/attrib/AttrAlphanumTest.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/common/metadata/attrib/AttrPlaintextTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/common/metadata/attrib/AttrPlaintextTest.class -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/client/logout_lower_case.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | connecttime = 1000 4 | billing = $20.00 5 | signoffmessage = Good Bye 6 | 7 | -------------------------------------------------------------------------------- /target/surefire/surefire1047207366595594537tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Thu Mar 14 17:50:06 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire1195538764577706349tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Thu Apr 25 14:14:13 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire1216010197734281349tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Sun Mar 10 22:25:35 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire1262081682660938857tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Tue Mar 26 23:19:20 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire1387154663838779498tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Fri Mar 15 00:22:30 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire1464749165967842791tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Fri Mar 15 15:28:48 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire1492999902892910503tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Tue Mar 19 15:24:29 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire1532712237711020660tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Mon Mar 04 21:20:31 PST 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire1842890421029207792tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Wed Mar 13 17:05:09 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire1854944961487737565tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Mon Mar 18 17:39:17 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire1919857459026649828tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Thu Mar 14 18:27:34 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire215298406594038389tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Fri Mar 15 01:04:14 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire2318134279420498577tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Fri Mar 15 00:53:20 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire2438589483983803541tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Thu Mar 14 18:07:20 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire2483365746875659747tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Fri Mar 15 11:01:14 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire3192217381789807174tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Sun Mar 10 22:13:48 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire3431954969005794570tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Wed Mar 27 00:02:12 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire3693650195086611054tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Mon Mar 11 17:30:52 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire3744169073364774868tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Wed Mar 13 17:03:55 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire3784037666858916910tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Tue Mar 19 14:19:58 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire3852622586660969977tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Thu Mar 28 15:39:10 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire3858844971832557735tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Wed Mar 13 15:49:54 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire4248703738937261625tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Wed Mar 13 14:36:51 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire4468999745129215922tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Tue Mar 19 14:35:47 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire4791772307033909316tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Thu Apr 18 16:37:21 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire4829116721224646390tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Thu Apr 18 16:19:09 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire4843188555112760330tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Fri Mar 15 00:16:57 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire4851349393380772647tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Tue Mar 19 15:04:48 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire4865372513902939766tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Mon Mar 18 15:33:02 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire4922332544883190369tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Mon Mar 18 18:40:52 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire5019614204050753340tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Wed Mar 13 16:05:43 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire5107962151425800393tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Sun Mar 10 23:25:53 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire5135011183131367499tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Thu Mar 14 18:11:36 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire5203179808347750768tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Thu Mar 14 18:02:28 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire5301950855194686567tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Sun Mar 10 22:09:24 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire5469627346521673832tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Thu Mar 14 18:18:08 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire5500444483208561722tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Thu Mar 14 17:57:30 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire5685736346208368728tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Tue Mar 12 16:19:27 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire5913655645254117567tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Thu Mar 14 16:31:06 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire5952864067376549516tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Thu May 16 15:12:04 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire6085515411690994418tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Wed Jul 24 14:35:01 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire6350604962428600842tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Fri Mar 15 11:16:27 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire6353438738341360831tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Thu Apr 18 15:17:03 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire6449411295299751431tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Tue Mar 19 14:46:31 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire7006328491880906670tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Thu Apr 18 16:31:01 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire7664328925516118186tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Thu Mar 14 18:31:21 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire7856491079463817095tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Thu Mar 14 10:20:48 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire8037005780957884807tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Tue Mar 26 23:57:57 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire8154074090473864578tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Tue Mar 19 15:01:02 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire8227005987029297409tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Tue Mar 26 23:59:04 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire8285663795962981905tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Sun Mar 10 22:50:07 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire8424339682497965283tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Thu Mar 14 16:36:28 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire8467233221775712211tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Tue Mar 12 15:54:15 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire8514863316756582492tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Mon Mar 11 16:42:07 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire8654311504234995563tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Tue Mar 19 14:39:19 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire8695585172718290973tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Tue Mar 26 23:41:19 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/surefire/surefire8976090716014338703tmp: -------------------------------------------------------------------------------- 1 | #surefire 2 | #Thu Mar 14 17:05:40 PDT 2013 3 | user.dir=/Users/vangulo/git/dozer/rets_client 4 | localRepository=/Users/vangulo/.m2/repository 5 | basedir=/Users/vangulo/git/dozer/rets_client 6 | -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/logout_valid15.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | ConnectTime = 1000 4 | Billing = $20.00 5 | SignOffMessage = Good Bye 6 | 7 | -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/common/metadata/attrib/AttrAbstractTextTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/common/metadata/attrib/AttrAbstractTextTest.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/common/metadata/attrib/AttrGenericTextTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/common/metadata/attrib/AttrGenericTextTest.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/logout_lower_case.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | connecttime = 1000 4 | billing = $20.00 5 | signoffmessage = Good Bye 6 | 7 | -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/common/metadata/attrib/AttrAbstractTextTest$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/common/metadata/attrib/AttrAbstractTextTest$1.class -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/common/metadata/attrib/AttrAbstractTextTest$2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trulia/trulia-java-rets-client/master/target/test-classes/org/realtors/rets/common/metadata/attrib/AttrAbstractTextTest$2.class -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/InvalidArgumentException.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | public class InvalidArgumentException extends RetsException { 4 | public InvalidArgumentException(String message) { 5 | super(message); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/InvalidArgumentException.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | public class InvalidArgumentException extends RetsException { 4 | public InvalidArgumentException(String message) { 5 | super(message); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/LogoutRequest.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | public class LogoutRequest extends VersionInsensitiveRequest { 4 | 5 | @Override 6 | public void setUrl(CapabilityUrls urls) { 7 | setUrl(urls.getLogoutUrl()); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/LogoutRequest.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | public class LogoutRequest extends VersionInsensitiveRequest { 4 | 5 | @Override 6 | public void setUrl(CapabilityUrls urls) { 7 | setUrl(urls.getLogoutUrl()); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/NullNetworkEventMonitor.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | public class NullNetworkEventMonitor implements NetworkEventMonitor { 4 | 5 | public Object eventStart(String message) { 6 | return null; 7 | } 8 | 9 | 10 | public void eventFinish(Object o) { 11 | //noop 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.client.RetsVersionTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.client.RetsVersionTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec 5 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/NullNetworkEventMonitor.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | public class NullNetworkEventMonitor implements NetworkEventMonitor { 4 | 5 | public Object eventStart(String message) { 6 | return null; 7 | } 8 | 9 | 10 | public void eventFinish(Object o) { 11 | //noop 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.client.LoginRequestTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.client.LoginRequestTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.011 sec 5 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.client.LoginResponseTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.client.LoginResponseTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.106 sec 5 | -------------------------------------------------------------------------------- /src/test/resources/getMetadataResponse_system.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | The reference implementation of a RETS Server 5 | 6 | 7 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.client.LogoutResponseTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.client.LogoutResponseTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec 5 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.client.SearchResultImplTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.client.SearchResultImplTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec 5 | -------------------------------------------------------------------------------- /target/test-classes/getMetadataResponse_system.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | The reference implementation of a RETS Server 5 | 6 | 7 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.client.GetMetadataRequestTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.client.GetMetadataRequestTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.036 sec 5 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.client.GetMetadataResponseTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.client.GetMetadataResponseTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec 5 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/GetObjectIterator.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import java.io.Closeable; 4 | import java.util.Iterator; 5 | /** 6 | * Iterator for SingleResoponseObjects 7 | * 8 | * @param 9 | */ 10 | public interface GetObjectIterator extends Closeable, Iterator{ 11 | // noop 12 | } 13 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.client.SearchResultHandlerTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.client.SearchResultHandlerTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 9, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.026 sec 5 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.client.SingleObjectResponseTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.client.SingleObjectResponseTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec 5 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.common.metadata.MetaObjectTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.common.metadata.MetaObjectTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.024 sec 5 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.common.metadata.attrib.AttrTextTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.common.metadata.attrib.AttrTextTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec 5 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/client/getMetadataResponse_system.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | The reference implementation of a RETS Server 5 | 6 | 7 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.client.GetObjectResponseIteratorTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.client.GetObjectResponseIteratorTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.033 sec 5 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.common.metadata.attrib.AttrDateTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.common.metadata.attrib.AttrDateTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec 5 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.common.metadata.attrib.AttrEnumTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.common.metadata.attrib.AttrEnumTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.006 sec 5 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/GetObjectIterator.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import java.io.Closeable; 4 | import java.util.Iterator; 5 | /** 6 | * Iterator for SingleResoponseObjects 7 | * 8 | * @param 9 | */ 10 | public interface GetObjectIterator extends Closeable, Iterator{ 11 | // noop 12 | } 13 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.common.metadata.attrib.AttrAlphanumTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.common.metadata.attrib.AttrAlphanumTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.003 sec 5 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.common.metadata.attrib.AttrBooleanTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.common.metadata.attrib.AttrBooleanTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.01 sec 5 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.common.metadata.attrib.AttrNumericTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.common.metadata.attrib.AttrNumericTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.004 sec 5 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.common.metadata.attrib.AttrPlaintextTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.common.metadata.attrib.AttrPlaintextTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 sec 5 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.common.metadata.attrib.AttrVersionTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.common.metadata.attrib.AttrVersionTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.004 sec 5 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.common.util.CaseInsensitiveTreeMapTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.common.util.CaseInsensitiveTreeMapTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 sec 5 | -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/getMetadataResponse_system.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | The reference implementation of a RETS Server 5 | 6 | 7 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.client.StreamingSearchResultProcessorTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.client.StreamingSearchResultProcessorTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 12, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.051 sec 5 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.common.metadata.attrib.AttrAbstractTextTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.common.metadata.attrib.AttrAbstractTextTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.137 sec 5 | -------------------------------------------------------------------------------- /target/surefire-reports/org.realtors.rets.common.metadata.attrib.AttrGenericTextTest.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: org.realtors.rets.common.metadata.attrib.AttrGenericTextTest 3 | ------------------------------------------------------------------------------- 4 | Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.004 sec 5 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/util/CaseInsensitiveComparator.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.util; 2 | 3 | import java.io.Serializable; 4 | import java.util.Comparator; 5 | 6 | public class CaseInsensitiveComparator implements Comparator, Serializable { 7 | public int compare(Object o1, Object o2) { 8 | String s1 = (String) o1; 9 | String s2 = (String) o2; 10 | return s1.compareToIgnoreCase(s2); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/SearchResultProcessor.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import java.io.InputStream; 4 | import java.io.Reader; 5 | 6 | /** 7 | * Interface for parsing results from a RETS query/search 8 | */ 9 | public interface SearchResultProcessor { 10 | public SearchResultSet parse(InputStream in) throws RetsException; 11 | 12 | public SearchResultSet parse(Reader in) throws RetsException; 13 | } 14 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/util/CaseInsensitiveTreeMap.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.util; 2 | 3 | import java.util.Map; 4 | import java.util.TreeMap; 5 | 6 | public class CaseInsensitiveTreeMap extends TreeMap { 7 | public CaseInsensitiveTreeMap(Map map) { 8 | this(); 9 | this.putAll(map); 10 | } 11 | 12 | public CaseInsensitiveTreeMap() { 13 | super(new CaseInsensitiveComparator()); 14 | } 15 | 16 | } 17 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/util/CaseInsensitiveComparator.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.util; 2 | 3 | import java.io.Serializable; 4 | import java.util.Comparator; 5 | 6 | public class CaseInsensitiveComparator implements Comparator, Serializable { 7 | public int compare(Object o1, Object o2) { 8 | String s1 = (String) o1; 9 | String s2 = (String) o2; 10 | return s1.compareToIgnoreCase(s2); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/SearchResultProcessor.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import java.io.InputStream; 4 | import java.io.Reader; 5 | 6 | /** 7 | * Interface for parsing results from a RETS query/search 8 | */ 9 | public interface SearchResultProcessor { 10 | public SearchResultSet parse(InputStream in) throws RetsException; 11 | 12 | public SearchResultSet parse(Reader in) throws RetsException; 13 | } 14 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/util/CaseInsensitiveTreeMap.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.util; 2 | 3 | import java.util.Map; 4 | import java.util.TreeMap; 5 | 6 | public class CaseInsensitiveTreeMap extends TreeMap { 7 | public CaseInsensitiveTreeMap(Map map) { 8 | this(); 9 | this.putAll(map); 10 | } 11 | 12 | public CaseInsensitiveTreeMap() { 13 | super(new CaseInsensitiveComparator()); 14 | } 15 | 16 | } 17 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/SearchResultCollector.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | /** 4 | * Interface for a setting properties of a result from a query (used by SearchResultHandler) 5 | */ 6 | 7 | public interface SearchResultCollector { 8 | 9 | public void setCount(int count); 10 | 11 | public void setColumns(String[] columns); 12 | 13 | public boolean addRow(String[] row); 14 | 15 | public void setMaxrows(); 16 | 17 | public void setComplete(); 18 | } 19 | -------------------------------------------------------------------------------- /src/test/resources/getMetadataResponse_updateType.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | SystemName Sequence Attributes Default ValidationExpressionID UpdateHelpID ValidationLookupName ValidationExternalName 4 | AGENT_ID 1 1 0 5 | OFFICE_ID 2 2 0 6 | 7 | 8 | -------------------------------------------------------------------------------- /target/test-classes/getMetadataResponse_updateType.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | SystemName Sequence Attributes Default ValidationExpressionID UpdateHelpID ValidationLookupName ValidationExternalName 4 | AGENT_ID 1 1 0 5 | OFFICE_ID 2 2 0 6 | 7 | 8 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/SearchResultCollector.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | /** 4 | * Interface for a setting properties of a result from a query (used by SearchResultHandler) 5 | */ 6 | 7 | public interface SearchResultCollector { 8 | 9 | public void setCount(int count); 10 | 11 | public void setColumns(String[] columns); 12 | 13 | public boolean addRow(String[] row); 14 | 15 | public void setMaxrows(); 16 | 17 | public void setComplete(); 18 | } 19 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/VersionInsensitiveRequest.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | public abstract class VersionInsensitiveRequest extends RetsHttpRequest { 4 | /** 5 | * Abstract class of subclasses where the Version of RETS is not needed (Password Request, Login Request, etc.) 6 | */ 7 | public VersionInsensitiveRequest() { 8 | super(); 9 | } 10 | 11 | @Override 12 | public void setVersion(RetsVersion version) { 13 | //noop - I don't care about version 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/client/getMetadataResponse_updateType.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | SystemName Sequence Attributes Default ValidationExpressionID UpdateHelpID ValidationLookupName ValidationExternalName 4 | AGENT_ID 1 1 0 5 | OFFICE_ID 2 2 0 6 | 7 | 8 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/common/metadata/MetadataTestCase.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata; 9 | 10 | import junit.framework.TestCase; 11 | 12 | public abstract class MetadataTestCase extends TestCase { 13 | // nothing yet but we always end up wanting something 14 | } 15 | -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/getMetadataResponse_updateType.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | SystemName Sequence Attributes Default ValidationExpressionID UpdateHelpID ValidationLookupName ValidationExternalName 4 | AGENT_ID 1 1 0 5 | OFFICE_ID 2 2 0 6 | 7 | 8 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/VersionInsensitiveRequest.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | public abstract class VersionInsensitiveRequest extends RetsHttpRequest { 4 | /** 5 | * Abstract class of subclasses where the Version of RETS is not needed (Password Request, Login Request, etc.) 6 | */ 7 | public VersionInsensitiveRequest() { 8 | super(); 9 | } 10 | 11 | @Override 12 | public void setVersion(RetsVersion version) { 13 | //noop - I don't care about version 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/SearchResultSet.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | /** 4 | * Iterator style interface for processing the results 5 | * of a RETS search a single time. Information about the 6 | * search can be retrieved once processing is complete by 7 | * calling the getInfo() method. 8 | * 9 | * @author jrayburn 10 | */ 11 | public interface SearchResultSet extends SearchResultInfo { 12 | public String[] next() throws RetsException; 13 | 14 | public boolean hasNext() throws RetsException; 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/RetsException.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import org.apache.commons.lang.exception.NestableException; 4 | 5 | public class RetsException extends NestableException { 6 | public RetsException() { 7 | super(); 8 | } 9 | 10 | public RetsException(String message) { 11 | super(message); 12 | } 13 | 14 | public RetsException(String message, Throwable cause) { 15 | super(message, cause); 16 | } 17 | 18 | public RetsException(Throwable cause) { 19 | super(cause); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/SearchResultSet.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | /** 4 | * Iterator style interface for processing the results 5 | * of a RETS search a single time. Information about the 6 | * search can be retrieved once processing is complete by 7 | * calling the getInfo() method. 8 | * 9 | * @author jrayburn 10 | */ 11 | public interface SearchResultSet extends SearchResultInfo { 12 | public String[] next() throws RetsException; 13 | 14 | public boolean hasNext() throws RetsException; 15 | } 16 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/RetsException.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import org.apache.commons.lang.exception.NestableException; 4 | 5 | public class RetsException extends NestableException { 6 | public RetsException() { 7 | super(); 8 | } 9 | 10 | public RetsException(String message) { 11 | super(message); 12 | } 13 | 14 | public RetsException(String message, Throwable cause) { 15 | super(message, cause); 16 | } 17 | 18 | public RetsException(Throwable cause) { 19 | super(cause); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/InvalidHttpStatusException.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import org.apache.http.StatusLine; 4 | 5 | public class InvalidHttpStatusException extends RetsException { 6 | public InvalidHttpStatusException(StatusLine status) { 7 | super("Status code (" + status.getStatusCode() + ") " + status.getReasonPhrase()); 8 | } 9 | public InvalidHttpStatusException(StatusLine status, String message) { 10 | super("Status code (" + status.getStatusCode() + ") " + status.getReasonPhrase() +" '"+message+"'"); 11 | } 12 | } -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/InvalidHttpStatusException.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import org.apache.http.StatusLine; 4 | 5 | public class InvalidHttpStatusException extends RetsException { 6 | public InvalidHttpStatusException(StatusLine status) { 7 | super("Status code (" + status.getStatusCode() + ") " + status.getReasonPhrase()); 8 | } 9 | public InvalidHttpStatusException(StatusLine status, String message) { 10 | super("Status code (" + status.getStatusCode() + ") " + status.getReasonPhrase() +" '"+message+"'"); 11 | } 12 | } -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/metadata/AttrType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata; 9 | 10 | import java.io.Serializable; 11 | 12 | public interface AttrType extends Serializable { 13 | public T parse(String value, boolean strict) throws MetaParseException; 14 | public Class getType(); 15 | public String render(T value); 16 | } 17 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/metadata/AttrType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata; 9 | 10 | import java.io.Serializable; 11 | 12 | public interface AttrType extends Serializable { 13 | public T parse(String value, boolean strict) throws MetaParseException; 14 | public Class getType(); 15 | public String render(T value); 16 | } 17 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/client/TestInvalidReplyCodeHandler.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | final class TestInvalidReplyCodeHandler implements InvalidReplyCodeHandler { 4 | private int replyCode; 5 | 6 | public void invalidRetsReplyCode(int code) throws InvalidReplyCodeException { 7 | throw new InvalidReplyCodeException(code); 8 | } 9 | 10 | public void invalidRetsStatusReplyCode(int code) throws InvalidReplyCodeException { 11 | this.replyCode = code; 12 | } 13 | 14 | public int getReplyCode() { 15 | return this.replyCode; 16 | } 17 | } -------------------------------------------------------------------------------- /src/test/resources/login_valid10.xml: -------------------------------------------------------------------------------- 1 | 2 | Broker = B123, BO987 3 | MemberName = Joe T. Schmoe 4 | MetadataVersion = 1.00.000 5 | MinMetadataVersion = 1.00.000 6 | User = A123,5678,1,A123 7 | Login = http://rets.test:6103/login 8 | Logout = http://rets.test:6103/logout 9 | Search = http://rets.test:6103/search 10 | GetMetadata = http://rets.test:6103/getMetadata 11 | ChangePassword = http://rets.test:6103/changePassword 12 | GetObject = http://rets.test:6103/getObjectEx 13 | Action = http://rets.test:6103/get 14 | Balance = 44.21 15 | TimeoutSeconds = 60 16 | 17 | -------------------------------------------------------------------------------- /target/test-classes/login_valid10.xml: -------------------------------------------------------------------------------- 1 | 2 | Broker = B123, BO987 3 | MemberName = Joe T. Schmoe 4 | MetadataVersion = 1.00.000 5 | MinMetadataVersion = 1.00.000 6 | User = A123,5678,1,A123 7 | Login = http://rets.test:6103/login 8 | Logout = http://rets.test:6103/logout 9 | Search = http://rets.test:6103/search 10 | GetMetadata = http://rets.test:6103/getMetadata 11 | ChangePassword = http://rets.test:6103/changePassword 12 | GetObject = http://rets.test:6103/getObjectEx 13 | Action = http://rets.test:6103/get 14 | Balance = 44.21 15 | TimeoutSeconds = 60 16 | 17 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/SearchResult.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import java.util.NoSuchElementException; 4 | import java.util.Iterator; 5 | 6 | /** 7 | * Interface for retrieving additional information from of a result from a RETS query/search 8 | * 9 | */ 10 | 11 | public interface SearchResult extends SearchResultInfo { 12 | public String[] getRow(int idx) throws NoSuchElementException; 13 | 14 | public Iterator iterator(); 15 | 16 | public String[] getColumns(); 17 | 18 | public boolean isMaxrows(); 19 | 20 | public int getCount(); 21 | 22 | public boolean isComplete(); 23 | } 24 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/client/login_valid10.xml: -------------------------------------------------------------------------------- 1 | 2 | Broker = B123, BO987 3 | MemberName = Joe T. Schmoe 4 | MetadataVersion = 1.00.000 5 | MinMetadataVersion = 1.00.000 6 | User = A123,5678,1,A123 7 | Login = http://rets.test:6103/login 8 | Logout = http://rets.test:6103/logout 9 | Search = http://rets.test:6103/search 10 | GetMetadata = http://rets.test:6103/getMetadata 11 | ChangePassword = http://rets.test:6103/changePassword 12 | GetObject = http://rets.test:6103/getObjectEx 13 | Action = http://rets.test:6103/get 14 | Balance = 44.21 15 | TimeoutSeconds = 60 16 | 17 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/SearchResult.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import java.util.NoSuchElementException; 4 | import java.util.Iterator; 5 | 6 | /** 7 | * Interface for retrieving additional information from of a result from a RETS query/search 8 | * 9 | */ 10 | 11 | public interface SearchResult extends SearchResultInfo { 12 | public String[] getRow(int idx) throws NoSuchElementException; 13 | 14 | public Iterator iterator(); 15 | 16 | public String[] getColumns(); 17 | 18 | public boolean isMaxrows(); 19 | 20 | public int getCount(); 21 | 22 | public boolean isComplete(); 23 | } 24 | -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/login_valid10.xml: -------------------------------------------------------------------------------- 1 | 2 | Broker = B123, BO987 3 | MemberName = Joe T. Schmoe 4 | MetadataVersion = 1.00.000 5 | MinMetadataVersion = 1.00.000 6 | User = A123,5678,1,A123 7 | Login = http://rets.test:6103/login 8 | Logout = http://rets.test:6103/logout 9 | Search = http://rets.test:6103/search 10 | GetMetadata = http://rets.test:6103/getMetadata 11 | ChangePassword = http://rets.test:6103/changePassword 12 | GetObject = http://rets.test:6103/getObjectEx 13 | Action = http://rets.test:6103/get 14 | Balance = 44.21 15 | TimeoutSeconds = 60 16 | 17 | -------------------------------------------------------------------------------- /src/test/resources/login_valid15.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Broker = B123, BO987 4 | MemberName = Joe T. Schmoe 5 | MetadataVersion = 1.00.000 6 | MinMetadataVersion = 1.00.000 7 | User = A123,5678,1,A123 8 | Login = http://rets.test:6103/login 9 | Logout = http://rets.test:6103/logout 10 | Search = http://rets.test:6103/search 11 | GetMetadata = http://rets.test:6103/getMetadata 12 | ChangePassword = http://rets.test:6103/changePassword 13 | GetObject = http://rets.test:6103/getObjectEx 14 | Action = http://rets.test:6103/get 15 | Balance = 44.21 16 | TimeoutSeconds = 60 17 | 18 | -------------------------------------------------------------------------------- /target/test-classes/login_valid15.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Broker = B123, BO987 4 | MemberName = Joe T. Schmoe 5 | MetadataVersion = 1.00.000 6 | MinMetadataVersion = 1.00.000 7 | User = A123,5678,1,A123 8 | Login = http://rets.test:6103/login 9 | Logout = http://rets.test:6103/logout 10 | Search = http://rets.test:6103/search 11 | GetMetadata = http://rets.test:6103/getMetadata 12 | ChangePassword = http://rets.test:6103/changePassword 13 | GetObject = http://rets.test:6103/getObjectEx 14 | Action = http://rets.test:6103/get 15 | Balance = 44.21 16 | TimeoutSeconds = 60 17 | 18 | -------------------------------------------------------------------------------- /src/test/resources/login_lower_case.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | broker = B123, BO987 4 | membername = Joe T. Schmoe 5 | metadataversion = 1.00.000 6 | minmetadataversion = 1.00.000 7 | user = A123,5678,1,A123 8 | login = http://rets.test:6103/login 9 | logout = http://rets.test:6103/logout 10 | search = http://rets.test:6103/search 11 | getmetadata = http://rets.test:6103/getMetadata 12 | changepassword = http://rets.test:6103/changePassword 13 | getobject = http://rets.test:6103/getObjectEx 14 | action = http://rets.test:6103/get 15 | balance = 44.21 16 | timeoutseconds = 60 17 | 18 | -------------------------------------------------------------------------------- /target/test-classes/login_lower_case.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | broker = B123, BO987 4 | membername = Joe T. Schmoe 5 | metadataversion = 1.00.000 6 | minmetadataversion = 1.00.000 7 | user = A123,5678,1,A123 8 | login = http://rets.test:6103/login 9 | logout = http://rets.test:6103/logout 10 | search = http://rets.test:6103/search 11 | getmetadata = http://rets.test:6103/getMetadata 12 | changepassword = http://rets.test:6103/changePassword 13 | getobject = http://rets.test:6103/getObjectEx 14 | action = http://rets.test:6103/get 15 | balance = 44.21 16 | timeoutseconds = 60 17 | 18 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/client/login_valid15.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Broker = B123, BO987 4 | MemberName = Joe T. Schmoe 5 | MetadataVersion = 1.00.000 6 | MinMetadataVersion = 1.00.000 7 | User = A123,5678,1,A123 8 | Login = http://rets.test:6103/login 9 | Logout = http://rets.test:6103/logout 10 | Search = http://rets.test:6103/search 11 | GetMetadata = http://rets.test:6103/getMetadata 12 | ChangePassword = http://rets.test:6103/changePassword 13 | GetObject = http://rets.test:6103/getObjectEx 14 | Action = http://rets.test:6103/get 15 | Balance = 44.21 16 | TimeoutSeconds = 60 17 | 18 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/client/login_lower_case.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | broker = B123, BO987 4 | membername = Joe T. Schmoe 5 | metadataversion = 1.00.000 6 | minmetadataversion = 1.00.000 7 | user = A123,5678,1,A123 8 | login = http://rets.test:6103/login 9 | logout = http://rets.test:6103/logout 10 | search = http://rets.test:6103/search 11 | getmetadata = http://rets.test:6103/getMetadata 12 | changepassword = http://rets.test:6103/changePassword 13 | getobject = http://rets.test:6103/getObjectEx 14 | action = http://rets.test:6103/get 15 | balance = 44.21 16 | timeoutseconds = 60 17 | 18 | -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/login_valid15.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | Broker = B123, BO987 4 | MemberName = Joe T. Schmoe 5 | MetadataVersion = 1.00.000 6 | MinMetadataVersion = 1.00.000 7 | User = A123,5678,1,A123 8 | Login = http://rets.test:6103/login 9 | Logout = http://rets.test:6103/logout 10 | Search = http://rets.test:6103/search 11 | GetMetadata = http://rets.test:6103/getMetadata 12 | ChangePassword = http://rets.test:6103/changePassword 13 | GetObject = http://rets.test:6103/getObjectEx 14 | Action = http://rets.test:6103/get 15 | Balance = 44.21 16 | TimeoutSeconds = 60 17 | 18 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/LoginRequest.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | public class LoginRequest extends VersionInsensitiveRequest { 4 | 5 | @Override 6 | public void setUrl(CapabilityUrls urls) { 7 | setUrl(urls.getLoginUrl()); 8 | } 9 | 10 | public void setBrokerCode(String code, String branch) { 11 | if (code == null) { 12 | setQueryParameter(KEY_BROKERCODE, null); 13 | } else { 14 | if (branch == null) { 15 | setQueryParameter(KEY_BROKERCODE, code); 16 | } else { 17 | setQueryParameter(KEY_BROKERCODE, code + "," + branch); 18 | } 19 | } 20 | } 21 | 22 | public static final String KEY_BROKERCODE = "BrokerCode"; 23 | } 24 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/common/metadata/attrib/AttrEnumTest.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.metadata.attrib; 2 | 3 | import org.realtors.rets.common.metadata.AttrType; 4 | 5 | public class AttrEnumTest extends AttrTypeTest { 6 | public void testEnum() throws Exception { 7 | String[] values = { "One", "Two", "Three" }; 8 | AttrType parser = new AttrEnum(values); 9 | for (int i = 0; i < values.length; i++) { 10 | String value = values[i]; 11 | assertEquals(value, parser.render(parser.parse(value,true))); 12 | } 13 | assertParseException(parser, "Four"); 14 | assertParseException(parser, ""); 15 | assertParseException(parser, "three"); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/login_lower_case.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | broker = B123, BO987 4 | membername = Joe T. Schmoe 5 | metadataversion = 1.00.000 6 | minmetadataversion = 1.00.000 7 | user = A123,5678,1,A123 8 | login = http://rets.test:6103/login 9 | logout = http://rets.test:6103/logout 10 | search = http://rets.test:6103/search 11 | getmetadata = http://rets.test:6103/getMetadata 12 | changepassword = http://rets.test:6103/changePassword 13 | getobject = http://rets.test:6103/getObjectEx 14 | action = http://rets.test:6103/get 15 | balance = 44.21 16 | timeoutseconds = 60 17 | 18 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/common/metadata/attrib/AttrGenericTextTest.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.metadata.attrib; 2 | 3 | import org.realtors.rets.common.metadata.AttrType; 4 | 5 | public class AttrGenericTextTest extends AttrTypeTest { 6 | public void testAttrGeneric() throws Exception { 7 | AttrType parser = new AttrGenericText(0, 10, "abcdefg"); 8 | 9 | assertEquals("aaaaa", parser.parse("aaaaa",true)); 10 | assertEquals("abcdefg", parser.parse("abcdefg",true)); 11 | assertEquals("", parser.parse("",true)); 12 | 13 | assertParseException(parser, "abcdefG"); 14 | assertParseException(parser, "A"); 15 | assertParseException(parser, "abcdefgabcd"); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/LoginRequest.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | public class LoginRequest extends VersionInsensitiveRequest { 4 | 5 | @Override 6 | public void setUrl(CapabilityUrls urls) { 7 | setUrl(urls.getLoginUrl()); 8 | } 9 | 10 | public void setBrokerCode(String code, String branch) { 11 | if (code == null) { 12 | setQueryParameter(KEY_BROKERCODE, null); 13 | } else { 14 | if (branch == null) { 15 | setQueryParameter(KEY_BROKERCODE, code); 16 | } else { 17 | setQueryParameter(KEY_BROKERCODE, code + "," + branch); 18 | } 19 | } 20 | } 21 | 22 | public static final String KEY_BROKERCODE = "BrokerCode"; 23 | } 24 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/MetaCollectorImpl.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.client; 9 | 10 | public class MetaCollectorImpl extends MetaCollectorAdapter { 11 | private final RetsTransport mTransport; 12 | 13 | public MetaCollectorImpl(RetsTransport transport) { 14 | this.mTransport = transport; 15 | } 16 | 17 | @Override 18 | protected GetMetadataResponse doRequest(GetMetadataRequest req) throws RetsException { 19 | return this.mTransport.getMetadata(req); 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/InvalidReplyCodeHandler.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | public interface InvalidReplyCodeHandler { 4 | InvalidReplyCodeHandler FAIL = new InvalidReplyCodeHandler() { 5 | public void invalidRetsReplyCode(int replyCode) throws InvalidReplyCodeException { 6 | throw new InvalidReplyCodeException(replyCode); 7 | } 8 | 9 | public void invalidRetsStatusReplyCode(int replyCode) throws InvalidReplyCodeException { 10 | throw new InvalidReplyCodeException(replyCode); 11 | } 12 | }; 13 | 14 | public void invalidRetsReplyCode(int replyCode) throws InvalidReplyCodeException; 15 | 16 | public void invalidRetsStatusReplyCode(int replyCode) throws InvalidReplyCodeException; 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/metadata/MetaParseException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata; 9 | 10 | public class MetaParseException extends MetadataException { 11 | public MetaParseException() { 12 | super(); 13 | } 14 | 15 | public MetaParseException(String msg) { 16 | super(msg); 17 | } 18 | 19 | public MetaParseException(Throwable cause) { 20 | super(cause); 21 | } 22 | 23 | public MetaParseException(String msg, Throwable cause) { 24 | super(msg, cause); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/MetaCollectorImpl.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.client; 9 | 10 | public class MetaCollectorImpl extends MetaCollectorAdapter { 11 | private final RetsTransport mTransport; 12 | 13 | public MetaCollectorImpl(RetsTransport transport) { 14 | this.mTransport = transport; 15 | } 16 | 17 | @Override 18 | protected GetMetadataResponse doRequest(GetMetadataRequest req) throws RetsException { 19 | return this.mTransport.getMetadata(req); 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/InvalidReplyCodeHandler.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | public interface InvalidReplyCodeHandler { 4 | InvalidReplyCodeHandler FAIL = new InvalidReplyCodeHandler() { 5 | public void invalidRetsReplyCode(int replyCode) throws InvalidReplyCodeException { 6 | throw new InvalidReplyCodeException(replyCode); 7 | } 8 | 9 | public void invalidRetsStatusReplyCode(int replyCode) throws InvalidReplyCodeException { 10 | throw new InvalidReplyCodeException(replyCode); 11 | } 12 | }; 13 | 14 | public void invalidRetsReplyCode(int replyCode) throws InvalidReplyCodeException; 15 | 16 | public void invalidRetsStatusReplyCode(int replyCode) throws InvalidReplyCodeException; 17 | } 18 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/metadata/MetaParseException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata; 9 | 10 | public class MetaParseException extends MetadataException { 11 | public MetaParseException() { 12 | super(); 13 | } 14 | 15 | public MetaParseException(String msg) { 16 | super(msg); 17 | } 18 | 19 | public MetaParseException(Throwable cause) { 20 | super(cause); 21 | } 22 | 23 | public MetaParseException(String msg, Throwable cause) { 24 | super(msg, cause); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/RetsHttpResponse.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import java.util.Map; 4 | import java.io.InputStream; 5 | 6 | /** 7 | * Interface for retrieving useful header fields from a RETS HTTP response 8 | * 9 | * 10 | */ 11 | 12 | public interface RetsHttpResponse { 13 | public int getResponseCode() throws RetsException; 14 | 15 | public Map getHeaders() throws RetsException; 16 | 17 | public String getHeader(String hdr) throws RetsException; 18 | 19 | public String getCookie(String cookie) throws RetsException; 20 | 21 | public String getCharset() throws RetsException; 22 | 23 | public InputStream getInputStream() throws RetsException; 24 | 25 | public Map getCookies() throws RetsException; 26 | 27 | } -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/metadata/MetaCollector.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata; 9 | 10 | import java.io.Serializable; 11 | 12 | /** Interface for Metadata objects to collect their children. */ 13 | public interface MetaCollector extends Serializable { 14 | /** 15 | * @param path path to the parent object. 16 | */ 17 | public MetaObject[] getMetadata(MetadataType type, String path) throws MetadataException; 18 | 19 | public MetaObject[] getMetadataRecursive(MetadataType type, String path) throws MetadataException; 20 | } 21 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/RetsHttpResponse.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import java.util.Map; 4 | import java.io.InputStream; 5 | 6 | /** 7 | * Interface for retrieving useful header fields from a RETS HTTP response 8 | * 9 | * 10 | */ 11 | 12 | public interface RetsHttpResponse { 13 | public int getResponseCode() throws RetsException; 14 | 15 | public Map getHeaders() throws RetsException; 16 | 17 | public String getHeader(String hdr) throws RetsException; 18 | 19 | public String getCookie(String cookie) throws RetsException; 20 | 21 | public String getCharset() throws RetsException; 22 | 23 | public InputStream getInputStream() throws RetsException; 24 | 25 | public Map getCookies() throws RetsException; 26 | 27 | } -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/metadata/MetadataType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata; 9 | 10 | public enum MetadataType { 11 | EDITMASK, 12 | FOREIGNKEYS, 13 | RESOURCE, 14 | LOOKUP, 15 | LOOKUP_TYPE, 16 | OBJECT, 17 | SEARCH_HELP, 18 | SYSTEM, 19 | TABLE, 20 | UPDATE, 21 | UPDATE_HELP, 22 | UPDATE_TYPE, 23 | VALIDATION_EXPRESSION, 24 | VALIDATION_EXTERNAL, 25 | VALIDATION_EXTERNAL_TYPE, 26 | VALIDATION_LOOKUP, 27 | VALIDATION_LOOKUP_TYPE, 28 | CLASS; 29 | 30 | } 31 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/common/metadata/attrib/AttrTextTest.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.metadata.attrib; 2 | 3 | import org.realtors.rets.common.metadata.AttrType; 4 | 5 | public class AttrTextTest extends AttrTypeTest { 6 | public void testAttrText() throws Exception { 7 | AttrType parser = new AttrText(0, 10); 8 | String[] good = { "\r\n\t", "eabc\rdefg", }; 9 | String[] bad = { (char) 7 + "", (char) 1 + "", "12345678901", }; 10 | 11 | assertEquals(parser.getType(), String.class); 12 | 13 | for (int i = 0; i < good.length; i++) { 14 | String s = good[i]; 15 | assertEquals(s, parser.parse(s,true)); 16 | } 17 | 18 | for (int i = 0; i < bad.length; i++) { 19 | String s = bad[i]; 20 | assertParseException(parser, s); 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/ReplyCodeHandler.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | /** 4 | * @author jrayburn 5 | */ 6 | public interface ReplyCodeHandler { 7 | 8 | /** 9 | * ReplyCodeHandler can choose to handle reply codes 10 | * that are non-zero reply codes in its own fashion. 11 | * 12 | * This is intended to be used to allow the SearchResultCollector 13 | * to choose to throw InvalidReplyCodeException if the response is 14 | * 20201 (Empty) or 20208 (MaxRowsExceeded). 15 | * 16 | * @param replyCode The RETS reply code 17 | * 18 | * @throws InvalidReplyCodeException Thrown if reply code is 19 | * invalid for the SearchResultCollector. 20 | */ 21 | public void handleReplyCode(int replyCode) throws InvalidReplyCodeException; 22 | 23 | } 24 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/metadata/MetaCollector.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata; 9 | 10 | import java.io.Serializable; 11 | 12 | /** Interface for Metadata objects to collect their children. */ 13 | public interface MetaCollector extends Serializable { 14 | /** 15 | * @param path path to the parent object. 16 | */ 17 | public MetaObject[] getMetadata(MetadataType type, String path) throws MetadataException; 18 | 19 | public MetaObject[] getMetadataRecursive(MetadataType type, String path) throws MetadataException; 20 | } 21 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/NetworkEventMonitor.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | /** 4 | * A client can register a monitor for network events 5 | */ 6 | public interface NetworkEventMonitor 7 | { 8 | /** 9 | * inform the client app that an event has started. 10 | * the client app can return an object, which will be passed 11 | * to eventFinish(). 12 | * 13 | * @param message a message describing the event 14 | * @return an object to be passed to eventFinish, or null 15 | */ 16 | public Object eventStart(String message); 17 | /** 18 | * Inform the client app that the previous event has completed 19 | * 20 | * @param o the object returned from eventStart 21 | */ 22 | public void eventFinish(Object o); 23 | } 24 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/metadata/MetadataException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata; 9 | 10 | import org.apache.commons.lang.exception.NestableException; 11 | 12 | public class MetadataException extends NestableException { 13 | public MetadataException() { 14 | super(); 15 | } 16 | 17 | public MetadataException(String msg) { 18 | super(msg); 19 | } 20 | 21 | public MetadataException(Throwable cause) { 22 | super(cause); 23 | } 24 | 25 | public MetadataException(String msg, Throwable cause) { 26 | super(msg, cause); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/metadata/MetadataType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata; 9 | 10 | public enum MetadataType { 11 | EDITMASK, 12 | FOREIGNKEYS, 13 | RESOURCE, 14 | LOOKUP, 15 | LOOKUP_TYPE, 16 | OBJECT, 17 | SEARCH_HELP, 18 | SYSTEM, 19 | TABLE, 20 | UPDATE, 21 | UPDATE_HELP, 22 | UPDATE_TYPE, 23 | VALIDATION_EXPRESSION, 24 | VALIDATION_EXTERNAL, 25 | VALIDATION_EXTERNAL_TYPE, 26 | VALIDATION_LOOKUP, 27 | VALIDATION_LOOKUP_TYPE, 28 | CLASS; 29 | 30 | } 31 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/ReplyCodeHandler.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | /** 4 | * @author jrayburn 5 | */ 6 | public interface ReplyCodeHandler { 7 | 8 | /** 9 | * ReplyCodeHandler can choose to handle reply codes 10 | * that are non-zero reply codes in its own fashion. 11 | * 12 | * This is intended to be used to allow the SearchResultCollector 13 | * to choose to throw InvalidReplyCodeException if the response is 14 | * 20201 (Empty) or 20208 (MaxRowsExceeded). 15 | * 16 | * @param replyCode The RETS reply code 17 | * 18 | * @throws InvalidReplyCodeException Thrown if reply code is 19 | * invalid for the SearchResultCollector. 20 | */ 21 | public void handleReplyCode(int replyCode) throws InvalidReplyCodeException; 22 | 23 | } 24 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/NetworkEventMonitor.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | /** 4 | * A client can register a monitor for network events 5 | */ 6 | public interface NetworkEventMonitor 7 | { 8 | /** 9 | * inform the client app that an event has started. 10 | * the client app can return an object, which will be passed 11 | * to eventFinish(). 12 | * 13 | * @param message a message describing the event 14 | * @return an object to be passed to eventFinish, or null 15 | */ 16 | public Object eventStart(String message); 17 | /** 18 | * Inform the client app that the previous event has completed 19 | * 20 | * @param o the object returned from eventStart 21 | */ 22 | public void eventFinish(Object o); 23 | } 24 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/metadata/MetadataException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata; 9 | 10 | import org.apache.commons.lang.exception.NestableException; 11 | 12 | public class MetadataException extends NestableException { 13 | public MetadataException() { 14 | super(); 15 | } 16 | 17 | public MetadataException(String msg) { 18 | super(msg); 19 | } 20 | 21 | public MetadataException(Throwable cause) { 22 | super(cause); 23 | } 24 | 25 | public MetadataException(String msg, Throwable cause) { 26 | super(msg, cause); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/SearchResultInfo.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | /** 4 | * Interface that describes high level information 5 | * about the results of a search. 6 | * @author jrayburn 7 | */ 8 | public interface SearchResultInfo { 9 | public int getCount() throws RetsException; 10 | 11 | public String[] getColumns() throws RetsException; 12 | 13 | /** @throws IllegalStateException */ 14 | public boolean isMaxrows() throws RetsException, IllegalStateException; 15 | 16 | /** 17 | * Indicates that processing of this search 18 | * is complete. 19 | * 20 | * @return true if this SearchResultSet is finished processing. 21 | * @throws RetsException Thrown if there is an error 22 | * processing the SearchResultSet. 23 | */ 24 | public boolean isComplete() throws RetsException; 25 | } 26 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/common/metadata/attrib/AttrNumericTest.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.metadata.attrib; 2 | 3 | import org.realtors.rets.common.metadata.AttrType; 4 | 5 | public class AttrNumericTest extends AttrTypeTest { 6 | public void testNumeric() throws Exception { 7 | AttrType parser = new AttrNumeric(); 8 | assertEquals(Integer.class, parser.getType()); 9 | int[] values = { 1, 100, 99999, 12345, 67890 }; 10 | for (int i = 0; i < values.length; i++) { 11 | int expected = values[i]; 12 | String input = Integer.toString(expected); 13 | Object o = parser.parse(input,true); 14 | int output = ((Integer) o).intValue(); 15 | assertEquals(expected, output); 16 | } 17 | assertParseException(parser, "0x99"); 18 | assertParseException(parser, "0AF"); 19 | assertParseException(parser, "0L"); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/SearchResultInfo.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | /** 4 | * Interface that describes high level information 5 | * about the results of a search. 6 | * @author jrayburn 7 | */ 8 | public interface SearchResultInfo { 9 | public int getCount() throws RetsException; 10 | 11 | public String[] getColumns() throws RetsException; 12 | 13 | /** @throws IllegalStateException */ 14 | public boolean isMaxrows() throws RetsException, IllegalStateException; 15 | 16 | /** 17 | * Indicates that processing of this search 18 | * is complete. 19 | * 20 | * @return true if this SearchResultSet is finished processing. 21 | * @throws RetsException Thrown if there is an error 22 | * processing the SearchResultSet. 23 | */ 24 | public boolean isComplete() throws RetsException; 25 | } 26 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/client/IOFailReader.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import java.io.FilterReader; 4 | import java.io.IOException; 5 | import java.io.Reader; 6 | 7 | public class IOFailReader extends FilterReader { 8 | 9 | protected IOFailReader(Reader reader) { 10 | super(reader); 11 | } 12 | 13 | public void setFailRead(boolean failRead) { 14 | this.mFailRead = failRead; 15 | } 16 | 17 | @Override 18 | public int read() throws IOException { 19 | checkFailRead(); 20 | return super.read(); 21 | } 22 | 23 | @Override 24 | public int read(char[] cbuf, int off, int len) throws IOException { 25 | checkFailRead(); 26 | return super.read(cbuf, off, len); 27 | } 28 | 29 | private void checkFailRead() throws IOException { 30 | if (this.mFailRead) 31 | throw new IOException("Simulated IOException"); 32 | } 33 | 34 | private boolean mFailRead; 35 | } 36 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/BrokerCodeRequredException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.client; 9 | 10 | import java.util.ArrayList; 11 | import java.util.Collection; 12 | import java.util.Collections; 13 | import java.util.List; 14 | 15 | /** 16 | * dbt is lame and hasn't overridden the default 17 | * javadoc string. 18 | */ 19 | public class BrokerCodeRequredException extends RetsException { 20 | private final List mCodeList; 21 | 22 | public BrokerCodeRequredException(Collection codes) { 23 | this.mCodeList = Collections.unmodifiableList(new ArrayList(codes)); 24 | } 25 | 26 | public List getCodeList(){ 27 | return this.mCodeList; 28 | } 29 | 30 | } 31 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/metadata/attrib/AttrPlaintext.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata.attrib; 9 | 10 | import org.realtors.rets.common.metadata.MetaParseException; 11 | 12 | public class AttrPlaintext extends AttrAbstractText { 13 | public AttrPlaintext(int min, int max) { 14 | super(min, max); 15 | } 16 | 17 | @Override 18 | protected void checkContent(String value) throws MetaParseException { 19 | char[] chars = value.toCharArray(); 20 | for (int i = 0; i < chars.length; i++) { 21 | char c = chars[i]; 22 | if (c < 31 || c > 126) { 23 | throw new MetaParseException("Invalid character (ordinal " + (int) c + ") at position " + i); 24 | } 25 | } 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/BrokerCodeRequredException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.client; 9 | 10 | import java.util.ArrayList; 11 | import java.util.Collection; 12 | import java.util.Collections; 13 | import java.util.List; 14 | 15 | /** 16 | * dbt is lame and hasn't overridden the default 17 | * javadoc string. 18 | */ 19 | public class BrokerCodeRequredException extends RetsException { 20 | private final List mCodeList; 21 | 22 | public BrokerCodeRequredException(Collection codes) { 23 | this.mCodeList = Collections.unmodifiableList(new ArrayList(codes)); 24 | } 25 | 26 | public List getCodeList(){ 27 | return this.mCodeList; 28 | } 29 | 30 | } 31 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/metadata/attrib/AttrPlaintext.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata.attrib; 9 | 10 | import org.realtors.rets.common.metadata.MetaParseException; 11 | 12 | public class AttrPlaintext extends AttrAbstractText { 13 | public AttrPlaintext(int min, int max) { 14 | super(min, max); 15 | } 16 | 17 | @Override 18 | protected void checkContent(String value) throws MetaParseException { 19 | char[] chars = value.toCharArray(); 20 | for (int i = 0; i < chars.length; i++) { 21 | char c = chars[i]; 22 | if (c < 31 || c > 126) { 23 | throw new MetaParseException("Invalid character (ordinal " + (int) c + ") at position " + i); 24 | } 25 | } 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/client/LoginRequestTest.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | public class LoginRequestTest extends RetsTestCase { 4 | public void testGetUrl() { 5 | LoginRequest req = new LoginRequest(); 6 | req.setUrl("http://testurl:6103/login"); 7 | assertEquals("http://testurl:6103/login", req.getUrl()); 8 | } 9 | 10 | public void testSetBrokerCode() { 11 | LoginRequest req = new LoginRequest(); 12 | req.setUrl("http://testurl:6103/login"); 13 | req.setBrokerCode(null, "branch"); 14 | assertEquals("http://testurl:6103/login", req.getUrl()); 15 | req.setBrokerCode("broker", null); 16 | // query parameters are separate now because of get/post 17 | assertEquals("http://testurl:6103/login", req.getUrl()); 18 | assertEquals("BrokerCode=broker", req.getHttpParameters()); 19 | req.setBrokerCode("broker", "branch"); 20 | assertEquals("BrokerCode=broker,branch", RetsUtil.urlDecode(req.getHttpParameters())); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/metadata/attrib/AttrNumeric.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata.attrib; 9 | 10 | import org.realtors.rets.common.metadata.AttrType; 11 | import org.realtors.rets.common.metadata.MetaParseException; 12 | 13 | public class AttrNumeric implements AttrType { 14 | public Integer parse(String value, boolean strict) throws MetaParseException { 15 | try { 16 | return new Integer(value); 17 | } catch (NumberFormatException e) { 18 | if( strict ) 19 | throw new MetaParseException(e); 20 | return 0; 21 | } 22 | } 23 | 24 | public String render(Integer value) { 25 | return value.toString(); 26 | } 27 | 28 | public Class getType() { 29 | return Integer.class; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/common/metadata/attrib/AttrPlaintextTest.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.metadata.attrib; 2 | 3 | import org.realtors.rets.common.metadata.AttrType; 4 | 5 | public class AttrPlaintextTest extends AttrTypeTest { 6 | public void testPlaintext() throws Exception { 7 | AttrType parser = new AttrPlaintext(0, 10); 8 | 9 | assertEquals(String.class, parser.getType()); 10 | String[] good = { "%17a", "!%@$", "90785", ")!(*%! ", "" }; 11 | String[] bad = { "\r\n", "\t", new String(new char[] { (char) 7 }) }; 12 | 13 | for (int i = 0; i < good.length; i++) { 14 | String s = good[i]; 15 | assertEquals(s, parser.parse(s,true)); 16 | } 17 | 18 | for (int i = 0; i < bad.length; i++) { 19 | String s = bad[i]; 20 | assertParseException(parser, s); 21 | } 22 | 23 | AttrType parser2 = new AttrPlaintext(10, 20); 24 | assertParseException(parser2, "1"); 25 | assertParseException(parser2, "123456789012345678901"); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/metadata/attrib/AttrText.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata.attrib; 9 | 10 | import org.realtors.rets.common.metadata.MetaParseException; 11 | 12 | public class AttrText extends AttrAbstractText { 13 | public AttrText(int min, int max) { 14 | super(min, max); 15 | } 16 | 17 | @Override 18 | protected void checkContent(String value) throws MetaParseException { 19 | char[] chars = value.toCharArray(); 20 | for (int i = 0; i < chars.length; i++) { 21 | char c = chars[i]; 22 | if (!(c == '\n' || c == '\r' || c == ' ' || c == '\t' || (c > 31 && c < 127))) { 23 | throw new MetaParseException("Invalid character (ordinal " + (int) c + ") at position " + i); 24 | } 25 | } 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/GenericHttpRequest.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | /** 4 | * on the off chance you need an ad hoc request object... 5 | */ 6 | public class GenericHttpRequest extends VersionInsensitiveRequest { 7 | 8 | public GenericHttpRequest(){ 9 | // noop 10 | } 11 | 12 | public GenericHttpRequest(String url){ 13 | this.mUrl = url; 14 | } 15 | 16 | /** 17 | * throws an exception. GenericHttpRequest can't have a 18 | * CapabilityUrl 19 | * @param urls the CapabilityUrls object that has nothing we can use 20 | */ 21 | @Override 22 | public void setUrl(CapabilityUrls urls) { 23 | // do nothing 24 | return; 25 | } 26 | 27 | /** 28 | * expose the queryParameter interface to build query arguments. 29 | * @param name the parameter name 30 | * @param value the parameter value 31 | */ 32 | @Override 33 | public void setQueryParameter(String name, String value) { 34 | super.setQueryParameter(name, value); 35 | } 36 | } -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/RetsHttpClient.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | 4 | public abstract class RetsHttpClient { 5 | 6 | public static final String SESSION_ID_COOKIE = "RETS-Session-ID"; 7 | public static final String LOGIN_SESSION_ID = "0"; 8 | 9 | public abstract void setUserCredentials(String userName, String password); 10 | 11 | /** 12 | * The protocol specific implementation happens here. 13 | */ 14 | public abstract RetsHttpResponse doRequest(String httpMethod, RetsHttpRequest request) throws RetsException; 15 | 16 | /** 17 | * Add an HTTP header that should be included by default in all requests 18 | * 19 | * @param name 20 | * header name, case should be preserved 21 | * @param value 22 | * static header value, if null then implementation 23 | * should not include the header in requests 24 | */ 25 | public abstract void addDefaultHeader(String name, String value); 26 | 27 | } 28 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/metadata/attrib/AttrNumeric.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata.attrib; 9 | 10 | import org.realtors.rets.common.metadata.AttrType; 11 | import org.realtors.rets.common.metadata.MetaParseException; 12 | 13 | public class AttrNumeric implements AttrType { 14 | public Integer parse(String value, boolean strict) throws MetaParseException { 15 | try { 16 | return new Integer(value); 17 | } catch (NumberFormatException e) { 18 | if( strict ) 19 | throw new MetaParseException(e); 20 | return 0; 21 | } 22 | } 23 | 24 | public String render(Integer value) { 25 | return value.toString(); 26 | } 27 | 28 | public Class getType() { 29 | return Integer.class; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/metadata/attrib/AttrText.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata.attrib; 9 | 10 | import org.realtors.rets.common.metadata.MetaParseException; 11 | 12 | public class AttrText extends AttrAbstractText { 13 | public AttrText(int min, int max) { 14 | super(min, max); 15 | } 16 | 17 | @Override 18 | protected void checkContent(String value) throws MetaParseException { 19 | char[] chars = value.toCharArray(); 20 | for (int i = 0; i < chars.length; i++) { 21 | char c = chars[i]; 22 | if (!(c == '\n' || c == '\r' || c == ' ' || c == '\t' || (c > 31 && c < 127))) { 23 | throw new MetaParseException("Invalid character (ordinal " + (int) c + ") at position " + i); 24 | } 25 | } 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/GenericHttpRequest.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | /** 4 | * on the off chance you need an ad hoc request object... 5 | */ 6 | public class GenericHttpRequest extends VersionInsensitiveRequest { 7 | 8 | public GenericHttpRequest(){ 9 | // noop 10 | } 11 | 12 | public GenericHttpRequest(String url){ 13 | this.mUrl = url; 14 | } 15 | 16 | /** 17 | * throws an exception. GenericHttpRequest can't have a 18 | * CapabilityUrl 19 | * @param urls the CapabilityUrls object that has nothing we can use 20 | */ 21 | @Override 22 | public void setUrl(CapabilityUrls urls) { 23 | // do nothing 24 | return; 25 | } 26 | 27 | /** 28 | * expose the queryParameter interface to build query arguments. 29 | * @param name the parameter name 30 | * @param value the parameter value 31 | */ 32 | @Override 33 | public void setQueryParameter(String name, String value) { 34 | super.setQueryParameter(name, value); 35 | } 36 | } -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/RetsHttpClient.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | 4 | public abstract class RetsHttpClient { 5 | 6 | public static final String SESSION_ID_COOKIE = "RETS-Session-ID"; 7 | public static final String LOGIN_SESSION_ID = "0"; 8 | 9 | public abstract void setUserCredentials(String userName, String password); 10 | 11 | /** 12 | * The protocol specific implementation happens here. 13 | */ 14 | public abstract RetsHttpResponse doRequest(String httpMethod, RetsHttpRequest request) throws RetsException; 15 | 16 | /** 17 | * Add an HTTP header that should be included by default in all requests 18 | * 19 | * @param name 20 | * header name, case should be preserved 21 | * @param value 22 | * static header value, if null then implementation 23 | * should not include the header in requests 24 | */ 25 | public abstract void addDefaultHeader(String name, String value); 26 | 27 | } 28 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/metadata/MetadataElement.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.metadata; 2 | 3 | public enum MetadataElement { 4 | SYSTEM("System"),// might need to provide enumeration for different versions 1.5 vs 1.7 5 | RESOURCE("Resource"), 6 | FOREIGNKEY("ForeignKey"), 7 | CLASS("Class"), 8 | TABLE("Field"), 9 | UPDATE("UpdateType"), 10 | UPDATETYPE("UpdateField"), 11 | OBJECT("Object"), 12 | SEARCHHELP("SearchHelp"), 13 | EDITMASK("EditMask"), 14 | UPDATEHELP("UpdateHelp"), 15 | LOOKUP("Lookup"), 16 | LOOKUPTYPE("LookupType"), 17 | VALIDATIONLOOKUP("ValidationLookup"), 18 | VALIDATIONLOOKUPTYPE("ValidationLookupType"), 19 | VALIDATIONEXPRESSION("ValidationExpression"), 20 | VALIDATIONEXTERNAL("ValidationExternalType"), 21 | VALIDATIONEXTERNALTYPE("ValidationExternal"); 22 | 23 | private final String elementName; 24 | 25 | MetadataElement(String elementName){ 26 | this.elementName = elementName; 27 | } 28 | 29 | public String elementName(){ return this.elementName;} 30 | 31 | } 32 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/metadata/attrib/AttrAlphanum.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata.attrib; 9 | 10 | import org.realtors.rets.common.metadata.MetaParseException; 11 | 12 | public class AttrAlphanum extends AttrAbstractText { 13 | 14 | public AttrAlphanum(int min, int max) { 15 | super(min, max); 16 | } 17 | 18 | @Override 19 | protected void checkContent(String value) throws MetaParseException { 20 | char[] chars = value.toCharArray(); 21 | for (int i = 0; i < chars.length; i++) { 22 | char c = chars[i]; 23 | if (!Character.isLetterOrDigit(c)) { 24 | // illegal but exist in CRT metadata 25 | if ("_- ".indexOf(c) == -1) { 26 | throw new MetaParseException("Invalid Alphanum character at position " + i + ": " + c); 27 | } 28 | } 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/metadata/MetadataElement.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.metadata; 2 | 3 | public enum MetadataElement { 4 | SYSTEM("System"),// might need to provide enumeration for different versions 1.5 vs 1.7 5 | RESOURCE("Resource"), 6 | FOREIGNKEY("ForeignKey"), 7 | CLASS("Class"), 8 | TABLE("Field"), 9 | UPDATE("UpdateType"), 10 | UPDATETYPE("UpdateField"), 11 | OBJECT("Object"), 12 | SEARCHHELP("SearchHelp"), 13 | EDITMASK("EditMask"), 14 | UPDATEHELP("UpdateHelp"), 15 | LOOKUP("Lookup"), 16 | LOOKUPTYPE("LookupType"), 17 | VALIDATIONLOOKUP("ValidationLookup"), 18 | VALIDATIONLOOKUPTYPE("ValidationLookupType"), 19 | VALIDATIONEXPRESSION("ValidationExpression"), 20 | VALIDATIONEXTERNAL("ValidationExternalType"), 21 | VALIDATIONEXTERNALTYPE("ValidationExternal"); 22 | 23 | private final String elementName; 24 | 25 | MetadataElement(String elementName){ 26 | this.elementName = elementName; 27 | } 28 | 29 | public String elementName(){ return this.elementName;} 30 | 31 | } 32 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/metadata/attrib/AttrAlphanum.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata.attrib; 9 | 10 | import org.realtors.rets.common.metadata.MetaParseException; 11 | 12 | public class AttrAlphanum extends AttrAbstractText { 13 | 14 | public AttrAlphanum(int min, int max) { 15 | super(min, max); 16 | } 17 | 18 | @Override 19 | protected void checkContent(String value) throws MetaParseException { 20 | char[] chars = value.toCharArray(); 21 | for (int i = 0; i < chars.length; i++) { 22 | char c = chars[i]; 23 | if (!Character.isLetterOrDigit(c)) { 24 | // illegal but exist in CRT metadata 25 | if ("_- ".indexOf(c) == -1) { 26 | throw new MetaParseException("Invalid Alphanum character at position " + i + ": " + c); 27 | } 28 | } 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/metadata/attrib/AttrEnum.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata.attrib; 9 | 10 | import java.util.HashMap; 11 | import java.util.Map; 12 | import java.util.Collections; 13 | 14 | import org.realtors.rets.common.metadata.MetaParseException; 15 | 16 | public class AttrEnum extends AttrAbstractText { 17 | public AttrEnum(String[] values) { 18 | super(0, 0); 19 | this.map = new HashMap(); 20 | for (String value : values) this.map.put(value, value); 21 | this.map = Collections.unmodifiableMap(this.map); 22 | } 23 | 24 | @Override 25 | protected void checkContent(String value) throws MetaParseException { 26 | if( !this.map.containsKey(value) ) 27 | throw new MetaParseException("Invalid key: " + value); 28 | } 29 | 30 | private Map map; 31 | } 32 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/common/metadata/attrib/AttrTypeTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata.attrib; 9 | 10 | import org.realtors.rets.common.metadata.MetadataTestCase; 11 | import org.realtors.rets.common.metadata.AttrType; 12 | import org.realtors.rets.common.metadata.MetaParseException; 13 | 14 | /** 15 | * It's rare you can encapsulate the exception expecting tests, but I can, 16 | * so, I did. 17 | */ 18 | public abstract class AttrTypeTest extends MetadataTestCase { 19 | protected void assertParseException(AttrType attrib, String input) throws Exception { 20 | attrib.parse(input,false); 21 | try { 22 | attrib.parse(input,true); 23 | fail("Expected MetaParseException, got no exception for input " + '"' + input + '"'); 24 | } catch (MetaParseException e) { 25 | // "success" 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/metadata/attrib/AttrEnum.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata.attrib; 9 | 10 | import java.util.HashMap; 11 | import java.util.Map; 12 | import java.util.Collections; 13 | 14 | import org.realtors.rets.common.metadata.MetaParseException; 15 | 16 | public class AttrEnum extends AttrAbstractText { 17 | public AttrEnum(String[] values) { 18 | super(0, 0); 19 | this.map = new HashMap(); 20 | for (String value : values) this.map.put(value, value); 21 | this.map = Collections.unmodifiableMap(this.map); 22 | } 23 | 24 | @Override 25 | protected void checkContent(String value) throws MetaParseException { 26 | if( !this.map.containsKey(value) ) 27 | throw new MetaParseException("Invalid key: " + value); 28 | } 29 | 30 | private Map map; 31 | } 32 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/metadata/attrib/AttrGenericText.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata.attrib; 9 | 10 | import org.realtors.rets.common.metadata.attrib.AttrAbstractText; 11 | import org.realtors.rets.common.metadata.MetaParseException; 12 | 13 | public class AttrGenericText extends AttrAbstractText { 14 | private String mChars; 15 | 16 | public AttrGenericText(int min, int max, String chars) { 17 | super(min, max); 18 | this.mChars = chars; 19 | } 20 | 21 | @Override 22 | protected void checkContent(String value) throws MetaParseException { 23 | char[] chars = value.toCharArray(); 24 | for (int i = 0; i < chars.length; i++) { 25 | char c = chars[i]; 26 | if (this.mChars.indexOf(c) == -1) { 27 | throw new MetaParseException("Invalid char (" + c + ") at position " + i); 28 | } 29 | } 30 | } 31 | 32 | } 33 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/client/SingleObjectResponseTest.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import java.util.HashMap; 4 | import java.util.Map; 5 | 6 | import junit.framework.TestCase; 7 | 8 | public class SingleObjectResponseTest extends TestCase { 9 | 10 | @Override 11 | protected void setUp() throws Exception { 12 | super.setUp(); 13 | } 14 | 15 | @Override 16 | protected void tearDown() throws Exception { 17 | super.tearDown(); 18 | } 19 | 20 | public void testCaseInsensitiveHeaders() throws Exception { 21 | Map headers = new HashMap(); 22 | headers.put("Content-type", "1"); 23 | headers.put("location", "2"); 24 | headers.put("Object-Id", "3"); 25 | headers.put("content-id", "4"); 26 | headers.put("CONTENT-DESCRIPTION", "5"); 27 | 28 | SingleObjectResponse res = new SingleObjectResponse(headers, null); 29 | assertEquals("1", res.getType()); 30 | assertEquals("2", res.getLocation()); 31 | assertEquals("3", res.getObjectID()); 32 | assertEquals("4", res.getContentID()); 33 | assertEquals("5", res.getDescription()); 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/metadata/attrib/AttrGenericText.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata.attrib; 9 | 10 | import org.realtors.rets.common.metadata.attrib.AttrAbstractText; 11 | import org.realtors.rets.common.metadata.MetaParseException; 12 | 13 | public class AttrGenericText extends AttrAbstractText { 14 | private String mChars; 15 | 16 | public AttrGenericText(int min, int max, String chars) { 17 | super(min, max); 18 | this.mChars = chars; 19 | } 20 | 21 | @Override 22 | protected void checkContent(String value) throws MetaParseException { 23 | char[] chars = value.toCharArray(); 24 | for (int i = 0; i < chars.length; i++) { 25 | char c = chars[i]; 26 | if (this.mChars.indexOf(c) == -1) { 27 | throw new MetaParseException("Invalid char (" + c + ") at position " + i); 28 | } 29 | } 30 | } 31 | 32 | } 33 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/common/metadata/attrib/AttrDateTest.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.metadata.attrib; 2 | 3 | public class AttrDateTest extends AttrTypeTest { 4 | public void testAttrDate() throws Exception { 5 | /* 6 | * AttrDate uses Strings now, not dates. 7 | * bgutierrez Sep. 17, 2012 8 | * 9 | * AttrType parser = new AttrDate(); 10 | 11 | assertEquals(parser.getType(), Date.class); 12 | Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("GMT")); 13 | cal.clear(); 14 | cal.set(2003, Calendar.NOVEMBER, 5, 17, 50, 23); 15 | assertEquals(cal.getTime(), parser.parse("Wed, 5 Nov 2003 17:50:23 GMT",true)); 16 | 17 | assertEquals(new Date(0), parser.parse("Thu, 1 Jan 1970 00:00:00 GMT",true)); 18 | 19 | assertEquals("wrong day of week but still should parse!", new Date(0), parser.parse("Tue, 1 Jan 1970 00:00:00 GMT",true)); 20 | 21 | assertParseException(parser, "2/12/70"); 22 | assertParseException(parser, "12/2/70"); 23 | assertParseException(parser, "2003-1-1"); 24 | // month and date backwards 25 | assertParseException(parser, "Thu, Jan 1 1970 00:00:00 GMT");*/ 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/metadata/attrib/AttrNumericPositive.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata.attrib; 9 | 10 | import org.realtors.rets.common.metadata.AttrType; 11 | import org.realtors.rets.common.metadata.MetaParseException; 12 | 13 | public class AttrNumericPositive implements AttrType { 14 | 15 | public Integer parse(String value, boolean strict) throws MetaParseException { 16 | try { 17 | Integer integer = new Integer(value); 18 | if (strict && integer < 1) throw new IllegalArgumentException(String.format("%s is not positive", value)); 19 | return integer; 20 | } catch (Exception e) { 21 | if( strict ) 22 | throw new MetaParseException(e); 23 | return 1; 24 | } 25 | } 26 | 27 | 28 | public String render(Integer value) { 29 | return value.toString(); 30 | } 31 | 32 | 33 | public Class getType() { 34 | return Integer.class; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/ChangePasswordResponse.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import java.io.InputStream; 4 | 5 | import org.jdom.Document; 6 | import org.jdom.Element; 7 | import org.jdom.input.SAXBuilder; 8 | 9 | /** 10 | * dbt is lame and hasn't overridden the default 11 | * javadoc string. 12 | */ 13 | public class ChangePasswordResponse { 14 | public ChangePasswordResponse(InputStream stream) throws RetsException { 15 | SAXBuilder builder = new SAXBuilder(); 16 | Document document = null; 17 | try { 18 | document = builder.build(stream); 19 | } catch (Exception e) { 20 | throw new RetsException(e); 21 | } 22 | Element rets = document.getRootElement(); 23 | if (!rets.getName().equals("RETS")) { 24 | throw new RetsException("Invalid Change Password Response"); 25 | } 26 | 27 | int replyCode = Integer.parseInt(rets.getAttributeValue("ReplyCode")); 28 | if (replyCode != 0) { 29 | InvalidReplyCodeException exception; 30 | exception = new InvalidReplyCodeException(replyCode); 31 | exception.setRemoteMessage(rets.getAttributeValue("ReplyText")); 32 | throw exception; 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/metadata/attrib/AttrNumericPositive.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata.attrib; 9 | 10 | import org.realtors.rets.common.metadata.AttrType; 11 | import org.realtors.rets.common.metadata.MetaParseException; 12 | 13 | public class AttrNumericPositive implements AttrType { 14 | 15 | public Integer parse(String value, boolean strict) throws MetaParseException { 16 | try { 17 | Integer integer = new Integer(value); 18 | if (strict && integer < 1) throw new IllegalArgumentException(String.format("%s is not positive", value)); 19 | return integer; 20 | } catch (Exception e) { 21 | if( strict ) 22 | throw new MetaParseException(e); 23 | return 1; 24 | } 25 | } 26 | 27 | 28 | public String render(Integer value) { 29 | return value.toString(); 30 | } 31 | 32 | 33 | public Class getType() { 34 | return Integer.class; 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/client/AllTests.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import junit.framework.Test; 4 | import junit.framework.TestSuite; 5 | 6 | /** 7 | * A suite of all tests in the org.realtors.rets.client.* package. 8 | */ 9 | public class AllTests { 10 | /** 11 | * Returns a test suite for all classes in org.realtors.rets.client.*. 12 | */ 13 | public static Test suite() { 14 | TestSuite suite; 15 | 16 | suite = new TestSuite(); 17 | /*suite.addTestSuite(GetMetadataRequestTest.class); 18 | suite.addTestSuite(GetMetadataResponseTest.class); 19 | suite.addTestSuite(GetObjectResponseIteratorTest.class); 20 | suite.addTestSuite(LoginRequestTest.class); 21 | suite.addTestSuite(LoginResponseTest.class); 22 | suite.addTestSuite(LogoutResponseTest.class); 23 | // suite.addTestSuite(MetadataTableTest.class); 24 | // suite.addTestSuite(MetadataTableBuilderTest.class); 25 | suite.addTestSuite(RetsVersionTest.class); 26 | suite.addTestSuite(SearchResultImplTest.class); 27 | suite.addTestSuite(SearchResultHandlerTest.class); 28 | suite.addTestSuite(SingleObjectResponseTest.class);*/ 29 | return suite; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/ChangePasswordResponse.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import java.io.InputStream; 4 | 5 | import org.jdom.Document; 6 | import org.jdom.Element; 7 | import org.jdom.input.SAXBuilder; 8 | 9 | /** 10 | * dbt is lame and hasn't overridden the default 11 | * javadoc string. 12 | */ 13 | public class ChangePasswordResponse { 14 | public ChangePasswordResponse(InputStream stream) throws RetsException { 15 | SAXBuilder builder = new SAXBuilder(); 16 | Document document = null; 17 | try { 18 | document = builder.build(stream); 19 | } catch (Exception e) { 20 | throw new RetsException(e); 21 | } 22 | Element rets = document.getRootElement(); 23 | if (!rets.getName().equals("RETS")) { 24 | throw new RetsException("Invalid Change Password Response"); 25 | } 26 | 27 | int replyCode = Integer.parseInt(rets.getAttributeValue("ReplyCode")); 28 | if (replyCode != 0) { 29 | InvalidReplyCodeException exception; 30 | exception = new InvalidReplyCodeException(replyCode); 31 | exception.setRemoteMessage(rets.getAttributeValue("ReplyText")); 32 | throw exception; 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/common/metadata/attrib/AttrVersionTest.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.metadata.attrib; 2 | 3 | import org.realtors.rets.common.metadata.AttrType; 4 | import org.realtors.rets.common.metadata.MetaParseException; 5 | 6 | public class AttrVersionTest extends AttrTypeTest { 7 | @Override 8 | protected void setUp() throws Exception { 9 | this.mParser = new AttrVersion(); 10 | } 11 | 12 | public void testAttrVersion() throws Exception { 13 | assertEquals(this.mParser.getType(), Integer.class); 14 | assertVersionEquals(10500005, "1.5.5"); 15 | assertVersionEquals(123456789, "12.34.56789"); 16 | assertVersionEquals(0, "0.0.0"); 17 | assertParseException("1.1.1.1"); 18 | assertParseException("1.1"); 19 | assertParseException("123456789"); 20 | } 21 | 22 | private void assertParseException(String input) throws Exception { 23 | assertParseException(this.mParser, input); 24 | } 25 | 26 | private void assertVersionEquals(int expected, String input) throws MetaParseException { 27 | Integer i = (Integer) this.mParser.parse(input,true); 28 | assertEquals(expected, i.intValue()); 29 | } 30 | 31 | private AttrType mParser; 32 | } 33 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/common/metadata/TestMetaObject.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.metadata; 2 | 3 | import java.util.Map; 4 | 5 | class TestMetaObject extends MetaObject { 6 | 7 | public static final String SYSTEM_NAME = "SystemName"; 8 | public static final String STRING1 = "String1"; 9 | private static int sAddAttributeCount; 10 | 11 | public TestMetaObject(boolean strictParsing) { 12 | super(strictParsing); 13 | } 14 | 15 | @Override 16 | public MetadataType[] getChildTypes() { 17 | return sNoChildren; 18 | } 19 | 20 | @Override 21 | protected String getIdAttr() { 22 | return SYSTEM_NAME; 23 | } 24 | 25 | @Override 26 | protected void addAttributesToMap(Map attributeMap) { 27 | attributeMap.put(SYSTEM_NAME, sAlphanum10); 28 | attributeMap.put(STRING1, sText); 29 | sAddAttributeCount++; 30 | } 31 | 32 | public String getSystemName() { 33 | return getStringAttribute(SYSTEM_NAME); 34 | } 35 | 36 | public String getString1() { 37 | return getStringAttribute(STRING1); 38 | } 39 | 40 | public static void resetAddAttributeCount() { 41 | sAddAttributeCount = 0; 42 | } 43 | 44 | public static int getAddAttributeCount() { 45 | return sAddAttributeCount; 46 | } 47 | 48 | } 49 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/CollectionOfCollectionsIterator.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import java.util.Collection; 4 | import java.util.Iterator; 5 | import java.util.NoSuchElementException; 6 | 7 | public class CollectionOfCollectionsIterator implements Iterator { 8 | private Iterator mOuter; 9 | private Iterator mInner; 10 | 11 | public CollectionOfCollectionsIterator(Collection c) { 12 | this.mOuter = c.iterator(); 13 | hasNext(); 14 | } 15 | 16 | public boolean hasNext() { 17 | if( this.mInner != null && this.mInner.hasNext() ) { 18 | return true; 19 | } 20 | while( this.mOuter.hasNext() ){ 21 | this.mInner = ((Collection) this.mOuter.next()).iterator(); 22 | if( this.mInner.hasNext() ){ 23 | return true; 24 | } 25 | } 26 | return false; 27 | } 28 | 29 | public Object next() { 30 | if ( this.hasNext() ) 31 | return this.mInner.next(); 32 | 33 | throw new NoSuchElementException(); 34 | } 35 | 36 | public void remove() throws UnsupportedOperationException { 37 | throw new UnsupportedOperationException(); 38 | } 39 | 40 | } 41 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/CollectionOfCollectionsIterator.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import java.util.Collection; 4 | import java.util.Iterator; 5 | import java.util.NoSuchElementException; 6 | 7 | public class CollectionOfCollectionsIterator implements Iterator { 8 | private Iterator mOuter; 9 | private Iterator mInner; 10 | 11 | public CollectionOfCollectionsIterator(Collection c) { 12 | this.mOuter = c.iterator(); 13 | hasNext(); 14 | } 15 | 16 | public boolean hasNext() { 17 | if( this.mInner != null && this.mInner.hasNext() ) { 18 | return true; 19 | } 20 | while( this.mOuter.hasNext() ){ 21 | this.mInner = ((Collection) this.mOuter.next()).iterator(); 22 | if( this.mInner.hasNext() ){ 23 | return true; 24 | } 25 | } 26 | return false; 27 | } 28 | 29 | public Object next() { 30 | if ( this.hasNext() ) 31 | return this.mInner.next(); 32 | 33 | throw new NoSuchElementException(); 34 | } 35 | 36 | public void remove() throws UnsupportedOperationException { 37 | throw new UnsupportedOperationException(); 38 | } 39 | 40 | } 41 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/common/metadata/attrib/AttrAbstractTextTest.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.metadata.attrib; 2 | 3 | import org.realtors.rets.common.metadata.AttrType; 4 | import org.realtors.rets.common.metadata.MetaParseException; 5 | 6 | public class AttrAbstractTextTest extends AttrTypeTest { 7 | @Override 8 | protected void setUp() { 9 | this.mShort = new AttrAbstractText(1, 10) { 10 | @Override 11 | protected void checkContent(String value) throws MetaParseException { 12 | return; 13 | } 14 | }; 15 | this.mLong = new AttrAbstractText(10, 20) { 16 | @Override 17 | protected void checkContent(String value) throws MetaParseException { 18 | return; 19 | } 20 | }; 21 | } 22 | 23 | public void testAttrAbstractText() throws MetaParseException { 24 | assertEquals("type is not String", String.class, this.mShort.getType()); 25 | String test = "short"; 26 | assertEquals("return object not identical", this.mShort.parse(test,true), test); 27 | } 28 | 29 | public void testTooLong() throws Exception { 30 | assertParseException(this.mShort, "way too long"); 31 | } 32 | 33 | public void testTooShort() throws Exception { 34 | assertParseException(this.mLong, "short"); 35 | } 36 | 37 | AttrType mShort, mLong; 38 | } 39 | -------------------------------------------------------------------------------- /src/test/resources/getMetadataResponse_lookupZero.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | LookupName VisibleName Version Date 4 | E_SCHOOL Elementary School District 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 5 | H_SCHOOL High School District 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 6 | AR Area 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 7 | IFT Interior Features 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 8 | VEW View 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 9 | LISTING_TYPE Listing Type 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 10 | LISTING_STATUS Listing Status 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 11 | M_SCHOOL Middle School District 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 12 | EFT Exerior Features 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 13 | 14 | 15 | LookupName VisibleName Version Date 16 | DESIGNATIONS DESIGNATIONS 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 17 | 18 | 19 | -------------------------------------------------------------------------------- /target/test-classes/getMetadataResponse_lookupZero.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | LookupName VisibleName Version Date 4 | E_SCHOOL Elementary School District 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 5 | H_SCHOOL High School District 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 6 | AR Area 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 7 | IFT Interior Features 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 8 | VEW View 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 9 | LISTING_TYPE Listing Type 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 10 | LISTING_STATUS Listing Status 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 11 | M_SCHOOL Middle School District 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 12 | EFT Exerior Features 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 13 | 14 | 15 | LookupName VisibleName Version Date 16 | DESIGNATIONS DESIGNATIONS 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/InvalidReplyCodeException.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import org.apache.commons.lang.SystemUtils; 4 | /** 5 | * Exception class for invalid reply codes from a Rets server 6 | */ 7 | public class InvalidReplyCodeException extends RetsException { 8 | private final ReplyCode mReplyCode; 9 | private String mMsg; 10 | private String mReqinfo; 11 | 12 | public InvalidReplyCodeException(int replyCodeValue) { 13 | this.mReplyCode = ReplyCode.fromValue(replyCodeValue); 14 | } 15 | 16 | public InvalidReplyCodeException(ReplyCode replyCode) { 17 | this.mReplyCode = replyCode; 18 | } 19 | 20 | @Override 21 | public String getMessage() { 22 | StringBuffer sb = new StringBuffer(this.mReplyCode.toString()); 23 | if (this.mMsg != null) { 24 | sb.append(SystemUtils.LINE_SEPARATOR + this.mMsg); 25 | } 26 | if (this.mReqinfo != null) { 27 | sb.append(SystemUtils.LINE_SEPARATOR + this.mReqinfo); 28 | } 29 | return sb.toString(); 30 | } 31 | 32 | public int getReplyCodeValue() { 33 | return this.mReplyCode.getValue(); 34 | } 35 | 36 | public void setRemoteMessage(String msg) { 37 | this.mMsg = msg; 38 | } 39 | 40 | public void setRequestInfo(String reqinfo) { 41 | this.mReqinfo = reqinfo; 42 | } 43 | 44 | } 45 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/RetsUtil.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import java.io.IOException; 4 | import java.io.InputStream; 5 | import java.io.OutputStream; 6 | 7 | import org.apache.commons.codec.DecoderException; 8 | import org.apache.commons.codec.EncoderException; 9 | import org.apache.commons.codec.net.URLCodec; 10 | import org.apache.commons.lang.exception.NestableRuntimeException; 11 | 12 | /** Random utility functions. */ 13 | public class RetsUtil { 14 | public static void copyStream(InputStream in, OutputStream out) throws IOException { 15 | byte[] buf = new byte[512]; 16 | int count; 17 | while (true) { 18 | count = in.read(buf); 19 | if (count < 1) { 20 | in.close(); 21 | out.close(); 22 | return; 23 | } 24 | while (count > 0) { 25 | out.write(buf); 26 | } 27 | } 28 | } 29 | 30 | public static String urlEncode(String string) { 31 | try { 32 | return new URLCodec().encode(string); 33 | } catch (EncoderException e) { 34 | throw new NestableRuntimeException(e); 35 | } 36 | } 37 | 38 | public static String urlDecode(String string) { 39 | try { 40 | return new URLCodec().decode(string); 41 | } catch (DecoderException e) { 42 | throw new NestableRuntimeException(e); 43 | } 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/client/getMetadataResponse_lookupZero.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | LookupName VisibleName Version Date 4 | E_SCHOOL Elementary School District 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 5 | H_SCHOOL High School District 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 6 | AR Area 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 7 | IFT Interior Features 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 8 | VEW View 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 9 | LISTING_TYPE Listing Type 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 10 | LISTING_STATUS Listing Status 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 11 | M_SCHOOL Middle School District 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 12 | EFT Exerior Features 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 13 | 14 | 15 | LookupName VisibleName Version Date 16 | DESIGNATIONS DESIGNATIONS 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 17 | 18 | 19 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/InvalidReplyCodeException.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import org.apache.commons.lang.SystemUtils; 4 | /** 5 | * Exception class for invalid reply codes from a Rets server 6 | */ 7 | public class InvalidReplyCodeException extends RetsException { 8 | private final ReplyCode mReplyCode; 9 | private String mMsg; 10 | private String mReqinfo; 11 | 12 | public InvalidReplyCodeException(int replyCodeValue) { 13 | this.mReplyCode = ReplyCode.fromValue(replyCodeValue); 14 | } 15 | 16 | public InvalidReplyCodeException(ReplyCode replyCode) { 17 | this.mReplyCode = replyCode; 18 | } 19 | 20 | @Override 21 | public String getMessage() { 22 | StringBuffer sb = new StringBuffer(this.mReplyCode.toString()); 23 | if (this.mMsg != null) { 24 | sb.append(SystemUtils.LINE_SEPARATOR + this.mMsg); 25 | } 26 | if (this.mReqinfo != null) { 27 | sb.append(SystemUtils.LINE_SEPARATOR + this.mReqinfo); 28 | } 29 | return sb.toString(); 30 | } 31 | 32 | public int getReplyCodeValue() { 33 | return this.mReplyCode.getValue(); 34 | } 35 | 36 | public void setRemoteMessage(String msg) { 37 | this.mMsg = msg; 38 | } 39 | 40 | public void setRequestInfo(String reqinfo) { 41 | this.mReqinfo = reqinfo; 42 | } 43 | 44 | } 45 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/RetsUtil.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import java.io.IOException; 4 | import java.io.InputStream; 5 | import java.io.OutputStream; 6 | 7 | import org.apache.commons.codec.DecoderException; 8 | import org.apache.commons.codec.EncoderException; 9 | import org.apache.commons.codec.net.URLCodec; 10 | import org.apache.commons.lang.exception.NestableRuntimeException; 11 | 12 | /** Random utility functions. */ 13 | public class RetsUtil { 14 | public static void copyStream(InputStream in, OutputStream out) throws IOException { 15 | byte[] buf = new byte[512]; 16 | int count; 17 | while (true) { 18 | count = in.read(buf); 19 | if (count < 1) { 20 | in.close(); 21 | out.close(); 22 | return; 23 | } 24 | while (count > 0) { 25 | out.write(buf); 26 | } 27 | } 28 | } 29 | 30 | public static String urlEncode(String string) { 31 | try { 32 | return new URLCodec().encode(string); 33 | } catch (EncoderException e) { 34 | throw new NestableRuntimeException(e); 35 | } 36 | } 37 | 38 | public static String urlDecode(String string) { 39 | try { 40 | return new URLCodec().decode(string); 41 | } catch (DecoderException e) { 42 | throw new NestableRuntimeException(e); 43 | } 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /target/test-classes/org/realtors/rets/client/getMetadataResponse_lookupZero.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | LookupName VisibleName Version Date 4 | E_SCHOOL Elementary School District 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 5 | H_SCHOOL High School District 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 6 | AR Area 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 7 | IFT Interior Features 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 8 | VEW View 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 9 | LISTING_TYPE Listing Type 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 10 | LISTING_STATUS Listing Status 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 11 | M_SCHOOL Middle School District 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 12 | EFT Exerior Features 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 13 | 14 | 15 | LookupName VisibleName Version Date 16 | DESIGNATIONS DESIGNATIONS 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/LogoutResponse.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import org.apache.commons.logging.Log; 4 | import org.apache.commons.logging.LogFactory; 5 | 6 | public class LogoutResponse extends KeyValueResponse { 7 | private static final Log LOG = LogFactory.getLog(LogoutResponse.class); 8 | private static final String CONNECT_TIME_KEY = "ConnectTime"; 9 | private static final String BILLING_KEY = "Billing"; 10 | private static final String SIGNOFF_KEY = "SignOffMessage"; 11 | 12 | private String seconds; 13 | private String billingInfo; 14 | private String logoutMessage; 15 | 16 | @Override 17 | protected void handleKeyValue(String key, String value) throws RetsException { 18 | if (matchKey(key, CONNECT_TIME_KEY)) { 19 | this.seconds = value; 20 | } else if (matchKey(key, BILLING_KEY)) { 21 | this.billingInfo = value; 22 | } else if (matchKey(key, SIGNOFF_KEY)) { 23 | this.logoutMessage = value; 24 | } else { 25 | assertStrictWarning(LOG, "Invalid logout response key: " + key + " -> " + value); 26 | } 27 | } 28 | 29 | public String getSeconds() { 30 | return this.seconds; 31 | } 32 | 33 | public String getBillingInfo() { 34 | return this.billingInfo; 35 | } 36 | 37 | public String getLogoutMessage() { 38 | return this.logoutMessage; 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/LogoutResponse.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import org.apache.commons.logging.Log; 4 | import org.apache.commons.logging.LogFactory; 5 | 6 | public class LogoutResponse extends KeyValueResponse { 7 | private static final Log LOG = LogFactory.getLog(LogoutResponse.class); 8 | private static final String CONNECT_TIME_KEY = "ConnectTime"; 9 | private static final String BILLING_KEY = "Billing"; 10 | private static final String SIGNOFF_KEY = "SignOffMessage"; 11 | 12 | private String seconds; 13 | private String billingInfo; 14 | private String logoutMessage; 15 | 16 | @Override 17 | protected void handleKeyValue(String key, String value) throws RetsException { 18 | if (matchKey(key, CONNECT_TIME_KEY)) { 19 | this.seconds = value; 20 | } else if (matchKey(key, BILLING_KEY)) { 21 | this.billingInfo = value; 22 | } else if (matchKey(key, SIGNOFF_KEY)) { 23 | this.logoutMessage = value; 24 | } else { 25 | assertStrictWarning(LOG, "Invalid logout response key: " + key + " -> " + value); 26 | } 27 | } 28 | 29 | public String getSeconds() { 30 | return this.seconds; 31 | } 32 | 33 | public String getBillingInfo() { 34 | return this.billingInfo; 35 | } 36 | 37 | public String getLogoutMessage() { 38 | return this.logoutMessage; 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/metadata/types/MEditMask.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.metadata.types; 2 | 3 | import java.util.Map; 4 | 5 | import org.realtors.rets.common.metadata.MetaObject; 6 | import org.realtors.rets.common.metadata.MetadataType; 7 | 8 | public class MEditMask extends MetaObject { 9 | public static final String METADATAENTRYID = "MetadataEntryID"; 10 | public static final String EDITMASKID = "EditMaskID"; 11 | public static final String VALUE = "Value"; 12 | 13 | public MEditMask() { 14 | this(DEFAULT_PARSING); 15 | } 16 | 17 | public MEditMask(boolean strictParsing) { 18 | super(strictParsing); 19 | } 20 | 21 | public String getMetadataEntryID() { 22 | return getStringAttribute(METADATAENTRYID); 23 | } 24 | 25 | public String getEditMaskID() { 26 | return getStringAttribute(EDITMASKID); 27 | } 28 | 29 | public String getValue() { 30 | return getStringAttribute(VALUE); 31 | } 32 | 33 | @Override 34 | public MetadataType[] getChildTypes() { 35 | return sNoChildren; 36 | } 37 | 38 | @Override 39 | protected String getIdAttr() { 40 | return EDITMASKID; 41 | } 42 | 43 | @Override 44 | protected void addAttributesToMap(Map attributeMap) { 45 | attributeMap.put(METADATAENTRYID, sAttrMetadataEntryId); 46 | attributeMap.put(EDITMASKID, sAlphanum32); 47 | attributeMap.put(VALUE, sText256); 48 | } 49 | 50 | } 51 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/metadata/types/MEditMask.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.metadata.types; 2 | 3 | import java.util.Map; 4 | 5 | import org.realtors.rets.common.metadata.MetaObject; 6 | import org.realtors.rets.common.metadata.MetadataType; 7 | 8 | public class MEditMask extends MetaObject { 9 | public static final String METADATAENTRYID = "MetadataEntryID"; 10 | public static final String EDITMASKID = "EditMaskID"; 11 | public static final String VALUE = "Value"; 12 | 13 | public MEditMask() { 14 | this(DEFAULT_PARSING); 15 | } 16 | 17 | public MEditMask(boolean strictParsing) { 18 | super(strictParsing); 19 | } 20 | 21 | public String getMetadataEntryID() { 22 | return getStringAttribute(METADATAENTRYID); 23 | } 24 | 25 | public String getEditMaskID() { 26 | return getStringAttribute(EDITMASKID); 27 | } 28 | 29 | public String getValue() { 30 | return getStringAttribute(VALUE); 31 | } 32 | 33 | @Override 34 | public MetadataType[] getChildTypes() { 35 | return sNoChildren; 36 | } 37 | 38 | @Override 39 | protected String getIdAttr() { 40 | return EDITMASKID; 41 | } 42 | 43 | @Override 44 | protected void addAttributesToMap(Map attributeMap) { 45 | attributeMap.put(METADATAENTRYID, sAttrMetadataEntryId); 46 | attributeMap.put(EDITMASKID, sAlphanum32); 47 | attributeMap.put(VALUE, sText256); 48 | } 49 | 50 | } 51 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/metadata/types/MSearchHelp.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.metadata.types; 2 | 3 | import java.util.Map; 4 | 5 | import org.realtors.rets.common.metadata.MetaObject; 6 | import org.realtors.rets.common.metadata.MetadataType; 7 | 8 | public class MSearchHelp extends MetaObject { 9 | public static final String METADATAENTRYID = "MetadataEntryID"; 10 | public static final String SEARCHHELPID = "SearchHelpID"; 11 | public static final String VALUE = "Value"; 12 | 13 | public MSearchHelp() { 14 | this(DEFAULT_PARSING); 15 | } 16 | 17 | public MSearchHelp(boolean strictParsing) { 18 | super(strictParsing); 19 | } 20 | 21 | public String getMetadataEntryID() { 22 | return getStringAttribute(METADATAENTRYID); 23 | } 24 | 25 | public String getSearchHelpID() { 26 | return getStringAttribute(SEARCHHELPID); 27 | } 28 | 29 | public String getValue() { 30 | return getStringAttribute(VALUE); 31 | } 32 | 33 | @Override 34 | public MetadataType[] getChildTypes() { 35 | return sNoChildren; 36 | } 37 | 38 | @Override 39 | protected String getIdAttr() { 40 | return SEARCHHELPID; 41 | } 42 | 43 | @Override 44 | protected void addAttributesToMap(Map attributeMap) { 45 | attributeMap.put(METADATAENTRYID, sAttrMetadataEntryId); 46 | attributeMap.put(SEARCHHELPID, sAlphanum32); 47 | attributeMap.put(VALUE, sText1024); 48 | } 49 | 50 | } 51 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/client/RetsTestCase.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import java.io.InputStream; 4 | 5 | import junit.framework.TestCase; 6 | 7 | public abstract class RetsTestCase extends TestCase { 8 | protected static InputStream getResource(String name) { 9 | ClassLoader cl = Thread.currentThread().getContextClassLoader(); 10 | return cl.getResourceAsStream("org/realtors/rets/client/" + name); 11 | } 12 | 13 | public void assertEquals(String message, Object[] expected, Object[] actual) { 14 | boolean success; 15 | if (expected.length == actual.length) { 16 | success = true; 17 | for (int i = 0; i < expected.length; i++) { 18 | success = true; 19 | if (!expected[i].equals(actual[i])) { 20 | success = false; 21 | break; 22 | } 23 | } 24 | } else { 25 | success = false; 26 | } 27 | if (!success) { 28 | fail(message + " expected: " + arrayToString(expected) + " but got: " + arrayToString((actual))); 29 | } 30 | } 31 | 32 | private String arrayToString(Object[] array) { 33 | StringBuffer sb = new StringBuffer(); 34 | sb.append("{"); 35 | for (int i = 0; i < array.length; i++) { 36 | Object o = array[i]; 37 | if (i > 0) { 38 | sb.append(", "); 39 | } 40 | sb.append("\""); 41 | sb.append(o.toString()); 42 | sb.append("\""); 43 | } 44 | sb.append("}"); 45 | return sb.toString(); 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/metadata/types/MUpdateHelp.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.metadata.types; 2 | 3 | import java.util.Map; 4 | 5 | import org.realtors.rets.common.metadata.MetaObject; 6 | import org.realtors.rets.common.metadata.MetadataType; 7 | 8 | public class MUpdateHelp extends MetaObject { 9 | public static final String METADATAENTRYID = "MetadataEntryID"; 10 | public static final String UPDATEHELPID = "UpdateHelpID"; 11 | public static final String VALUE = "Value"; 12 | 13 | public MUpdateHelp() { 14 | this(DEFAULT_PARSING); 15 | } 16 | 17 | public MUpdateHelp(boolean strictParsing) { 18 | super(strictParsing); 19 | } 20 | 21 | public String getMetadataEntryID() { 22 | return getStringAttribute(METADATAENTRYID); 23 | } 24 | 25 | public String getUpdateHelpID() { 26 | return getStringAttribute(UPDATEHELPID); 27 | } 28 | 29 | public String getValue() { 30 | return getStringAttribute(VALUE); 31 | } 32 | 33 | @Override 34 | public MetadataType[] getChildTypes() { 35 | return sNoChildren; 36 | } 37 | 38 | @Override 39 | protected String getIdAttr() { 40 | return UPDATEHELPID; 41 | } 42 | 43 | @Override 44 | protected void addAttributesToMap(Map attributeMap) { 45 | attributeMap.put(METADATAENTRYID, sAttrMetadataEntryId); 46 | attributeMap.put(UPDATEHELPID, sAlphanum32); 47 | attributeMap.put(VALUE, sText1024); 48 | } 49 | 50 | } 51 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/metadata/types/MSearchHelp.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.metadata.types; 2 | 3 | import java.util.Map; 4 | 5 | import org.realtors.rets.common.metadata.MetaObject; 6 | import org.realtors.rets.common.metadata.MetadataType; 7 | 8 | public class MSearchHelp extends MetaObject { 9 | public static final String METADATAENTRYID = "MetadataEntryID"; 10 | public static final String SEARCHHELPID = "SearchHelpID"; 11 | public static final String VALUE = "Value"; 12 | 13 | public MSearchHelp() { 14 | this(DEFAULT_PARSING); 15 | } 16 | 17 | public MSearchHelp(boolean strictParsing) { 18 | super(strictParsing); 19 | } 20 | 21 | public String getMetadataEntryID() { 22 | return getStringAttribute(METADATAENTRYID); 23 | } 24 | 25 | public String getSearchHelpID() { 26 | return getStringAttribute(SEARCHHELPID); 27 | } 28 | 29 | public String getValue() { 30 | return getStringAttribute(VALUE); 31 | } 32 | 33 | @Override 34 | public MetadataType[] getChildTypes() { 35 | return sNoChildren; 36 | } 37 | 38 | @Override 39 | protected String getIdAttr() { 40 | return SEARCHHELPID; 41 | } 42 | 43 | @Override 44 | protected void addAttributesToMap(Map attributeMap) { 45 | attributeMap.put(METADATAENTRYID, sAttrMetadataEntryId); 46 | attributeMap.put(SEARCHHELPID, sAlphanum32); 47 | attributeMap.put(VALUE, sText1024); 48 | } 49 | 50 | } 51 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/metadata/types/MUpdateHelp.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.metadata.types; 2 | 3 | import java.util.Map; 4 | 5 | import org.realtors.rets.common.metadata.MetaObject; 6 | import org.realtors.rets.common.metadata.MetadataType; 7 | 8 | public class MUpdateHelp extends MetaObject { 9 | public static final String METADATAENTRYID = "MetadataEntryID"; 10 | public static final String UPDATEHELPID = "UpdateHelpID"; 11 | public static final String VALUE = "Value"; 12 | 13 | public MUpdateHelp() { 14 | this(DEFAULT_PARSING); 15 | } 16 | 17 | public MUpdateHelp(boolean strictParsing) { 18 | super(strictParsing); 19 | } 20 | 21 | public String getMetadataEntryID() { 22 | return getStringAttribute(METADATAENTRYID); 23 | } 24 | 25 | public String getUpdateHelpID() { 26 | return getStringAttribute(UPDATEHELPID); 27 | } 28 | 29 | public String getValue() { 30 | return getStringAttribute(VALUE); 31 | } 32 | 33 | @Override 34 | public MetadataType[] getChildTypes() { 35 | return sNoChildren; 36 | } 37 | 38 | @Override 39 | protected String getIdAttr() { 40 | return UPDATEHELPID; 41 | } 42 | 43 | @Override 44 | protected void addAttributesToMap(Map attributeMap) { 45 | attributeMap.put(METADATAENTRYID, sAttrMetadataEntryId); 46 | attributeMap.put(UPDATEHELPID, sAlphanum32); 47 | attributeMap.put(VALUE, sText1024); 48 | } 49 | 50 | } 51 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/metadata/attrib/AttrAbstractText.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata.attrib; 9 | 10 | import org.realtors.rets.common.metadata.AttrType; 11 | import org.realtors.rets.common.metadata.MetaParseException; 12 | 13 | public abstract class AttrAbstractText implements AttrType { 14 | protected int min; 15 | protected int max; 16 | 17 | public AttrAbstractText(int min, int max) { 18 | this.min = min; 19 | this.max = max; 20 | } 21 | 22 | 23 | public String parse(String value, boolean strict) throws MetaParseException { 24 | if( !strict ) 25 | return value; 26 | int l = value.length(); 27 | if (this.min != 0 && l < this.min) { 28 | throw new MetaParseException("Value too short (min " + this.min + "): " + l); 29 | } 30 | if (this.max != 0 && l > this.max) { 31 | throw new MetaParseException("Value too long (max " + this.max + "): " + l); 32 | } 33 | checkContent(value); 34 | return value; 35 | } 36 | 37 | 38 | public Class getType() { 39 | return String.class; 40 | } 41 | 42 | 43 | public String render(String value) { 44 | return value; 45 | } 46 | 47 | protected abstract void checkContent(String value) throws MetaParseException; 48 | 49 | } 50 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/metadata/attrib/AttrAbstractText.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata.attrib; 9 | 10 | import org.realtors.rets.common.metadata.AttrType; 11 | import org.realtors.rets.common.metadata.MetaParseException; 12 | 13 | public abstract class AttrAbstractText implements AttrType { 14 | protected int min; 15 | protected int max; 16 | 17 | public AttrAbstractText(int min, int max) { 18 | this.min = min; 19 | this.max = max; 20 | } 21 | 22 | 23 | public String parse(String value, boolean strict) throws MetaParseException { 24 | if( !strict ) 25 | return value; 26 | int l = value.length(); 27 | if (this.min != 0 && l < this.min) { 28 | throw new MetaParseException("Value too short (min " + this.min + "): " + l); 29 | } 30 | if (this.max != 0 && l > this.max) { 31 | throw new MetaParseException("Value too long (max " + this.max + "): " + l); 32 | } 33 | checkContent(value); 34 | return value; 35 | } 36 | 37 | 38 | public Class getType() { 39 | return String.class; 40 | } 41 | 42 | 43 | public String render(String value) { 44 | return value; 45 | } 46 | 47 | protected abstract void checkContent(String value) throws MetaParseException; 48 | 49 | } 50 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/common/metadata/attrib/AttrBoolean.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata.attrib; 9 | 10 | import org.realtors.rets.common.metadata.AttrType; 11 | import org.realtors.rets.common.metadata.MetaParseException; 12 | 13 | public class AttrBoolean implements AttrType { 14 | public Boolean parse(String value, boolean strict) throws MetaParseException { 15 | if (value.equals("1")) { 16 | return Boolean.TRUE; 17 | } 18 | if (value.equals("0")) { 19 | return Boolean.FALSE; 20 | } 21 | 22 | if (value.equalsIgnoreCase("true")) { 23 | return Boolean.TRUE; 24 | } 25 | if (value.equalsIgnoreCase("false")) { 26 | return Boolean.FALSE; 27 | } 28 | 29 | if (value.equalsIgnoreCase("Y")) { 30 | return Boolean.TRUE; 31 | } 32 | if (value.equalsIgnoreCase("N")) { 33 | return Boolean.FALSE; 34 | } 35 | 36 | if (value.equals("")) { 37 | return Boolean.FALSE; 38 | } 39 | 40 | if( strict ) 41 | throw new MetaParseException("Invalid boolean value: " + value); 42 | return false; 43 | } 44 | 45 | public String render(Boolean value) { 46 | if( value.booleanValue() ) return "1"; 47 | 48 | return "0"; 49 | } 50 | 51 | public Class getType() { 52 | return Boolean.class; 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /src/test/java/org/realtors/rets/common/metadata/attrib/AttrAlphanumTest.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.common.metadata.attrib; 2 | 3 | import org.realtors.rets.common.metadata.AttrType; 4 | import org.realtors.rets.common.metadata.MetaParseException; 5 | 6 | public class AttrAlphanumTest extends AttrTypeTest { 7 | @Override 8 | protected void setUp() throws Exception { 9 | this.mShort = new AttrAlphanum(1, 10); 10 | this.mLong = new AttrAlphanum(10, 100); 11 | } 12 | 13 | public void testAlphanum() throws MetaParseException { 14 | String test1 = "1234567890"; 15 | String test2 = "abcdefghijklmnopqrstuvwxyz"; 16 | String test3 = test2.toUpperCase(); 17 | // special exceptions for CRT metadata 18 | String test4 = "123-_ 456"; 19 | this.mShort.parse(test1,true); 20 | this.mLong.parse(test2,true); 21 | this.mLong.parse(test3,true); 22 | this.mShort.parse(test4,true); 23 | } 24 | 25 | public void testFailures() throws Exception { 26 | String test1 = "abcdefg%"; 27 | String test2 = "!abcdefg"; 28 | String test3 = "___^___ "; 29 | 30 | assertParseException(this.mShort, test1); 31 | assertParseException(this.mShort, test2); 32 | assertParseException(this.mShort, test3); 33 | } 34 | 35 | public void testLength() throws Exception { 36 | String test1 = "abcdefghij12345"; 37 | String test2 = "12345"; 38 | assertParseException(this.mShort, test1); 39 | assertParseException(this.mLong, test2); 40 | } 41 | 42 | private AttrType mShort; 43 | 44 | private AttrType mLong; 45 | } 46 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/common/metadata/attrib/AttrBoolean.java: -------------------------------------------------------------------------------- 1 | /* 2 | * cart: CRT's Awesome RETS Tool 3 | * 4 | * Author: David Terrell 5 | * Copyright (c) 2003, The National Association of REALTORS 6 | * Distributed under a BSD-style license. See LICENSE.TXT for details. 7 | */ 8 | package org.realtors.rets.common.metadata.attrib; 9 | 10 | import org.realtors.rets.common.metadata.AttrType; 11 | import org.realtors.rets.common.metadata.MetaParseException; 12 | 13 | public class AttrBoolean implements AttrType { 14 | public Boolean parse(String value, boolean strict) throws MetaParseException { 15 | if (value.equals("1")) { 16 | return Boolean.TRUE; 17 | } 18 | if (value.equals("0")) { 19 | return Boolean.FALSE; 20 | } 21 | 22 | if (value.equalsIgnoreCase("true")) { 23 | return Boolean.TRUE; 24 | } 25 | if (value.equalsIgnoreCase("false")) { 26 | return Boolean.FALSE; 27 | } 28 | 29 | if (value.equalsIgnoreCase("Y")) { 30 | return Boolean.TRUE; 31 | } 32 | if (value.equalsIgnoreCase("N")) { 33 | return Boolean.FALSE; 34 | } 35 | 36 | if (value.equals("")) { 37 | return Boolean.FALSE; 38 | } 39 | 40 | if( strict ) 41 | throw new MetaParseException("Invalid boolean value: " + value); 42 | return false; 43 | } 44 | 45 | public String render(Boolean value) { 46 | if( value.booleanValue() ) return "1"; 47 | 48 | return "0"; 49 | } 50 | 51 | public Class getType() { 52 | return Boolean.class; 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /src/main/java/org/realtors/rets/client/SingleObjectResponse.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import java.io.InputStream; 4 | import java.util.Map; 5 | 6 | import org.realtors.rets.common.util.CaseInsensitiveTreeMap; 7 | 8 | /** 9 | * Representation of a single object returned 10 | * from a RETS server. 11 | * 12 | * @author jrayburn 13 | */ 14 | public class SingleObjectResponse { 15 | 16 | public static final String CONTENT_TYPE = "Content-Type"; 17 | public static final String LOCATION = "Location"; 18 | public static final String CONTENT_DESCRIPTION = "Content-Description"; 19 | public static final String OBJECT_ID = "Object-ID"; 20 | public static final String CONTENT_ID = "Content-ID"; 21 | 22 | private Map headers; 23 | private InputStream inputStream; 24 | 25 | public SingleObjectResponse(Map headers, InputStream in) { 26 | this.headers = new CaseInsensitiveTreeMap(headers); 27 | this.inputStream = in; 28 | } 29 | 30 | public String getType() { 31 | return (String) this.headers.get(CONTENT_TYPE); 32 | } 33 | 34 | public String getContentID() { 35 | return (String) this.headers.get(CONTENT_ID); 36 | } 37 | 38 | public String getObjectID() { 39 | return (String) this.headers.get(OBJECT_ID); 40 | } 41 | 42 | public String getDescription() { 43 | return (String) this.headers.get(CONTENT_DESCRIPTION); 44 | } 45 | 46 | public String getLocation() { 47 | return (String) this.headers.get(LOCATION); 48 | } 49 | 50 | public InputStream getInputStream() { 51 | return this.inputStream; 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /target/filtered-sources/java/org/realtors/rets/client/SingleObjectResponse.java: -------------------------------------------------------------------------------- 1 | package org.realtors.rets.client; 2 | 3 | import java.io.InputStream; 4 | import java.util.Map; 5 | 6 | import org.realtors.rets.common.util.CaseInsensitiveTreeMap; 7 | 8 | /** 9 | * Representation of a single object returned 10 | * from a RETS server. 11 | * 12 | * @author jrayburn 13 | */ 14 | public class SingleObjectResponse { 15 | 16 | public static final String CONTENT_TYPE = "Content-Type"; 17 | public static final String LOCATION = "Location"; 18 | public static final String CONTENT_DESCRIPTION = "Content-Description"; 19 | public static final String OBJECT_ID = "Object-ID"; 20 | public static final String CONTENT_ID = "Content-ID"; 21 | 22 | private Map headers; 23 | private InputStream inputStream; 24 | 25 | public SingleObjectResponse(Map headers, InputStream in) { 26 | this.headers = new CaseInsensitiveTreeMap(headers); 27 | this.inputStream = in; 28 | } 29 | 30 | public String getType() { 31 | return (String) this.headers.get(CONTENT_TYPE); 32 | } 33 | 34 | public String getContentID() { 35 | return (String) this.headers.get(CONTENT_ID); 36 | } 37 | 38 | public String getObjectID() { 39 | return (String) this.headers.get(OBJECT_ID); 40 | } 41 | 42 | public String getDescription() { 43 | return (String) this.headers.get(CONTENT_DESCRIPTION); 44 | } 45 | 46 | public String getLocation() { 47 | return (String) this.headers.get(LOCATION); 48 | } 49 | 50 | public InputStream getInputStream() { 51 | return this.inputStream; 52 | } 53 | } 54 | --------------------------------------------------------------------------------