From 79a2ebf081c2c7df7f672f30e8ba545d2ed0828c Mon Sep 17 00:00:00 2001 From: YuCheng Hu Date: Tue, 30 Nov 2021 11:04:50 -0500 Subject: [PATCH 1/4] USRE-87 remove the file and delete test case xml --- .../usreio/client/GetMetadataResponse.java | 8 ++-- .../usreio/client/MetaCollectorAdapter.java | 6 +-- .../com/ossez/usreio/client/RetsSession.java | 4 +- .../ossez/usreio/client/RetsTransport.java | 8 ++-- .../{ => tests}/common/metadata/AttrType.java | 2 +- .../common/metadata/JDomCompactBuilder.java | 34 ++++++++-------- .../common/metadata/JDomStandardBuilder.java | 38 +++++++++--------- .../common/metadata/MetaCollector.java | 2 +- .../common/metadata/MetaObject.java | 18 ++++----- .../common/metadata/MetaParseException.java | 2 +- .../{ => tests}/common/metadata/Metadata.java | 26 ++++++------ .../common/metadata/MetadataBuilder.java | 38 +++++++++--------- .../common/metadata/MetadataElement.java | 2 +- .../common/metadata/MetadataException.java | 2 +- .../common/metadata/MetadataType.java | 2 +- .../metadata/attrib/AttrAbstractText.java | 6 +-- .../common/metadata/attrib/AttrAlphanum.java | 4 +- .../common/metadata/attrib/AttrBoolean.java | 6 +-- .../common/metadata/attrib/AttrDate.java | 6 +-- .../common/metadata/attrib/AttrEnum.java | 4 +- .../metadata/attrib/AttrGenericText.java | 4 +- .../common/metadata/attrib/AttrNumeric.java | 6 +-- .../metadata/attrib/AttrNumericPositive.java | 6 +-- .../common/metadata/attrib/AttrPlaintext.java | 4 +- .../common/metadata/attrib/AttrText.java | 4 +- .../common/metadata/attrib/AttrVersion.java | 6 +-- .../common/metadata/types/MClass.java | 6 +-- .../common/metadata/types/MEditMask.java | 6 +-- .../common/metadata/types/MForeignKey.java | 6 +-- .../common/metadata/types/MLookup.java | 6 +-- .../common/metadata/types/MLookupType.java | 6 +-- .../common/metadata/types/MObject.java | 6 +-- .../common/metadata/types/MResource.java | 6 +-- .../common/metadata/types/MSearchHelp.java | 6 +-- .../common/metadata/types/MSystem.java | 6 +-- .../common/metadata/types/MTable.java | 10 ++--- .../common/metadata/types/MUpdate.java | 6 +-- .../common/metadata/types/MUpdateHelp.java | 6 +-- .../common/metadata/types/MUpdateType.java | 10 ++--- .../metadata/types/MValidationExpression.java | 10 ++--- .../metadata/types/MValidationExternal.java | 6 +-- .../types/MValidationExternalType.java | 6 +-- .../metadata/types/MValidationLookup.java | 6 +-- .../metadata/types/MValidationLookupType.java | 6 +-- .../com/ossez/usreio/client/2237858_0.jpg | Bin 76861 -> 0 bytes .../client/getMetadataResponse_lookupZero.xml | 18 --------- .../client/getMetadataResponse_noRecords.xml | 1 - .../client/getMetadataResponse_system.xml | 6 --- .../client/getMetadataResponse_updateType.xml | 7 ---- .../ossez/usreio/client/login_lower_case.xml | 17 -------- .../ossez/usreio/client/logout_lower_case.xml | 6 --- .../ossez/usreio/client/logout_no_equals.xml | 4 -- .../ossez/usreio/client/logout_valid10.xml | 5 --- .../ossez/usreio/client/logout_valid15.xml | 6 --- .../usreio/{ => tests}/client/AllTests.java | 2 +- .../client}/ConnectionTest.java | 2 +- .../client/GetMetadataRequestTest.java | 6 ++- .../client/GetMetadataResponseTest.java | 2 +- .../client/GetObjectResponseIteratorTest.java | 5 ++- .../{ => tests}/client/IOFailReader.java | 2 +- .../{ => tests}/client/LoginRequestTest.java | 4 +- .../{ => tests}/client/LoginResponseTest.java | 6 ++- .../client/LogoutResponseTest.java | 6 ++- .../tests => tests/client}/MetadataTest.java | 2 +- .../client/RetsGetMetadataExample.java | 8 ++-- .../client}/RetsGetObjectExample.java | 2 +- .../client}/RetsGetObjectURLExample.java | 2 +- .../client}/RetsSearchExample.java | 2 +- .../{ => tests}/client/RetsSessionTest.java | 10 ++--- .../{ => tests}/client/RetsTestCase.java | 2 +- .../{ => tests}/client/RetsVersionTest.java | 2 +- .../client/SearchResultHandlerTest.java | 3 +- .../client/SearchResultImplTest.java | 4 +- .../client/SingleObjectResponseTest.java | 3 +- .../StreamingSearchResultProcessorTest.java | 3 +- .../client/TestInvalidReplyCodeHandler.java | 5 ++- .../client/objects-missing.multipart | Bin .../common/metadata/MetaObjectTest.java | 2 +- .../common/metadata/MetadataTestCase.java | 2 +- .../common/metadata/TestMetaObject.java | 2 +- .../metadata/attrib/AttrAbstractTextTest.java | 6 +-- .../metadata/attrib/AttrAlphanumTest.java | 6 +-- .../metadata/attrib/AttrBooleanTest.java | 6 +-- .../common/metadata/attrib/AttrDateTest.java | 2 +- .../common/metadata/attrib/AttrEnumTest.java | 4 +- .../metadata/attrib/AttrGenericTextTest.java | 4 +- .../metadata/attrib/AttrNumericTest.java | 4 +- .../metadata/attrib/AttrPlaintextTest.java | 4 +- .../common/metadata/attrib/AttrTextTest.java | 4 +- .../common/metadata/attrib/AttrTypeTest.java | 8 ++-- .../metadata/attrib/AttrVersionTest.java | 6 +-- .../util/CaseInsensitiveTreeMapTest.java | 3 +- src/test/resources/login_lower_case.xml | 33 ++++++++------- .../client => resources}/login_valid10.xml | 0 .../client => resources}/login_valid15.xml | 0 95 files changed, 285 insertions(+), 332 deletions(-) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/AttrType.java (89%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/JDomCompactBuilder.java (95%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/JDomStandardBuilder.java (94%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/MetaCollector.java (92%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/MetaObject.java (94%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/MetaParseException.java (91%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/Metadata.java (81%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/MetadataBuilder.java (78%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/MetadataElement.java (94%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/MetadataException.java (91%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/MetadataType.java (92%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrAbstractText.java (85%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrAlphanum.java (85%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrBoolean.java (85%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrDate.java (90%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrEnum.java (86%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrGenericText.java (85%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrNumeric.java (77%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrNumericPositive.java (81%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrPlaintext.java (84%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrText.java (85%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrVersion.java (91%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/types/MClass.java (95%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/types/MEditMask.java (84%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/types/MForeignKey.java (92%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/types/MLookup.java (92%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/types/MLookupType.java (86%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/types/MObject.java (91%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/types/MResource.java (97%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/types/MSearchHelp.java (84%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/types/MSystem.java (92%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/types/MTable.java (95%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/types/MUpdate.java (92%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/types/MUpdateHelp.java (85%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/types/MUpdateType.java (89%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/types/MValidationExpression.java (83%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/types/MValidationExternal.java (91%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/types/MValidationExternalType.java (87%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/types/MValidationLookup.java (91%) rename src/main/java/com/ossez/usreio/{ => tests}/common/metadata/types/MValidationLookupType.java (87%) delete mode 100644 src/test/java/com/ossez/usreio/client/2237858_0.jpg delete mode 100644 src/test/java/com/ossez/usreio/client/getMetadataResponse_lookupZero.xml delete mode 100644 src/test/java/com/ossez/usreio/client/getMetadataResponse_noRecords.xml delete mode 100644 src/test/java/com/ossez/usreio/client/getMetadataResponse_system.xml delete mode 100644 src/test/java/com/ossez/usreio/client/getMetadataResponse_updateType.xml delete mode 100644 src/test/java/com/ossez/usreio/client/login_lower_case.xml delete mode 100644 src/test/java/com/ossez/usreio/client/logout_lower_case.xml delete mode 100644 src/test/java/com/ossez/usreio/client/logout_no_equals.xml delete mode 100644 src/test/java/com/ossez/usreio/client/logout_valid10.xml delete mode 100644 src/test/java/com/ossez/usreio/client/logout_valid15.xml rename src/test/java/com/ossez/usreio/{ => tests}/client/AllTests.java (96%) rename src/test/java/com/ossez/usreio/{client/tests => tests/client}/ConnectionTest.java (97%) rename src/test/java/com/ossez/usreio/{ => tests}/client/GetMetadataRequestTest.java (91%) rename src/test/java/com/ossez/usreio/{ => tests}/client/GetMetadataResponseTest.java (99%) rename src/test/java/com/ossez/usreio/{ => tests}/client/GetObjectResponseIteratorTest.java (97%) rename src/test/java/com/ossez/usreio/{ => tests}/client/IOFailReader.java (94%) rename src/test/java/com/ossez/usreio/{ => tests}/client/LoginRequestTest.java (90%) rename src/test/java/com/ossez/usreio/{ => tests}/client/LoginResponseTest.java (97%) rename src/test/java/com/ossez/usreio/{ => tests}/client/LogoutResponseTest.java (90%) rename src/test/java/com/ossez/usreio/{client/tests => tests/client}/MetadataTest.java (97%) rename src/test/java/com/ossez/usreio/{ => tests}/client/RetsGetMetadataExample.java (90%) rename src/test/java/com/ossez/usreio/{examples => tests/client}/RetsGetObjectExample.java (98%) rename src/test/java/com/ossez/usreio/{examples => tests/client}/RetsGetObjectURLExample.java (98%) rename src/test/java/com/ossez/usreio/{examples => tests/client}/RetsSearchExample.java (98%) rename src/test/java/com/ossez/usreio/{ => tests}/client/RetsSessionTest.java (89%) rename src/test/java/com/ossez/usreio/{ => tests}/client/RetsTestCase.java (98%) rename src/test/java/com/ossez/usreio/{ => tests}/client/RetsVersionTest.java (97%) rename src/test/java/com/ossez/usreio/{ => tests}/client/SearchResultHandlerTest.java (98%) rename src/test/java/com/ossez/usreio/{ => tests}/client/SearchResultImplTest.java (95%) rename src/test/java/com/ossez/usreio/{ => tests}/client/SingleObjectResponseTest.java (90%) rename src/test/java/com/ossez/usreio/{ => tests}/client/StreamingSearchResultProcessorTest.java (99%) rename src/test/java/com/ossez/usreio/{ => tests}/client/TestInvalidReplyCodeHandler.java (74%) rename src/test/java/com/ossez/usreio/{ => tests}/client/objects-missing.multipart (100%) rename src/test/java/com/ossez/usreio/{ => tests}/common/metadata/MetaObjectTest.java (97%) rename src/test/java/com/ossez/usreio/{ => tests}/common/metadata/MetadataTestCase.java (87%) rename src/test/java/com/ossez/usreio/{ => tests}/common/metadata/TestMetaObject.java (95%) rename src/test/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrAbstractTextTest.java (83%) rename src/test/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrAlphanumTest.java (86%) rename src/test/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrBooleanTest.java (88%) rename src/test/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrDateTest.java (94%) rename src/test/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrEnumTest.java (80%) rename src/test/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrGenericTextTest.java (80%) rename src/test/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrNumericTest.java (84%) rename src/test/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrPlaintextTest.java (86%) rename src/test/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrTextTest.java (82%) rename src/test/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrTypeTest.java (73%) rename src/test/java/com/ossez/usreio/{ => tests}/common/metadata/attrib/AttrVersionTest.java (82%) rename src/test/java/com/ossez/usreio/{ => tests}/common/util/CaseInsensitiveTreeMapTest.java (92%) rename src/test/{java/com/ossez/usreio/client => resources}/login_valid10.xml (100%) rename src/test/{java/com/ossez/usreio/client => resources}/login_valid15.xml (100%) diff --git a/src/main/java/com/ossez/usreio/client/GetMetadataResponse.java b/src/main/java/com/ossez/usreio/client/GetMetadataResponse.java index 81d5f59..f8af42c 100644 --- a/src/main/java/com/ossez/usreio/client/GetMetadataResponse.java +++ b/src/main/java/com/ossez/usreio/client/GetMetadataResponse.java @@ -3,10 +3,10 @@ package com.ossez.usreio.client; import java.io.InputStream; import java.util.List; -import com.ossez.usreio.common.metadata.JDomCompactBuilder; -import com.ossez.usreio.common.metadata.JDomStandardBuilder; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataException; +import com.ossez.usreio.tests.common.metadata.JDomCompactBuilder; +import com.ossez.usreio.tests.common.metadata.JDomStandardBuilder; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataException; import org.apache.commons.lang3.math.NumberUtils; import org.dom4j.Document; import org.dom4j.DocumentException; diff --git a/src/main/java/com/ossez/usreio/client/MetaCollectorAdapter.java b/src/main/java/com/ossez/usreio/client/MetaCollectorAdapter.java index c1299da..282a9bc 100644 --- a/src/main/java/com/ossez/usreio/client/MetaCollectorAdapter.java +++ b/src/main/java/com/ossez/usreio/client/MetaCollectorAdapter.java @@ -1,8 +1,8 @@ package com.ossez.usreio.client; -import com.ossez.usreio.common.metadata.MetaCollector; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataType; +import com.ossez.usreio.tests.common.metadata.MetaCollector; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataType; import org.apache.commons.lang3.StringUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; diff --git a/src/main/java/com/ossez/usreio/client/RetsSession.java b/src/main/java/com/ossez/usreio/client/RetsSession.java index a5c8d48..6e91e1e 100644 --- a/src/main/java/com/ossez/usreio/client/RetsSession.java +++ b/src/main/java/com/ossez/usreio/client/RetsSession.java @@ -2,8 +2,8 @@ package com.ossez.usreio.client; import java.util.Map; -import com.ossez.usreio.common.metadata.Metadata; -import com.ossez.usreio.common.metadata.MetadataException; +import com.ossez.usreio.tests.common.metadata.Metadata; +import com.ossez.usreio.tests.common.metadata.MetadataException; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; diff --git a/src/main/java/com/ossez/usreio/client/RetsTransport.java b/src/main/java/com/ossez/usreio/client/RetsTransport.java index 45dc74f..dbe9775 100644 --- a/src/main/java/com/ossez/usreio/client/RetsTransport.java +++ b/src/main/java/com/ossez/usreio/client/RetsTransport.java @@ -5,10 +5,10 @@ import java.io.FileWriter; import java.util.HashMap; import java.util.Map; -import com.ossez.usreio.common.metadata.JDomCompactBuilder; -import com.ossez.usreio.common.metadata.JDomStandardBuilder; -import com.ossez.usreio.common.metadata.Metadata; -import com.ossez.usreio.common.metadata.MetadataBuilder; +import com.ossez.usreio.tests.common.metadata.JDomCompactBuilder; +import com.ossez.usreio.tests.common.metadata.JDomStandardBuilder; +import com.ossez.usreio.tests.common.metadata.Metadata; +import com.ossez.usreio.tests.common.metadata.MetadataBuilder; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.dom4j.Document; diff --git a/src/main/java/com/ossez/usreio/common/metadata/AttrType.java b/src/main/java/com/ossez/usreio/tests/common/metadata/AttrType.java similarity index 89% rename from src/main/java/com/ossez/usreio/common/metadata/AttrType.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/AttrType.java index b63d815..dc4a680 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/AttrType.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/AttrType.java @@ -5,7 +5,7 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata; +package com.ossez.usreio.tests.common.metadata; import java.io.Serializable; diff --git a/src/main/java/com/ossez/usreio/common/metadata/JDomCompactBuilder.java b/src/main/java/com/ossez/usreio/tests/common/metadata/JDomCompactBuilder.java similarity index 95% rename from src/main/java/com/ossez/usreio/common/metadata/JDomCompactBuilder.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/JDomCompactBuilder.java index de8573b..d231522 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/JDomCompactBuilder.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/JDomCompactBuilder.java @@ -5,7 +5,7 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata; +package com.ossez.usreio.tests.common.metadata; import java.util.LinkedList; import java.util.List; @@ -15,22 +15,22 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.dom4j.*; -import com.ossez.usreio.common.metadata.types.MClass; -import com.ossez.usreio.common.metadata.types.MEditMask; -import com.ossez.usreio.common.metadata.types.MLookup; -import com.ossez.usreio.common.metadata.types.MLookupType; -import com.ossez.usreio.common.metadata.types.MObject; -import com.ossez.usreio.common.metadata.types.MResource; -import com.ossez.usreio.common.metadata.types.MSearchHelp; -import com.ossez.usreio.common.metadata.types.MSystem; -import com.ossez.usreio.common.metadata.types.MTable; -import com.ossez.usreio.common.metadata.types.MUpdate; -import com.ossez.usreio.common.metadata.types.MUpdateType; -import com.ossez.usreio.common.metadata.types.MValidationExpression; -import com.ossez.usreio.common.metadata.types.MValidationExternal; -import com.ossez.usreio.common.metadata.types.MValidationExternalType; -import com.ossez.usreio.common.metadata.types.MValidationLookup; -import com.ossez.usreio.common.metadata.types.MValidationLookupType; +import com.ossez.usreio.tests.common.metadata.types.MClass; +import com.ossez.usreio.tests.common.metadata.types.MEditMask; +import com.ossez.usreio.tests.common.metadata.types.MLookup; +import com.ossez.usreio.tests.common.metadata.types.MLookupType; +import com.ossez.usreio.tests.common.metadata.types.MObject; +import com.ossez.usreio.tests.common.metadata.types.MResource; +import com.ossez.usreio.tests.common.metadata.types.MSearchHelp; +import com.ossez.usreio.tests.common.metadata.types.MSystem; +import com.ossez.usreio.tests.common.metadata.types.MTable; +import com.ossez.usreio.tests.common.metadata.types.MUpdate; +import com.ossez.usreio.tests.common.metadata.types.MUpdateType; +import com.ossez.usreio.tests.common.metadata.types.MValidationExpression; +import com.ossez.usreio.tests.common.metadata.types.MValidationExternal; +import com.ossez.usreio.tests.common.metadata.types.MValidationExternalType; +import com.ossez.usreio.tests.common.metadata.types.MValidationLookup; +import com.ossez.usreio.tests.common.metadata.types.MValidationLookupType; import org.dom4j.io.SAXReader; import org.xml.sax.InputSource; diff --git a/src/main/java/com/ossez/usreio/common/metadata/JDomStandardBuilder.java b/src/main/java/com/ossez/usreio/tests/common/metadata/JDomStandardBuilder.java similarity index 94% rename from src/main/java/com/ossez/usreio/common/metadata/JDomStandardBuilder.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/JDomStandardBuilder.java index 4f5c536..7fd0d3c 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/JDomStandardBuilder.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/JDomStandardBuilder.java @@ -5,7 +5,7 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata; +package com.ossez.usreio.tests.common.metadata; import java.util.Iterator; import java.util.LinkedList; @@ -13,24 +13,24 @@ import java.util.List; import java.util.Map; import java.util.HashMap; -import com.ossez.usreio.common.metadata.types.MClass; -import com.ossez.usreio.common.metadata.types.MEditMask; -import com.ossez.usreio.common.metadata.types.MForeignKey; -import com.ossez.usreio.common.metadata.types.MLookup; -import com.ossez.usreio.common.metadata.types.MLookupType; -import com.ossez.usreio.common.metadata.types.MObject; -import com.ossez.usreio.common.metadata.types.MResource; -import com.ossez.usreio.common.metadata.types.MSearchHelp; -import com.ossez.usreio.common.metadata.types.MSystem; -import com.ossez.usreio.common.metadata.types.MTable; -import com.ossez.usreio.common.metadata.types.MUpdate; -import com.ossez.usreio.common.metadata.types.MUpdateHelp; -import com.ossez.usreio.common.metadata.types.MUpdateType; -import com.ossez.usreio.common.metadata.types.MValidationExpression; -import com.ossez.usreio.common.metadata.types.MValidationExternal; -import com.ossez.usreio.common.metadata.types.MValidationExternalType; -import com.ossez.usreio.common.metadata.types.MValidationLookup; -import com.ossez.usreio.common.metadata.types.MValidationLookupType; +import com.ossez.usreio.tests.common.metadata.types.MClass; +import com.ossez.usreio.tests.common.metadata.types.MEditMask; +import com.ossez.usreio.tests.common.metadata.types.MForeignKey; +import com.ossez.usreio.tests.common.metadata.types.MLookup; +import com.ossez.usreio.tests.common.metadata.types.MLookupType; +import com.ossez.usreio.tests.common.metadata.types.MObject; +import com.ossez.usreio.tests.common.metadata.types.MResource; +import com.ossez.usreio.tests.common.metadata.types.MSearchHelp; +import com.ossez.usreio.tests.common.metadata.types.MSystem; +import com.ossez.usreio.tests.common.metadata.types.MTable; +import com.ossez.usreio.tests.common.metadata.types.MUpdate; +import com.ossez.usreio.tests.common.metadata.types.MUpdateHelp; +import com.ossez.usreio.tests.common.metadata.types.MUpdateType; +import com.ossez.usreio.tests.common.metadata.types.MValidationExpression; +import com.ossez.usreio.tests.common.metadata.types.MValidationExternal; +import com.ossez.usreio.tests.common.metadata.types.MValidationExternalType; +import com.ossez.usreio.tests.common.metadata.types.MValidationLookup; +import com.ossez.usreio.tests.common.metadata.types.MValidationLookupType; import org.dom4j.Attribute; import org.dom4j.Document; import org.dom4j.Element; diff --git a/src/main/java/com/ossez/usreio/common/metadata/MetaCollector.java b/src/main/java/com/ossez/usreio/tests/common/metadata/MetaCollector.java similarity index 92% rename from src/main/java/com/ossez/usreio/common/metadata/MetaCollector.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/MetaCollector.java index 7b52a8e..18ac1a8 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/MetaCollector.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/MetaCollector.java @@ -5,7 +5,7 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata; +package com.ossez.usreio.tests.common.metadata; import java.io.Serializable; diff --git a/src/main/java/com/ossez/usreio/common/metadata/MetaObject.java b/src/main/java/com/ossez/usreio/tests/common/metadata/MetaObject.java similarity index 94% rename from src/main/java/com/ossez/usreio/common/metadata/MetaObject.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/MetaObject.java index e031f52..6e30a2d 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/MetaObject.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/MetaObject.java @@ -1,4 +1,4 @@ -package com.ossez.usreio.common.metadata; +package com.ossez.usreio.tests.common.metadata; import java.io.Serializable; import java.util.Collection; @@ -15,14 +15,14 @@ import org.apache.commons.lang3.builder.HashCodeBuilder; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import com.ossez.usreio.common.metadata.attrib.AttrAlphanum; -import com.ossez.usreio.common.metadata.attrib.AttrBoolean; -import com.ossez.usreio.common.metadata.attrib.AttrDate; -import com.ossez.usreio.common.metadata.attrib.AttrNumeric; -import com.ossez.usreio.common.metadata.attrib.AttrNumericPositive; -import com.ossez.usreio.common.metadata.attrib.AttrPlaintext; -import com.ossez.usreio.common.metadata.attrib.AttrText; -import com.ossez.usreio.common.metadata.attrib.AttrVersion; +import com.ossez.usreio.tests.common.metadata.attrib.AttrAlphanum; +import com.ossez.usreio.tests.common.metadata.attrib.AttrBoolean; +import com.ossez.usreio.tests.common.metadata.attrib.AttrDate; +import com.ossez.usreio.tests.common.metadata.attrib.AttrNumeric; +import com.ossez.usreio.tests.common.metadata.attrib.AttrNumericPositive; +import com.ossez.usreio.tests.common.metadata.attrib.AttrPlaintext; +import com.ossez.usreio.tests.common.metadata.attrib.AttrText; +import com.ossez.usreio.tests.common.metadata.attrib.AttrVersion; public abstract class MetaObject implements Serializable { private static final Log LOG = LogFactory.getLog(MetaObject.class); diff --git a/src/main/java/com/ossez/usreio/common/metadata/MetaParseException.java b/src/main/java/com/ossez/usreio/tests/common/metadata/MetaParseException.java similarity index 91% rename from src/main/java/com/ossez/usreio/common/metadata/MetaParseException.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/MetaParseException.java index ec2e3b0..aa85f15 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/MetaParseException.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/MetaParseException.java @@ -5,7 +5,7 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata; +package com.ossez.usreio.tests.common.metadata; public class MetaParseException extends MetadataException { public MetaParseException() { diff --git a/src/main/java/com/ossez/usreio/common/metadata/Metadata.java b/src/main/java/com/ossez/usreio/tests/common/metadata/Metadata.java similarity index 81% rename from src/main/java/com/ossez/usreio/common/metadata/Metadata.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/Metadata.java index cedf56e..2775002 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/Metadata.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/Metadata.java @@ -1,19 +1,19 @@ -package com.ossez.usreio.common.metadata; +package com.ossez.usreio.tests.common.metadata; import java.io.Serializable; -import com.ossez.usreio.common.metadata.types.MSystem; -import com.ossez.usreio.common.metadata.types.MResource; -import com.ossez.usreio.common.metadata.types.MForeignKey; -import com.ossez.usreio.common.metadata.types.MClass; -import com.ossez.usreio.common.metadata.types.MTable; -import com.ossez.usreio.common.metadata.types.MUpdate; -import com.ossez.usreio.common.metadata.types.MUpdateType; -import com.ossez.usreio.common.metadata.types.MObject; -import com.ossez.usreio.common.metadata.types.MValidationExternal; -import com.ossez.usreio.common.metadata.types.MValidationLookup; -import com.ossez.usreio.common.metadata.types.MLookup; -import com.ossez.usreio.common.metadata.types.MSearchHelp; +import com.ossez.usreio.tests.common.metadata.types.MSystem; +import com.ossez.usreio.tests.common.metadata.types.MResource; +import com.ossez.usreio.tests.common.metadata.types.MForeignKey; +import com.ossez.usreio.tests.common.metadata.types.MClass; +import com.ossez.usreio.tests.common.metadata.types.MTable; +import com.ossez.usreio.tests.common.metadata.types.MUpdate; +import com.ossez.usreio.tests.common.metadata.types.MUpdateType; +import com.ossez.usreio.tests.common.metadata.types.MObject; +import com.ossez.usreio.tests.common.metadata.types.MValidationExternal; +import com.ossez.usreio.tests.common.metadata.types.MValidationLookup; +import com.ossez.usreio.tests.common.metadata.types.MLookup; +import com.ossez.usreio.tests.common.metadata.types.MSearchHelp; public class Metadata implements Serializable { diff --git a/src/main/java/com/ossez/usreio/common/metadata/MetadataBuilder.java b/src/main/java/com/ossez/usreio/tests/common/metadata/MetadataBuilder.java similarity index 78% rename from src/main/java/com/ossez/usreio/common/metadata/MetadataBuilder.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/MetadataBuilder.java index 3390122..19597cd 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/MetadataBuilder.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/MetadataBuilder.java @@ -5,26 +5,26 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata; +package com.ossez.usreio.tests.common.metadata; -import com.ossez.usreio.common.metadata.types.MClass; -import com.ossez.usreio.common.metadata.types.MEditMask; -import com.ossez.usreio.common.metadata.types.MForeignKey; -import com.ossez.usreio.common.metadata.types.MLookup; -import com.ossez.usreio.common.metadata.types.MLookupType; -import com.ossez.usreio.common.metadata.types.MObject; -import com.ossez.usreio.common.metadata.types.MResource; -import com.ossez.usreio.common.metadata.types.MSearchHelp; -import com.ossez.usreio.common.metadata.types.MSystem; -import com.ossez.usreio.common.metadata.types.MTable; -import com.ossez.usreio.common.metadata.types.MUpdate; -import com.ossez.usreio.common.metadata.types.MUpdateHelp; -import com.ossez.usreio.common.metadata.types.MUpdateType; -import com.ossez.usreio.common.metadata.types.MValidationExpression; -import com.ossez.usreio.common.metadata.types.MValidationExternal; -import com.ossez.usreio.common.metadata.types.MValidationExternalType; -import com.ossez.usreio.common.metadata.types.MValidationLookup; -import com.ossez.usreio.common.metadata.types.MValidationLookupType; +import com.ossez.usreio.tests.common.metadata.types.MClass; +import com.ossez.usreio.tests.common.metadata.types.MEditMask; +import com.ossez.usreio.tests.common.metadata.types.MForeignKey; +import com.ossez.usreio.tests.common.metadata.types.MLookup; +import com.ossez.usreio.tests.common.metadata.types.MLookupType; +import com.ossez.usreio.tests.common.metadata.types.MObject; +import com.ossez.usreio.tests.common.metadata.types.MResource; +import com.ossez.usreio.tests.common.metadata.types.MSearchHelp; +import com.ossez.usreio.tests.common.metadata.types.MSystem; +import com.ossez.usreio.tests.common.metadata.types.MTable; +import com.ossez.usreio.tests.common.metadata.types.MUpdate; +import com.ossez.usreio.tests.common.metadata.types.MUpdateHelp; +import com.ossez.usreio.tests.common.metadata.types.MUpdateType; +import com.ossez.usreio.tests.common.metadata.types.MValidationExpression; +import com.ossez.usreio.tests.common.metadata.types.MValidationExternal; +import com.ossez.usreio.tests.common.metadata.types.MValidationExternalType; +import com.ossez.usreio.tests.common.metadata.types.MValidationLookup; +import com.ossez.usreio.tests.common.metadata.types.MValidationLookupType; public abstract class MetadataBuilder { protected MetadataBuilder() { diff --git a/src/main/java/com/ossez/usreio/common/metadata/MetadataElement.java b/src/main/java/com/ossez/usreio/tests/common/metadata/MetadataElement.java similarity index 94% rename from src/main/java/com/ossez/usreio/common/metadata/MetadataElement.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/MetadataElement.java index 96c209b..3afebc7 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/MetadataElement.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/MetadataElement.java @@ -1,4 +1,4 @@ -package com.ossez.usreio.common.metadata; +package com.ossez.usreio.tests.common.metadata; public enum MetadataElement { SYSTEM("System"),// might need to provide enumeration for different versions 1.5 vs 1.7 diff --git a/src/main/java/com/ossez/usreio/common/metadata/MetadataException.java b/src/main/java/com/ossez/usreio/tests/common/metadata/MetadataException.java similarity index 91% rename from src/main/java/com/ossez/usreio/common/metadata/MetadataException.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/MetadataException.java index 2557768..0ebb29d 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/MetadataException.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/MetadataException.java @@ -5,7 +5,7 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata; +package com.ossez.usreio.tests.common.metadata; public class MetadataException extends Exception { diff --git a/src/main/java/com/ossez/usreio/common/metadata/MetadataType.java b/src/main/java/com/ossez/usreio/tests/common/metadata/MetadataType.java similarity index 92% rename from src/main/java/com/ossez/usreio/common/metadata/MetadataType.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/MetadataType.java index f6b9f5d..61059ec 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/MetadataType.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/MetadataType.java @@ -5,7 +5,7 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata; +package com.ossez.usreio.tests.common.metadata; public enum MetadataType { EDITMASK, diff --git a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrAbstractText.java b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrAbstractText.java similarity index 85% rename from src/main/java/com/ossez/usreio/common/metadata/attrib/AttrAbstractText.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrAbstractText.java index f160d8f..139fac5 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrAbstractText.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrAbstractText.java @@ -5,10 +5,10 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; -import com.ossez.usreio.common.metadata.AttrType; -import com.ossez.usreio.common.metadata.MetaParseException; +import com.ossez.usreio.tests.common.metadata.AttrType; +import com.ossez.usreio.tests.common.metadata.MetaParseException; public abstract class AttrAbstractText implements AttrType { protected int min; diff --git a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrAlphanum.java b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrAlphanum.java similarity index 85% rename from src/main/java/com/ossez/usreio/common/metadata/attrib/AttrAlphanum.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrAlphanum.java index 45d9051..54d07a2 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrAlphanum.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrAlphanum.java @@ -5,9 +5,9 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; -import com.ossez.usreio.common.metadata.MetaParseException; +import com.ossez.usreio.tests.common.metadata.MetaParseException; public class AttrAlphanum extends AttrAbstractText { diff --git a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrBoolean.java b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrBoolean.java similarity index 85% rename from src/main/java/com/ossez/usreio/common/metadata/attrib/AttrBoolean.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrBoolean.java index d34d22c..ac3a3b8 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrBoolean.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrBoolean.java @@ -5,10 +5,10 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; -import com.ossez.usreio.common.metadata.AttrType; -import com.ossez.usreio.common.metadata.MetaParseException; +import com.ossez.usreio.tests.common.metadata.AttrType; +import com.ossez.usreio.tests.common.metadata.MetaParseException; public class AttrBoolean implements AttrType { public Boolean parse(String value, boolean strict) throws MetaParseException { diff --git a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrDate.java b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrDate.java similarity index 90% rename from src/main/java/com/ossez/usreio/common/metadata/attrib/AttrDate.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrDate.java index dbf13cc..425802f 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrDate.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrDate.java @@ -11,15 +11,15 @@ * 2011-06-01T18:06:58 * should find a more elegant way */ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; //import java.text.DateFormat; //import java.text.ParseException; //import java.text.SimpleDateFormat; //import java.util.Date; -import com.ossez.usreio.common.metadata.AttrType; -import com.ossez.usreio.common.metadata.MetaParseException; +import com.ossez.usreio.tests.common.metadata.AttrType; +import com.ossez.usreio.tests.common.metadata.MetaParseException; /** * Converted this class to return a String instead of a diff --git a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrEnum.java b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrEnum.java similarity index 86% rename from src/main/java/com/ossez/usreio/common/metadata/attrib/AttrEnum.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrEnum.java index 871986e..2464d57 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrEnum.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrEnum.java @@ -5,13 +5,13 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; import java.util.HashMap; import java.util.Map; import java.util.Collections; -import com.ossez.usreio.common.metadata.MetaParseException; +import com.ossez.usreio.tests.common.metadata.MetaParseException; public class AttrEnum extends AttrAbstractText { public AttrEnum(String[] values) { diff --git a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrGenericText.java b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrGenericText.java similarity index 85% rename from src/main/java/com/ossez/usreio/common/metadata/attrib/AttrGenericText.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrGenericText.java index 7e8980d..4c411f2 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrGenericText.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrGenericText.java @@ -5,9 +5,9 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; -import com.ossez.usreio.common.metadata.MetaParseException; +import com.ossez.usreio.tests.common.metadata.MetaParseException; public class AttrGenericText extends AttrAbstractText { private String mChars; diff --git a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrNumeric.java b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrNumeric.java similarity index 77% rename from src/main/java/com/ossez/usreio/common/metadata/attrib/AttrNumeric.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrNumeric.java index 199abfc..91d8e48 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrNumeric.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrNumeric.java @@ -5,10 +5,10 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; -import com.ossez.usreio.common.metadata.AttrType; -import com.ossez.usreio.common.metadata.MetaParseException; +import com.ossez.usreio.tests.common.metadata.AttrType; +import com.ossez.usreio.tests.common.metadata.MetaParseException; public class AttrNumeric implements AttrType { public Integer parse(String value, boolean strict) throws MetaParseException { diff --git a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrNumericPositive.java b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrNumericPositive.java similarity index 81% rename from src/main/java/com/ossez/usreio/common/metadata/attrib/AttrNumericPositive.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrNumericPositive.java index 4f24cc1..c3126ba 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrNumericPositive.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrNumericPositive.java @@ -5,10 +5,10 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; -import com.ossez.usreio.common.metadata.AttrType; -import com.ossez.usreio.common.metadata.MetaParseException; +import com.ossez.usreio.tests.common.metadata.AttrType; +import com.ossez.usreio.tests.common.metadata.MetaParseException; public class AttrNumericPositive implements AttrType { diff --git a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrPlaintext.java b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrPlaintext.java similarity index 84% rename from src/main/java/com/ossez/usreio/common/metadata/attrib/AttrPlaintext.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrPlaintext.java index ce6d9aa..2a707dc 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrPlaintext.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrPlaintext.java @@ -5,9 +5,9 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; -import com.ossez.usreio.common.metadata.MetaParseException; +import com.ossez.usreio.tests.common.metadata.MetaParseException; public class AttrPlaintext extends AttrAbstractText { public AttrPlaintext(int min, int max) { diff --git a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrText.java b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrText.java similarity index 85% rename from src/main/java/com/ossez/usreio/common/metadata/attrib/AttrText.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrText.java index cc69598..20772a4 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrText.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrText.java @@ -5,9 +5,9 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; -import com.ossez.usreio.common.metadata.MetaParseException; +import com.ossez.usreio.tests.common.metadata.MetaParseException; public class AttrText extends AttrAbstractText { public AttrText(int min, int max) { diff --git a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrVersion.java b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrVersion.java similarity index 91% rename from src/main/java/com/ossez/usreio/common/metadata/attrib/AttrVersion.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrVersion.java index 2309bc8..2ae194b 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/attrib/AttrVersion.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/attrib/AttrVersion.java @@ -5,11 +5,11 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; import org.apache.commons.lang3.StringUtils; -import com.ossez.usreio.common.metadata.AttrType; -import com.ossez.usreio.common.metadata.MetaParseException; +import com.ossez.usreio.tests.common.metadata.AttrType; +import com.ossez.usreio.tests.common.metadata.MetaParseException; /** * A version is a string formatted "major.minor.release". This gets converted diff --git a/src/main/java/com/ossez/usreio/common/metadata/types/MClass.java b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MClass.java similarity index 95% rename from src/main/java/com/ossez/usreio/common/metadata/types/MClass.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/types/MClass.java index d43cc38..665185a 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/types/MClass.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MClass.java @@ -1,11 +1,11 @@ -package com.ossez.usreio.common.metadata.types; +package com.ossez.usreio.tests.common.metadata.types; import java.util.Collection; //import java.util.Date; import java.util.Map; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataType; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataType; public class MClass extends MetaObject { public static final String CLASSNAME = "ClassName"; diff --git a/src/main/java/com/ossez/usreio/common/metadata/types/MEditMask.java b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MEditMask.java similarity index 84% rename from src/main/java/com/ossez/usreio/common/metadata/types/MEditMask.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/types/MEditMask.java index bc88fe8..7ccca7e 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/types/MEditMask.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MEditMask.java @@ -1,9 +1,9 @@ -package com.ossez.usreio.common.metadata.types; +package com.ossez.usreio.tests.common.metadata.types; import java.util.Map; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataType; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataType; public class MEditMask extends MetaObject { public static final String METADATAENTRYID = "MetadataEntryID"; diff --git a/src/main/java/com/ossez/usreio/common/metadata/types/MForeignKey.java b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MForeignKey.java similarity index 92% rename from src/main/java/com/ossez/usreio/common/metadata/types/MForeignKey.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/types/MForeignKey.java index 31261b2..7ae1de7 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/types/MForeignKey.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MForeignKey.java @@ -1,9 +1,9 @@ -package com.ossez.usreio.common.metadata.types; +package com.ossez.usreio.tests.common.metadata.types; import java.util.Map; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataType; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataType; public class MForeignKey extends MetaObject { public static final String FOREIGNKEYID = "ForeignKeyID"; diff --git a/src/main/java/com/ossez/usreio/common/metadata/types/MLookup.java b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MLookup.java similarity index 92% rename from src/main/java/com/ossez/usreio/common/metadata/types/MLookup.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/types/MLookup.java index 10e8c65..144c5ed 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/types/MLookup.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MLookup.java @@ -1,10 +1,10 @@ -package com.ossez.usreio.common.metadata.types; +package com.ossez.usreio.tests.common.metadata.types; //import java.util.Date; import java.util.Map; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataType; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataType; public class MLookup extends MetaObject { private static final MetadataType[] CHILDREN = { MetadataType.LOOKUP_TYPE }; diff --git a/src/main/java/com/ossez/usreio/common/metadata/types/MLookupType.java b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MLookupType.java similarity index 86% rename from src/main/java/com/ossez/usreio/common/metadata/types/MLookupType.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/types/MLookupType.java index b421e7d..f1917f7 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/types/MLookupType.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MLookupType.java @@ -1,9 +1,9 @@ -package com.ossez.usreio.common.metadata.types; +package com.ossez.usreio.tests.common.metadata.types; import java.util.Map; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataType; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataType; public class MLookupType extends MetaObject { public static final String METADATAENTRYID = "MetadataEntryID"; diff --git a/src/main/java/com/ossez/usreio/common/metadata/types/MObject.java b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MObject.java similarity index 91% rename from src/main/java/com/ossez/usreio/common/metadata/types/MObject.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/types/MObject.java index 93a2942..53a9e47 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/types/MObject.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MObject.java @@ -1,9 +1,9 @@ -package com.ossez.usreio.common.metadata.types; +package com.ossez.usreio.tests.common.metadata.types; import java.util.Map; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataType; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataType; public class MObject extends MetaObject { diff --git a/src/main/java/com/ossez/usreio/common/metadata/types/MResource.java b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MResource.java similarity index 97% rename from src/main/java/com/ossez/usreio/common/metadata/types/MResource.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/types/MResource.java index 8561ab7..a59a13e 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/types/MResource.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MResource.java @@ -1,10 +1,10 @@ -package com.ossez.usreio.common.metadata.types; +package com.ossez.usreio.tests.common.metadata.types; //import java.util.Date; import java.util.Map; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataType; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataType; public class MResource extends MetaObject { private static final MetadataType[] CHILDREN = { diff --git a/src/main/java/com/ossez/usreio/common/metadata/types/MSearchHelp.java b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MSearchHelp.java similarity index 84% rename from src/main/java/com/ossez/usreio/common/metadata/types/MSearchHelp.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/types/MSearchHelp.java index 192ecc4..3b04d32 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/types/MSearchHelp.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MSearchHelp.java @@ -1,9 +1,9 @@ -package com.ossez.usreio.common.metadata.types; +package com.ossez.usreio.tests.common.metadata.types; import java.util.Map; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataType; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataType; public class MSearchHelp extends MetaObject { public static final String METADATAENTRYID = "MetadataEntryID"; diff --git a/src/main/java/com/ossez/usreio/common/metadata/types/MSystem.java b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MSystem.java similarity index 92% rename from src/main/java/com/ossez/usreio/common/metadata/types/MSystem.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/types/MSystem.java index 5522691..2ebf5bd 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/types/MSystem.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MSystem.java @@ -1,10 +1,10 @@ -package com.ossez.usreio.common.metadata.types; +package com.ossez.usreio.tests.common.metadata.types; //import java.util.Date; import java.util.Map; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataType; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataType; public class MSystem extends MetaObject { public static final String SYSTEMID = "SystemID"; diff --git a/src/main/java/com/ossez/usreio/common/metadata/types/MTable.java b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MTable.java similarity index 95% rename from src/main/java/com/ossez/usreio/common/metadata/types/MTable.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/types/MTable.java index 23594c5..9b6f8ce 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/types/MTable.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MTable.java @@ -1,11 +1,11 @@ -package com.ossez.usreio.common.metadata.types; +package com.ossez.usreio.tests.common.metadata.types; import java.util.Map; -import com.ossez.usreio.common.metadata.AttrType; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataType; -import com.ossez.usreio.common.metadata.attrib.AttrEnum; +import com.ossez.usreio.tests.common.metadata.AttrType; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataType; +import com.ossez.usreio.tests.common.metadata.attrib.AttrEnum; public class MTable extends MetaObject { diff --git a/src/main/java/com/ossez/usreio/common/metadata/types/MUpdate.java b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MUpdate.java similarity index 92% rename from src/main/java/com/ossez/usreio/common/metadata/types/MUpdate.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/types/MUpdate.java index a2ef317..d20acbf 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/types/MUpdate.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MUpdate.java @@ -1,10 +1,10 @@ -package com.ossez.usreio.common.metadata.types; +package com.ossez.usreio.tests.common.metadata.types; //import java.util.Date; import java.util.Map; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataType; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataType; public class MUpdate extends MetaObject { public static final String METADATAENTRYID = "MetadataEntryID"; diff --git a/src/main/java/com/ossez/usreio/common/metadata/types/MUpdateHelp.java b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MUpdateHelp.java similarity index 85% rename from src/main/java/com/ossez/usreio/common/metadata/types/MUpdateHelp.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/types/MUpdateHelp.java index a79366d..23d7c52 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/types/MUpdateHelp.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MUpdateHelp.java @@ -1,9 +1,9 @@ -package com.ossez.usreio.common.metadata.types; +package com.ossez.usreio.tests.common.metadata.types; import java.util.Map; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataType; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataType; public class MUpdateHelp extends MetaObject { public static final String METADATAENTRYID = "MetadataEntryID"; diff --git a/src/main/java/com/ossez/usreio/common/metadata/types/MUpdateType.java b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MUpdateType.java similarity index 89% rename from src/main/java/com/ossez/usreio/common/metadata/types/MUpdateType.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/types/MUpdateType.java index c3bb815..38ab5f2 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/types/MUpdateType.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MUpdateType.java @@ -1,11 +1,11 @@ -package com.ossez.usreio.common.metadata.types; +package com.ossez.usreio.tests.common.metadata.types; import java.util.Map; -import com.ossez.usreio.common.metadata.AttrType; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataType; -import com.ossez.usreio.common.metadata.attrib.AttrGenericText; +import com.ossez.usreio.tests.common.metadata.AttrType; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataType; +import com.ossez.usreio.tests.common.metadata.attrib.AttrGenericText; public class MUpdateType extends MetaObject { public static final String METADATAENTRYID = "MetadataEntryID"; diff --git a/src/main/java/com/ossez/usreio/common/metadata/types/MValidationExpression.java b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MValidationExpression.java similarity index 83% rename from src/main/java/com/ossez/usreio/common/metadata/types/MValidationExpression.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/types/MValidationExpression.java index 7b12398..4e62748 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/types/MValidationExpression.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MValidationExpression.java @@ -1,11 +1,11 @@ -package com.ossez.usreio.common.metadata.types; +package com.ossez.usreio.tests.common.metadata.types; import java.util.Map; -import com.ossez.usreio.common.metadata.AttrType; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataType; -import com.ossez.usreio.common.metadata.attrib.AttrEnum; +import com.ossez.usreio.tests.common.metadata.AttrType; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataType; +import com.ossez.usreio.tests.common.metadata.attrib.AttrEnum; public class MValidationExpression extends MetaObject { diff --git a/src/main/java/com/ossez/usreio/common/metadata/types/MValidationExternal.java b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MValidationExternal.java similarity index 91% rename from src/main/java/com/ossez/usreio/common/metadata/types/MValidationExternal.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/types/MValidationExternal.java index 9a3f648..2d266f5 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/types/MValidationExternal.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MValidationExternal.java @@ -1,10 +1,10 @@ -package com.ossez.usreio.common.metadata.types; +package com.ossez.usreio.tests.common.metadata.types; //import java.util.Date; import java.util.Map; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataType; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataType; public class MValidationExternal extends MetaObject { diff --git a/src/main/java/com/ossez/usreio/common/metadata/types/MValidationExternalType.java b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MValidationExternalType.java similarity index 87% rename from src/main/java/com/ossez/usreio/common/metadata/types/MValidationExternalType.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/types/MValidationExternalType.java index 4150375..dc26da1 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/types/MValidationExternalType.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MValidationExternalType.java @@ -1,9 +1,9 @@ -package com.ossez.usreio.common.metadata.types; +package com.ossez.usreio.tests.common.metadata.types; import java.util.Map; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataType; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataType; public class MValidationExternalType extends MetaObject { diff --git a/src/main/java/com/ossez/usreio/common/metadata/types/MValidationLookup.java b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MValidationLookup.java similarity index 91% rename from src/main/java/com/ossez/usreio/common/metadata/types/MValidationLookup.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/types/MValidationLookup.java index 03266b5..118dca1 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/types/MValidationLookup.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MValidationLookup.java @@ -1,10 +1,10 @@ -package com.ossez.usreio.common.metadata.types; +package com.ossez.usreio.tests.common.metadata.types; //import java.util.Date; import java.util.Map; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataType; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataType; public class MValidationLookup extends MetaObject { diff --git a/src/main/java/com/ossez/usreio/common/metadata/types/MValidationLookupType.java b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MValidationLookupType.java similarity index 87% rename from src/main/java/com/ossez/usreio/common/metadata/types/MValidationLookupType.java rename to src/main/java/com/ossez/usreio/tests/common/metadata/types/MValidationLookupType.java index 0b2a2fb..ff3e60f 100644 --- a/src/main/java/com/ossez/usreio/common/metadata/types/MValidationLookupType.java +++ b/src/main/java/com/ossez/usreio/tests/common/metadata/types/MValidationLookupType.java @@ -1,9 +1,9 @@ -package com.ossez.usreio.common.metadata.types; +package com.ossez.usreio.tests.common.metadata.types; import java.util.Map; -import com.ossez.usreio.common.metadata.MetaObject; -import com.ossez.usreio.common.metadata.MetadataType; +import com.ossez.usreio.tests.common.metadata.MetaObject; +import com.ossez.usreio.tests.common.metadata.MetadataType; public class MValidationLookupType extends MetaObject { public static final String METADATAENTRYID = "MetadataEntryID"; diff --git a/src/test/java/com/ossez/usreio/client/2237858_0.jpg b/src/test/java/com/ossez/usreio/client/2237858_0.jpg deleted file mode 100644 index f49a96902344765a7756dbc71bf54281155be292..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 76861 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 N|D+;Zw@y^({{Wx - - LookupName VisibleName Version Date - E_SCHOOL Elementary School District 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT - H_SCHOOL High School District 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT - AR Area 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT - IFT Interior Features 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT - VEW View 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT - LISTING_TYPE Listing Type 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT - LISTING_STATUS Listing Status 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT - M_SCHOOL Middle School District 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT - EFT Exerior Features 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT - - - LookupName VisibleName Version Date - DESIGNATIONS DESIGNATIONS 1.00.000 Sat, 20 Mar 2002 12:03:38 GMT - - diff --git a/src/test/java/com/ossez/usreio/client/getMetadataResponse_noRecords.xml b/src/test/java/com/ossez/usreio/client/getMetadataResponse_noRecords.xml deleted file mode 100644 index 6596f33..0000000 --- a/src/test/java/com/ossez/usreio/client/getMetadataResponse_noRecords.xml +++ /dev/null @@ -1 +0,0 @@ - diff --git a/src/test/java/com/ossez/usreio/client/getMetadataResponse_system.xml b/src/test/java/com/ossez/usreio/client/getMetadataResponse_system.xml deleted file mode 100644 index 5ad7b2b..0000000 --- a/src/test/java/com/ossez/usreio/client/getMetadataResponse_system.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - -The reference implementation of a RETS Server - - diff --git a/src/test/java/com/ossez/usreio/client/getMetadataResponse_updateType.xml b/src/test/java/com/ossez/usreio/client/getMetadataResponse_updateType.xml deleted file mode 100644 index 346b9c8..0000000 --- a/src/test/java/com/ossez/usreio/client/getMetadataResponse_updateType.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - SystemName Sequence Attributes Default ValidationExpressionID UpdateHelpID ValidationLookupName ValidationExternalName - AGENT_ID 1 1 0 - OFFICE_ID 2 2 0 - - diff --git a/src/test/java/com/ossez/usreio/client/login_lower_case.xml b/src/test/java/com/ossez/usreio/client/login_lower_case.xml deleted file mode 100644 index c73ad68..0000000 --- a/src/test/java/com/ossez/usreio/client/login_lower_case.xml +++ /dev/null @@ -1,17 +0,0 @@ - - -broker = B123, BO987 -membername = Joe T. Schmoe -metadataversion = 1.00.000 -minmetadataversion = 1.00.000 -user = A123,5678,1,A123 -login = http://rets.test:6103/login -logout = http://rets.test:6103/logout -search = http://rets.test:6103/search -getmetadata = http://rets.test:6103/getMetadata -changepassword = http://rets.test:6103/changePassword -getobject = http://rets.test:6103/getObjectEx -action = http://rets.test:6103/get -balance = 44.21 -timeoutseconds = 60 - diff --git a/src/test/java/com/ossez/usreio/client/logout_lower_case.xml b/src/test/java/com/ossez/usreio/client/logout_lower_case.xml deleted file mode 100644 index cacd066..0000000 --- a/src/test/java/com/ossez/usreio/client/logout_lower_case.xml +++ /dev/null @@ -1,6 +0,0 @@ - - -connecttime = 1000 -billing = $20.00 -signoffmessage = Good Bye - diff --git a/src/test/java/com/ossez/usreio/client/logout_no_equals.xml b/src/test/java/com/ossez/usreio/client/logout_no_equals.xml deleted file mode 100644 index 765386f..0000000 --- a/src/test/java/com/ossez/usreio/client/logout_no_equals.xml +++ /dev/null @@ -1,4 +0,0 @@ - - -Logged Out - diff --git a/src/test/java/com/ossez/usreio/client/logout_valid10.xml b/src/test/java/com/ossez/usreio/client/logout_valid10.xml deleted file mode 100644 index e3bf94a..0000000 --- a/src/test/java/com/ossez/usreio/client/logout_valid10.xml +++ /dev/null @@ -1,5 +0,0 @@ - -ConnectTime = 1000 -Billing = $20.00 -SignOffMessage = Good Bye - diff --git a/src/test/java/com/ossez/usreio/client/logout_valid15.xml b/src/test/java/com/ossez/usreio/client/logout_valid15.xml deleted file mode 100644 index dd8864e..0000000 --- a/src/test/java/com/ossez/usreio/client/logout_valid15.xml +++ /dev/null @@ -1,6 +0,0 @@ - - -ConnectTime = 1000 -Billing = $20.00 -SignOffMessage = Good Bye - diff --git a/src/test/java/com/ossez/usreio/client/AllTests.java b/src/test/java/com/ossez/usreio/tests/client/AllTests.java similarity index 96% rename from src/test/java/com/ossez/usreio/client/AllTests.java rename to src/test/java/com/ossez/usreio/tests/client/AllTests.java index 8a3b48c..1a9bd6c 100644 --- a/src/test/java/com/ossez/usreio/client/AllTests.java +++ b/src/test/java/com/ossez/usreio/tests/client/AllTests.java @@ -1,4 +1,4 @@ -package com.ossez.usreio.client; +package com.ossez.usreio.tests.client; import junit.framework.Test; import junit.framework.TestSuite; diff --git a/src/test/java/com/ossez/usreio/client/tests/ConnectionTest.java b/src/test/java/com/ossez/usreio/tests/client/ConnectionTest.java similarity index 97% rename from src/test/java/com/ossez/usreio/client/tests/ConnectionTest.java rename to src/test/java/com/ossez/usreio/tests/client/ConnectionTest.java index 87aac05..446fa38 100644 --- a/src/test/java/com/ossez/usreio/client/tests/ConnectionTest.java +++ b/src/test/java/com/ossez/usreio/tests/client/ConnectionTest.java @@ -1,4 +1,4 @@ -package com.ossez.usreio.client.tests; +package com.ossez.usreio.tests.client; import org.junit.jupiter.api.Test; import com.ossez.usreio.client.retsapi.RETSConnection; diff --git a/src/test/java/com/ossez/usreio/client/GetMetadataRequestTest.java b/src/test/java/com/ossez/usreio/tests/client/GetMetadataRequestTest.java similarity index 91% rename from src/test/java/com/ossez/usreio/client/GetMetadataRequestTest.java rename to src/test/java/com/ossez/usreio/tests/client/GetMetadataRequestTest.java index 9268a2b..3a2f735 100644 --- a/src/test/java/com/ossez/usreio/client/GetMetadataRequestTest.java +++ b/src/test/java/com/ossez/usreio/tests/client/GetMetadataRequestTest.java @@ -1,4 +1,8 @@ -package com.ossez.usreio.client; +package com.ossez.usreio.tests.client; + +import com.ossez.usreio.client.GetMetadataRequest; +import com.ossez.usreio.client.InvalidArgumentException; +import com.ossez.usreio.client.RetsException; import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertTrue; diff --git a/src/test/java/com/ossez/usreio/client/GetMetadataResponseTest.java b/src/test/java/com/ossez/usreio/tests/client/GetMetadataResponseTest.java similarity index 99% rename from src/test/java/com/ossez/usreio/client/GetMetadataResponseTest.java rename to src/test/java/com/ossez/usreio/tests/client/GetMetadataResponseTest.java index 8024c9c..d3491b4 100644 --- a/src/test/java/com/ossez/usreio/client/GetMetadataResponseTest.java +++ b/src/test/java/com/ossez/usreio/tests/client/GetMetadataResponseTest.java @@ -1,4 +1,4 @@ -package com.ossez.usreio.client; +package com.ossez.usreio.tests.client; //import java.util.List; //import java.util.ArrayList; diff --git a/src/test/java/com/ossez/usreio/client/GetObjectResponseIteratorTest.java b/src/test/java/com/ossez/usreio/tests/client/GetObjectResponseIteratorTest.java similarity index 97% rename from src/test/java/com/ossez/usreio/client/GetObjectResponseIteratorTest.java rename to src/test/java/com/ossez/usreio/tests/client/GetObjectResponseIteratorTest.java index 31fb965..b06f01f 100644 --- a/src/test/java/com/ossez/usreio/client/GetObjectResponseIteratorTest.java +++ b/src/test/java/com/ossez/usreio/tests/client/GetObjectResponseIteratorTest.java @@ -1,4 +1,4 @@ -package com.ossez.usreio.client; +package com.ossez.usreio.tests.client; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; @@ -7,6 +7,9 @@ import java.io.InputStream; import java.util.HashMap; import java.util.Map; +import com.ossez.usreio.client.GetObjectIterator; +import com.ossez.usreio.client.GetObjectResponse; +import com.ossez.usreio.client.SingleObjectResponse; import junit.framework.TestCase; public class GetObjectResponseIteratorTest extends TestCase { diff --git a/src/test/java/com/ossez/usreio/client/IOFailReader.java b/src/test/java/com/ossez/usreio/tests/client/IOFailReader.java similarity index 94% rename from src/test/java/com/ossez/usreio/client/IOFailReader.java rename to src/test/java/com/ossez/usreio/tests/client/IOFailReader.java index f7dae10..6cf47c3 100644 --- a/src/test/java/com/ossez/usreio/client/IOFailReader.java +++ b/src/test/java/com/ossez/usreio/tests/client/IOFailReader.java @@ -1,4 +1,4 @@ -package com.ossez.usreio.client; +package com.ossez.usreio.tests.client; import java.io.FilterReader; import java.io.IOException; diff --git a/src/test/java/com/ossez/usreio/client/LoginRequestTest.java b/src/test/java/com/ossez/usreio/tests/client/LoginRequestTest.java similarity index 90% rename from src/test/java/com/ossez/usreio/client/LoginRequestTest.java rename to src/test/java/com/ossez/usreio/tests/client/LoginRequestTest.java index 316b671..19bc732 100644 --- a/src/test/java/com/ossez/usreio/client/LoginRequestTest.java +++ b/src/test/java/com/ossez/usreio/tests/client/LoginRequestTest.java @@ -1,4 +1,6 @@ -package com.ossez.usreio.client; +package com.ossez.usreio.tests.client; + +import com.ossez.usreio.client.LoginRequest; public class LoginRequestTest extends RetsTestCase { public void testGetUrl() { diff --git a/src/test/java/com/ossez/usreio/client/LoginResponseTest.java b/src/test/java/com/ossez/usreio/tests/client/LoginResponseTest.java similarity index 97% rename from src/test/java/com/ossez/usreio/client/LoginResponseTest.java rename to src/test/java/com/ossez/usreio/tests/client/LoginResponseTest.java index ac0aece..7cb0092 100644 --- a/src/test/java/com/ossez/usreio/client/LoginResponseTest.java +++ b/src/test/java/com/ossez/usreio/tests/client/LoginResponseTest.java @@ -1,6 +1,10 @@ -package com.ossez.usreio.client; +package com.ossez.usreio.tests.client; +import com.ossez.usreio.client.CapabilityUrls; +import com.ossez.usreio.client.LoginResponse; +import com.ossez.usreio.client.RetsException; +import com.ossez.usreio.client.RetsVersion; import org.junit.Test; public class LoginResponseTest extends RetsTestCase { diff --git a/src/test/java/com/ossez/usreio/client/LogoutResponseTest.java b/src/test/java/com/ossez/usreio/tests/client/LogoutResponseTest.java similarity index 90% rename from src/test/java/com/ossez/usreio/client/LogoutResponseTest.java rename to src/test/java/com/ossez/usreio/tests/client/LogoutResponseTest.java index 2f8c95a..24860e7 100644 --- a/src/test/java/com/ossez/usreio/client/LogoutResponseTest.java +++ b/src/test/java/com/ossez/usreio/tests/client/LogoutResponseTest.java @@ -1,4 +1,8 @@ -package com.ossez.usreio.client; +package com.ossez.usreio.tests.client; + +import com.ossez.usreio.client.LogoutResponse; +import com.ossez.usreio.client.RetsException; +import com.ossez.usreio.client.RetsVersion; public class LogoutResponseTest extends RetsTestCase { /* diff --git a/src/test/java/com/ossez/usreio/client/tests/MetadataTest.java b/src/test/java/com/ossez/usreio/tests/client/MetadataTest.java similarity index 97% rename from src/test/java/com/ossez/usreio/client/tests/MetadataTest.java rename to src/test/java/com/ossez/usreio/tests/client/MetadataTest.java index 3c98e0e..ca595d7 100644 --- a/src/test/java/com/ossez/usreio/client/tests/MetadataTest.java +++ b/src/test/java/com/ossez/usreio/tests/client/MetadataTest.java @@ -1,4 +1,4 @@ -package com.ossez.usreio.client.tests; +package com.ossez.usreio.tests.client; import org.junit.jupiter.api.Test; import com.ossez.usreio.client.retsapi.RETSConnection; diff --git a/src/test/java/com/ossez/usreio/client/RetsGetMetadataExample.java b/src/test/java/com/ossez/usreio/tests/client/RetsGetMetadataExample.java similarity index 90% rename from src/test/java/com/ossez/usreio/client/RetsGetMetadataExample.java rename to src/test/java/com/ossez/usreio/tests/client/RetsGetMetadataExample.java index 5eedcae..eaa87d2 100644 --- a/src/test/java/com/ossez/usreio/client/RetsGetMetadataExample.java +++ b/src/test/java/com/ossez/usreio/tests/client/RetsGetMetadataExample.java @@ -1,10 +1,10 @@ -package com.ossez.usreio.client; +package com.ossez.usreio.tests.client; import java.net.MalformedURLException; -import com.ossez.usreio.common.metadata.types.MClass; -import com.ossez.usreio.common.metadata.types.MResource; -import com.ossez.usreio.common.metadata.types.MSystem; +import com.ossez.usreio.tests.common.metadata.types.MClass; +import com.ossez.usreio.tests.common.metadata.types.MResource; +import com.ossez.usreio.tests.common.metadata.types.MSystem; import com.ossez.usreio.client.*; /** diff --git a/src/test/java/com/ossez/usreio/examples/RetsGetObjectExample.java b/src/test/java/com/ossez/usreio/tests/client/RetsGetObjectExample.java similarity index 98% rename from src/test/java/com/ossez/usreio/examples/RetsGetObjectExample.java rename to src/test/java/com/ossez/usreio/tests/client/RetsGetObjectExample.java index 7e48760..b3aa08c 100644 --- a/src/test/java/com/ossez/usreio/examples/RetsGetObjectExample.java +++ b/src/test/java/com/ossez/usreio/tests/client/RetsGetObjectExample.java @@ -1,4 +1,4 @@ -package com.ossez.usreio.examples; +package com.ossez.usreio.tests.client; import java.io.File; import java.io.FileOutputStream; diff --git a/src/test/java/com/ossez/usreio/examples/RetsGetObjectURLExample.java b/src/test/java/com/ossez/usreio/tests/client/RetsGetObjectURLExample.java similarity index 98% rename from src/test/java/com/ossez/usreio/examples/RetsGetObjectURLExample.java rename to src/test/java/com/ossez/usreio/tests/client/RetsGetObjectURLExample.java index d15fccf..5c1739f 100644 --- a/src/test/java/com/ossez/usreio/examples/RetsGetObjectURLExample.java +++ b/src/test/java/com/ossez/usreio/tests/client/RetsGetObjectURLExample.java @@ -1,4 +1,4 @@ -package com.ossez.usreio.examples; +package com.ossez.usreio.tests.client; import java.net.MalformedURLException; import java.util.Arrays; diff --git a/src/test/java/com/ossez/usreio/examples/RetsSearchExample.java b/src/test/java/com/ossez/usreio/tests/client/RetsSearchExample.java similarity index 98% rename from src/test/java/com/ossez/usreio/examples/RetsSearchExample.java rename to src/test/java/com/ossez/usreio/tests/client/RetsSearchExample.java index f68d2ab..8b7693f 100644 --- a/src/test/java/com/ossez/usreio/examples/RetsSearchExample.java +++ b/src/test/java/com/ossez/usreio/tests/client/RetsSearchExample.java @@ -1,4 +1,4 @@ -package com.ossez.usreio.examples; +package com.ossez.usreio.tests.client; import java.net.MalformedURLException; diff --git a/src/test/java/com/ossez/usreio/client/RetsSessionTest.java b/src/test/java/com/ossez/usreio/tests/client/RetsSessionTest.java similarity index 89% rename from src/test/java/com/ossez/usreio/client/RetsSessionTest.java rename to src/test/java/com/ossez/usreio/tests/client/RetsSessionTest.java index e8b849c..947ca5b 100644 --- a/src/test/java/com/ossez/usreio/client/RetsSessionTest.java +++ b/src/test/java/com/ossez/usreio/tests/client/RetsSessionTest.java @@ -1,16 +1,14 @@ -package com.ossez.usreio.client; +package com.ossez.usreio.tests.client; +import com.ossez.usreio.client.RetsException; +import com.ossez.usreio.client.RetsSession; +import com.ossez.usreio.client.RetsVersion; import com.ossez.usreio.common.util.SessionUtils; -import org.junit.jupiter.api.BeforeAll; -import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.TestInstance; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.io.IOException; -import java.util.Properties; - import static org.junit.jupiter.api.Assertions.assertNull; /** diff --git a/src/test/java/com/ossez/usreio/client/RetsTestCase.java b/src/test/java/com/ossez/usreio/tests/client/RetsTestCase.java similarity index 98% rename from src/test/java/com/ossez/usreio/client/RetsTestCase.java rename to src/test/java/com/ossez/usreio/tests/client/RetsTestCase.java index a1143c4..0c001f4 100644 --- a/src/test/java/com/ossez/usreio/client/RetsTestCase.java +++ b/src/test/java/com/ossez/usreio/tests/client/RetsTestCase.java @@ -1,4 +1,4 @@ -package com.ossez.usreio.client; +package com.ossez.usreio.tests.client; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.TestInstance; diff --git a/src/test/java/com/ossez/usreio/client/RetsVersionTest.java b/src/test/java/com/ossez/usreio/tests/client/RetsVersionTest.java similarity index 97% rename from src/test/java/com/ossez/usreio/client/RetsVersionTest.java rename to src/test/java/com/ossez/usreio/tests/client/RetsVersionTest.java index bb09570..d139751 100644 --- a/src/test/java/com/ossez/usreio/client/RetsVersionTest.java +++ b/src/test/java/com/ossez/usreio/tests/client/RetsVersionTest.java @@ -1,4 +1,4 @@ -package com.ossez.usreio.client; +package com.ossez.usreio.tests.client; public class RetsVersionTest extends RetsTestCase { diff --git a/src/test/java/com/ossez/usreio/client/SearchResultHandlerTest.java b/src/test/java/com/ossez/usreio/tests/client/SearchResultHandlerTest.java similarity index 98% rename from src/test/java/com/ossez/usreio/client/SearchResultHandlerTest.java rename to src/test/java/com/ossez/usreio/tests/client/SearchResultHandlerTest.java index e0c8dd1..d6a0485 100644 --- a/src/test/java/com/ossez/usreio/client/SearchResultHandlerTest.java +++ b/src/test/java/com/ossez/usreio/tests/client/SearchResultHandlerTest.java @@ -5,10 +5,11 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.client; +package com.ossez.usreio.tests.client; import java.io.StringReader; +import com.ossez.usreio.client.*; import org.xml.sax.InputSource; /** diff --git a/src/test/java/com/ossez/usreio/client/SearchResultImplTest.java b/src/test/java/com/ossez/usreio/tests/client/SearchResultImplTest.java similarity index 95% rename from src/test/java/com/ossez/usreio/client/SearchResultImplTest.java rename to src/test/java/com/ossez/usreio/tests/client/SearchResultImplTest.java index 223046a..2c26a41 100644 --- a/src/test/java/com/ossez/usreio/client/SearchResultImplTest.java +++ b/src/test/java/com/ossez/usreio/tests/client/SearchResultImplTest.java @@ -5,7 +5,9 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.client; +package com.ossez.usreio.tests.client; + +import com.ossez.usreio.client.SearchResultImpl; import java.util.NoSuchElementException; diff --git a/src/test/java/com/ossez/usreio/client/SingleObjectResponseTest.java b/src/test/java/com/ossez/usreio/tests/client/SingleObjectResponseTest.java similarity index 90% rename from src/test/java/com/ossez/usreio/client/SingleObjectResponseTest.java rename to src/test/java/com/ossez/usreio/tests/client/SingleObjectResponseTest.java index 65d13ae..ade2716 100644 --- a/src/test/java/com/ossez/usreio/client/SingleObjectResponseTest.java +++ b/src/test/java/com/ossez/usreio/tests/client/SingleObjectResponseTest.java @@ -1,8 +1,9 @@ -package com.ossez.usreio.client; +package com.ossez.usreio.tests.client; import java.util.HashMap; import java.util.Map; +import com.ossez.usreio.client.SingleObjectResponse; import junit.framework.TestCase; public class SingleObjectResponseTest extends TestCase { diff --git a/src/test/java/com/ossez/usreio/client/StreamingSearchResultProcessorTest.java b/src/test/java/com/ossez/usreio/tests/client/StreamingSearchResultProcessorTest.java similarity index 99% rename from src/test/java/com/ossez/usreio/client/StreamingSearchResultProcessorTest.java rename to src/test/java/com/ossez/usreio/tests/client/StreamingSearchResultProcessorTest.java index 5aef6f4..eff53de 100644 --- a/src/test/java/com/ossez/usreio/client/StreamingSearchResultProcessorTest.java +++ b/src/test/java/com/ossez/usreio/tests/client/StreamingSearchResultProcessorTest.java @@ -1,8 +1,9 @@ -package com.ossez.usreio.client; +package com.ossez.usreio.tests.client; import java.io.Reader; import java.io.StringReader; +import com.ossez.usreio.client.*; import junit.framework.TestCase; public class StreamingSearchResultProcessorTest extends TestCase { diff --git a/src/test/java/com/ossez/usreio/client/TestInvalidReplyCodeHandler.java b/src/test/java/com/ossez/usreio/tests/client/TestInvalidReplyCodeHandler.java similarity index 74% rename from src/test/java/com/ossez/usreio/client/TestInvalidReplyCodeHandler.java rename to src/test/java/com/ossez/usreio/tests/client/TestInvalidReplyCodeHandler.java index 9d9efb1..3406db5 100644 --- a/src/test/java/com/ossez/usreio/client/TestInvalidReplyCodeHandler.java +++ b/src/test/java/com/ossez/usreio/tests/client/TestInvalidReplyCodeHandler.java @@ -1,4 +1,7 @@ -package com.ossez.usreio.client; +package com.ossez.usreio.tests.client; + +import com.ossez.usreio.client.InvalidReplyCodeException; +import com.ossez.usreio.client.InvalidReplyCodeHandler; final class TestInvalidReplyCodeHandler implements InvalidReplyCodeHandler { private int replyCode; diff --git a/src/test/java/com/ossez/usreio/client/objects-missing.multipart b/src/test/java/com/ossez/usreio/tests/client/objects-missing.multipart similarity index 100% rename from src/test/java/com/ossez/usreio/client/objects-missing.multipart rename to src/test/java/com/ossez/usreio/tests/client/objects-missing.multipart diff --git a/src/test/java/com/ossez/usreio/common/metadata/MetaObjectTest.java b/src/test/java/com/ossez/usreio/tests/common/metadata/MetaObjectTest.java similarity index 97% rename from src/test/java/com/ossez/usreio/common/metadata/MetaObjectTest.java rename to src/test/java/com/ossez/usreio/tests/common/metadata/MetaObjectTest.java index 43921ed..bc58f17 100644 --- a/src/test/java/com/ossez/usreio/common/metadata/MetaObjectTest.java +++ b/src/test/java/com/ossez/usreio/tests/common/metadata/MetaObjectTest.java @@ -1,4 +1,4 @@ -package com.ossez.usreio.common.metadata; +package com.ossez.usreio.tests.common.metadata; public class MetaObjectTest extends MetadataTestCase { public void testStrictAttributes() { diff --git a/src/test/java/com/ossez/usreio/common/metadata/MetadataTestCase.java b/src/test/java/com/ossez/usreio/tests/common/metadata/MetadataTestCase.java similarity index 87% rename from src/test/java/com/ossez/usreio/common/metadata/MetadataTestCase.java rename to src/test/java/com/ossez/usreio/tests/common/metadata/MetadataTestCase.java index c6335a4..c6e34aa 100644 --- a/src/test/java/com/ossez/usreio/common/metadata/MetadataTestCase.java +++ b/src/test/java/com/ossez/usreio/tests/common/metadata/MetadataTestCase.java @@ -5,7 +5,7 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata; +package com.ossez.usreio.tests.common.metadata; import junit.framework.TestCase; diff --git a/src/test/java/com/ossez/usreio/common/metadata/TestMetaObject.java b/src/test/java/com/ossez/usreio/tests/common/metadata/TestMetaObject.java similarity index 95% rename from src/test/java/com/ossez/usreio/common/metadata/TestMetaObject.java rename to src/test/java/com/ossez/usreio/tests/common/metadata/TestMetaObject.java index a452be9..099c06b 100644 --- a/src/test/java/com/ossez/usreio/common/metadata/TestMetaObject.java +++ b/src/test/java/com/ossez/usreio/tests/common/metadata/TestMetaObject.java @@ -1,4 +1,4 @@ -package com.ossez.usreio.common.metadata; +package com.ossez.usreio.tests.common.metadata; import java.util.Map; diff --git a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrAbstractTextTest.java b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrAbstractTextTest.java similarity index 83% rename from src/test/java/com/ossez/usreio/common/metadata/attrib/AttrAbstractTextTest.java rename to src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrAbstractTextTest.java index 9e77bad..6e10819 100644 --- a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrAbstractTextTest.java +++ b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrAbstractTextTest.java @@ -1,7 +1,7 @@ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; -import com.ossez.usreio.common.metadata.AttrType; -import com.ossez.usreio.common.metadata.MetaParseException; +import com.ossez.usreio.tests.common.metadata.AttrType; +import com.ossez.usreio.tests.common.metadata.MetaParseException; public class AttrAbstractTextTest extends AttrTypeTest { @Override diff --git a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrAlphanumTest.java b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrAlphanumTest.java similarity index 86% rename from src/test/java/com/ossez/usreio/common/metadata/attrib/AttrAlphanumTest.java rename to src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrAlphanumTest.java index 33947f5..49cdccc 100644 --- a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrAlphanumTest.java +++ b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrAlphanumTest.java @@ -1,7 +1,7 @@ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; -import com.ossez.usreio.common.metadata.AttrType; -import com.ossez.usreio.common.metadata.MetaParseException; +import com.ossez.usreio.tests.common.metadata.AttrType; +import com.ossez.usreio.tests.common.metadata.MetaParseException; public class AttrAlphanumTest extends AttrTypeTest { @Override diff --git a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrBooleanTest.java b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrBooleanTest.java similarity index 88% rename from src/test/java/com/ossez/usreio/common/metadata/attrib/AttrBooleanTest.java rename to src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrBooleanTest.java index 60f784c..39ab330 100644 --- a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrBooleanTest.java +++ b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrBooleanTest.java @@ -1,7 +1,7 @@ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; -import com.ossez.usreio.common.metadata.AttrType; -import com.ossez.usreio.common.metadata.MetaParseException; +import com.ossez.usreio.tests.common.metadata.AttrType; +import com.ossez.usreio.tests.common.metadata.MetaParseException; public class AttrBooleanTest extends AttrTypeTest diff --git a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrDateTest.java b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrDateTest.java similarity index 94% rename from src/test/java/com/ossez/usreio/common/metadata/attrib/AttrDateTest.java rename to src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrDateTest.java index c458062..82e4d7f 100644 --- a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrDateTest.java +++ b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrDateTest.java @@ -1,4 +1,4 @@ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; public class AttrDateTest extends AttrTypeTest { public void testAttrDate() throws Exception { diff --git a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrEnumTest.java b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrEnumTest.java similarity index 80% rename from src/test/java/com/ossez/usreio/common/metadata/attrib/AttrEnumTest.java rename to src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrEnumTest.java index 90776b4..24961d6 100644 --- a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrEnumTest.java +++ b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrEnumTest.java @@ -1,6 +1,6 @@ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; -import com.ossez.usreio.common.metadata.AttrType; +import com.ossez.usreio.tests.common.metadata.AttrType; public class AttrEnumTest extends AttrTypeTest { public void testEnum() throws Exception { diff --git a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrGenericTextTest.java b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrGenericTextTest.java similarity index 80% rename from src/test/java/com/ossez/usreio/common/metadata/attrib/AttrGenericTextTest.java rename to src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrGenericTextTest.java index 4cde387..b39bbda 100644 --- a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrGenericTextTest.java +++ b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrGenericTextTest.java @@ -1,6 +1,6 @@ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; -import com.ossez.usreio.common.metadata.AttrType; +import com.ossez.usreio.tests.common.metadata.AttrType; public class AttrGenericTextTest extends AttrTypeTest { public void testAttrGeneric() throws Exception { diff --git a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrNumericTest.java b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrNumericTest.java similarity index 84% rename from src/test/java/com/ossez/usreio/common/metadata/attrib/AttrNumericTest.java rename to src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrNumericTest.java index b2fc8ca..90ae9bb 100644 --- a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrNumericTest.java +++ b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrNumericTest.java @@ -1,6 +1,6 @@ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; -import com.ossez.usreio.common.metadata.AttrType; +import com.ossez.usreio.tests.common.metadata.AttrType; public class AttrNumericTest extends AttrTypeTest { public void testNumeric() throws Exception { diff --git a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrPlaintextTest.java b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrPlaintextTest.java similarity index 86% rename from src/test/java/com/ossez/usreio/common/metadata/attrib/AttrPlaintextTest.java rename to src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrPlaintextTest.java index bba62d8..fa6aced 100644 --- a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrPlaintextTest.java +++ b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrPlaintextTest.java @@ -1,6 +1,6 @@ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; -import com.ossez.usreio.common.metadata.AttrType; +import com.ossez.usreio.tests.common.metadata.AttrType; public class AttrPlaintextTest extends AttrTypeTest { public void testPlaintext() throws Exception { diff --git a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrTextTest.java b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrTextTest.java similarity index 82% rename from src/test/java/com/ossez/usreio/common/metadata/attrib/AttrTextTest.java rename to src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrTextTest.java index ab2c586..81941a2 100644 --- a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrTextTest.java +++ b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrTextTest.java @@ -1,6 +1,6 @@ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; -import com.ossez.usreio.common.metadata.AttrType; +import com.ossez.usreio.tests.common.metadata.AttrType; public class AttrTextTest extends AttrTypeTest { public void testAttrText() throws Exception { diff --git a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrTypeTest.java b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrTypeTest.java similarity index 73% rename from src/test/java/com/ossez/usreio/common/metadata/attrib/AttrTypeTest.java rename to src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrTypeTest.java index 6d2178e..a766932 100644 --- a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrTypeTest.java +++ b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrTypeTest.java @@ -5,11 +5,11 @@ * Copyright (c) 2003, The National Association of REALTORS * Distributed under a BSD-style license. See LICENSE.TXT for details. */ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; -import com.ossez.usreio.common.metadata.MetadataTestCase; -import com.ossez.usreio.common.metadata.AttrType; -import com.ossez.usreio.common.metadata.MetaParseException; +import com.ossez.usreio.tests.common.metadata.MetadataTestCase; +import com.ossez.usreio.tests.common.metadata.AttrType; +import com.ossez.usreio.tests.common.metadata.MetaParseException; /** * It's rare you can encapsulate the exception expecting tests, but I can, diff --git a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrVersionTest.java b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrVersionTest.java similarity index 82% rename from src/test/java/com/ossez/usreio/common/metadata/attrib/AttrVersionTest.java rename to src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrVersionTest.java index 6aa7b7f..8d6f026 100644 --- a/src/test/java/com/ossez/usreio/common/metadata/attrib/AttrVersionTest.java +++ b/src/test/java/com/ossez/usreio/tests/common/metadata/attrib/AttrVersionTest.java @@ -1,7 +1,7 @@ -package com.ossez.usreio.common.metadata.attrib; +package com.ossez.usreio.tests.common.metadata.attrib; -import com.ossez.usreio.common.metadata.AttrType; -import com.ossez.usreio.common.metadata.MetaParseException; +import com.ossez.usreio.tests.common.metadata.AttrType; +import com.ossez.usreio.tests.common.metadata.MetaParseException; public class AttrVersionTest extends AttrTypeTest { @Override diff --git a/src/test/java/com/ossez/usreio/common/util/CaseInsensitiveTreeMapTest.java b/src/test/java/com/ossez/usreio/tests/common/util/CaseInsensitiveTreeMapTest.java similarity index 92% rename from src/test/java/com/ossez/usreio/common/util/CaseInsensitiveTreeMapTest.java rename to src/test/java/com/ossez/usreio/tests/common/util/CaseInsensitiveTreeMapTest.java index b61d021..17b8d0b 100644 --- a/src/test/java/com/ossez/usreio/common/util/CaseInsensitiveTreeMapTest.java +++ b/src/test/java/com/ossez/usreio/tests/common/util/CaseInsensitiveTreeMapTest.java @@ -1,8 +1,9 @@ -package com.ossez.usreio.common.util; +package com.ossez.usreio.tests.common.util; import java.util.HashMap; import java.util.Map; +import com.ossez.usreio.common.util.CaseInsensitiveTreeMap; import junit.framework.TestCase; public class CaseInsensitiveTreeMapTest extends TestCase { diff --git a/src/test/resources/login_lower_case.xml b/src/test/resources/login_lower_case.xml index 8aa0ce3..c73ad68 100644 --- a/src/test/resources/login_lower_case.xml +++ b/src/test/resources/login_lower_case.xml @@ -1,18 +1,17 @@ - - broker = B123, BO987 - membername = Joe T. Schmoe - metadataversion = 1.00.000 - minmetadataversion = 1.00.000 - user = A123,5678,1,A123 - login = http://rets.test:6103/login - logout = http://rets.test:6103/logout - search = http://rets.test:6103/search - getmetadata = http://rets.test:6103/getMetadata - changepassword = http://rets.test:6103/changePassword - getobject = http://rets.test:6103/getObjectEx - action = http://rets.test:6103/get - balance = 44.21 - timeoutseconds = 60 - - + +broker = B123, BO987 +membername = Joe T. Schmoe +metadataversion = 1.00.000 +minmetadataversion = 1.00.000 +user = A123,5678,1,A123 +login = http://rets.test:6103/login +logout = http://rets.test:6103/logout +search = http://rets.test:6103/search +getmetadata = http://rets.test:6103/getMetadata +changepassword = http://rets.test:6103/changePassword +getobject = http://rets.test:6103/getObjectEx +action = http://rets.test:6103/get +balance = 44.21 +timeoutseconds = 60 + diff --git a/src/test/java/com/ossez/usreio/client/login_valid10.xml b/src/test/resources/login_valid10.xml similarity index 100% rename from src/test/java/com/ossez/usreio/client/login_valid10.xml rename to src/test/resources/login_valid10.xml diff --git a/src/test/java/com/ossez/usreio/client/login_valid15.xml b/src/test/resources/login_valid15.xml similarity index 100% rename from src/test/java/com/ossez/usreio/client/login_valid15.xml rename to src/test/resources/login_valid15.xml From d4a908909745c881d8d168871bbbefb148509533 Mon Sep 17 00:00:00 2001 From: YuCheng Hu Date: Tue, 30 Nov 2021 11:14:28 -0500 Subject: [PATCH 2/4] USRE-87 Change import from common package by common package renamed --- .../usreio/client/SingleObjectResponse.java | 4 ++-- .../retsapi/RETSChangePasswordTransaction.java | 2 +- .../usreio/client/retsapi/RETSConnection.java | 3 ++- .../client/retsapi/RETSSearchTransaction.java | 10 ++++------ .../usreio/client/retsapi/RETSTransaction.java | 3 ++- .../common/util/CaseInsensitiveComparator.java | 12 ------------ .../common/util/CaseInsensitiveTreeMap.java | 17 ----------------- .../usreio/{common => }/util/SessionUtils.java | 2 +- .../usreio/tests/client/RetsSessionTest.java | 2 +- 9 files changed, 13 insertions(+), 42 deletions(-) delete mode 100644 src/main/java/com/ossez/usreio/common/util/CaseInsensitiveComparator.java delete mode 100644 src/main/java/com/ossez/usreio/common/util/CaseInsensitiveTreeMap.java rename src/main/java/com/ossez/usreio/{common => }/util/SessionUtils.java (98%) diff --git a/src/main/java/com/ossez/usreio/client/SingleObjectResponse.java b/src/main/java/com/ossez/usreio/client/SingleObjectResponse.java index 9c9965d..7e07661 100644 --- a/src/main/java/com/ossez/usreio/client/SingleObjectResponse.java +++ b/src/main/java/com/ossez/usreio/client/SingleObjectResponse.java @@ -1,10 +1,10 @@ package com.ossez.usreio.client; +import com.ossez.usreio.common.util.CaseInsensitiveTreeMap; + import java.io.InputStream; import java.util.Map; -import com.ossez.usreio.common.util.CaseInsensitiveTreeMap; - /** * Representation of a single object returned * from a RETS server. diff --git a/src/main/java/com/ossez/usreio/client/retsapi/RETSChangePasswordTransaction.java b/src/main/java/com/ossez/usreio/client/retsapi/RETSChangePasswordTransaction.java index a322db2..7806f23 100644 --- a/src/main/java/com/ossez/usreio/client/retsapi/RETSChangePasswordTransaction.java +++ b/src/main/java/com/ossez/usreio/client/retsapi/RETSChangePasswordTransaction.java @@ -1,7 +1,7 @@ package com.ossez.usreio.client.retsapi; -import org.realtor.rets.util.DesCrypter; +import com.ossez.usreio.common.util.DesCrypter; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/src/main/java/com/ossez/usreio/client/retsapi/RETSConnection.java b/src/main/java/com/ossez/usreio/client/retsapi/RETSConnection.java index 109118a..793e3ea 100644 --- a/src/main/java/com/ossez/usreio/client/retsapi/RETSConnection.java +++ b/src/main/java/com/ossez/usreio/client/retsapi/RETSConnection.java @@ -7,11 +7,12 @@ package com.ossez.usreio.client.retsapi; //import com.aftexsw.util.bzip.CBZip2InputStream; +import com.ossez.usreio.common.util.RETSConfigurator; import org.apache.commons.httpclient.*; import org.apache.commons.httpclient.cookie.CookiePolicy; import org.apache.commons.httpclient.methods.GetMethod; import org.apache.commons.httpclient.methods.PostMethod; -import org.realtor.rets.util.RETSConfigurator; + import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/src/main/java/com/ossez/usreio/client/retsapi/RETSSearchTransaction.java b/src/main/java/com/ossez/usreio/client/retsapi/RETSSearchTransaction.java index c95d99b..cd8b816 100644 --- a/src/main/java/com/ossez/usreio/client/retsapi/RETSSearchTransaction.java +++ b/src/main/java/com/ossez/usreio/client/retsapi/RETSSearchTransaction.java @@ -1,7 +1,7 @@ package com.ossez.usreio.client.retsapi; -import org.realtor.rets.util.AttributeExtracter; -import org.realtor.rets.util.ResourceLocator; +import com.ossez.usreio.common.util.AttributeExtracter; +import com.ossez.usreio.common.util.ResourceLocator; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.xml.sax.helpers.DefaultHandler; @@ -11,12 +11,10 @@ import javax.xml.parsers.SAXParserFactory; import java.io.ByteArrayInputStream; import java.util.HashMap; - /** - * RETSSearchTransaction.java + * RETSSearchTransaction * - * @author jbrush - * @version 1.0 + * @author YuCheng Hu */ public class RETSSearchTransaction extends RETSTransaction { private final static Logger logger = LoggerFactory.getLogger(RETSSearchTransaction.class); diff --git a/src/main/java/com/ossez/usreio/client/retsapi/RETSTransaction.java b/src/main/java/com/ossez/usreio/client/retsapi/RETSTransaction.java index 64a6656..8f6e844 100644 --- a/src/main/java/com/ossez/usreio/client/retsapi/RETSTransaction.java +++ b/src/main/java/com/ossez/usreio/client/retsapi/RETSTransaction.java @@ -6,9 +6,10 @@ */ package com.ossez.usreio.client.retsapi; +import com.ossez.usreio.common.util.RETSRequestResponse; import org.apache.regexp.RE; import org.apache.regexp.RESyntaxException; -import org.realtor.rets.util.RETSRequestResponse; + import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/src/main/java/com/ossez/usreio/common/util/CaseInsensitiveComparator.java b/src/main/java/com/ossez/usreio/common/util/CaseInsensitiveComparator.java deleted file mode 100644 index cf4a72d..0000000 --- a/src/main/java/com/ossez/usreio/common/util/CaseInsensitiveComparator.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.ossez.usreio.common.util; - -import java.io.Serializable; -import java.util.Comparator; - -public class CaseInsensitiveComparator implements Comparator, Serializable { - public int compare(Object o1, Object o2) { - String s1 = (String) o1; - String s2 = (String) o2; - return s1.compareToIgnoreCase(s2); - } -} diff --git a/src/main/java/com/ossez/usreio/common/util/CaseInsensitiveTreeMap.java b/src/main/java/com/ossez/usreio/common/util/CaseInsensitiveTreeMap.java deleted file mode 100644 index 2d1a10f..0000000 --- a/src/main/java/com/ossez/usreio/common/util/CaseInsensitiveTreeMap.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.ossez.usreio.common.util; - -import java.util.Map; -import java.util.TreeMap; - - -public class CaseInsensitiveTreeMap extends TreeMap { - public CaseInsensitiveTreeMap(Map map) { - this(); - this.putAll(map); - } - - public CaseInsensitiveTreeMap() { - super(new CaseInsensitiveComparator()); - } - -} diff --git a/src/main/java/com/ossez/usreio/common/util/SessionUtils.java b/src/main/java/com/ossez/usreio/util/SessionUtils.java similarity index 98% rename from src/main/java/com/ossez/usreio/common/util/SessionUtils.java rename to src/main/java/com/ossez/usreio/util/SessionUtils.java index 3da525f..2305a3f 100644 --- a/src/main/java/com/ossez/usreio/common/util/SessionUtils.java +++ b/src/main/java/com/ossez/usreio/util/SessionUtils.java @@ -1,4 +1,4 @@ -package com.ossez.usreio.common.util; +package com.ossez.usreio.util; import com.ossez.usreio.client.*; import org.apache.commons.lang3.ObjectUtils; diff --git a/src/test/java/com/ossez/usreio/tests/client/RetsSessionTest.java b/src/test/java/com/ossez/usreio/tests/client/RetsSessionTest.java index 947ca5b..de83dc2 100644 --- a/src/test/java/com/ossez/usreio/tests/client/RetsSessionTest.java +++ b/src/test/java/com/ossez/usreio/tests/client/RetsSessionTest.java @@ -3,7 +3,7 @@ package com.ossez.usreio.tests.client; import com.ossez.usreio.client.RetsException; import com.ossez.usreio.client.RetsSession; import com.ossez.usreio.client.RetsVersion; -import com.ossez.usreio.common.util.SessionUtils; +import com.ossez.usreio.util.SessionUtils; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.TestInstance; import org.slf4j.Logger; From ba097b148a78c6153fb049057fb5bc1260b5c8d7 Mon Sep 17 00:00:00 2001 From: YuCheng Hu Date: Tue, 30 Nov 2021 11:16:49 -0500 Subject: [PATCH 3/4] USRE-87 Keep build by using maven --- gradle/wrapper/gradle-wrapper.jar | Bin 55616 -> 0 bytes gradle/wrapper/gradle-wrapper.properties | 6 -- project.properties | 7 -- project.xml | 115 ----------------------- 4 files changed, 128 deletions(-) delete mode 100644 gradle/wrapper/gradle-wrapper.jar delete mode 100644 gradle/wrapper/gradle-wrapper.properties delete mode 100644 project.properties delete mode 100644 project.xml diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar deleted file mode 100644 index 5c2d1cf016b3885f6930543d57b744ea8c220a1a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 55616 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 - - ${maven.base.project} - - 3 - RETS API - retsapi - 1.0 - 2003 - org.realtor.rets - /images/logos/rets_suite.jpg - - - Java RETS API - - - - The RETS API is a Reference Implementation API for RETS Transactions - written in Java and can be used as an API by web-based and desktop - RETS Client Applications. - - - /sandbox/${pom.artifactId}/ - - - - release - 1.0 - RETSAPI - - - - - - log4j - log4j - 1.2.5 - http://www.ibiblio.org/maven/log4j - - - commons-httpclient - commons-httpclient - 2.0-rc1 - http://www.ibiblio.org/maven/commons-httpclient - - - regexp - regexp - 1.2 - http://www.ibiblio.org/maven/regexp - - - BZip2 - BZip2 - 1.0 - - - - retscommons - retscommons - 1.0 - - - - - - - - rets@avantia-inc.com - - - ${basedir}/src - - - - - - ${basedir}/lib - - *.jar - - - - ${basedir}/src/resources/misc - - *.xsd - - - - ${basedir}/config - - log4j.properties - - - - - - - - - - - - maven-changelog-plugin - maven-changes-plugin - maven-checkstyle-plugin - maven-developer-activity-plugin - maven-file-activity-plugin - maven-jdepend-plugin - maven-junit-report-plugin - maven-jxr-plugin - maven-pmd-plugin - maven-tasklist-plugin - - From fb81aef6048b0db332125fa1680f408340fcbc04 Mon Sep 17 00:00:00 2001 From: YuCheng Hu Date: Tue, 30 Nov 2021 11:29:03 -0500 Subject: [PATCH 4/4] USRE-87 Merge MetaData test to one test --- .../client => resources}/metadata_tables.xml | 0 .../usreio/tests/client/MetadataTest.java | 55 ------------------- ...dataExample.java => RetsMetadataTest.java} | 43 ++++++++++++++- .../usreio/tests/client/RetsSessionTest.java | 20 ++++--- 4 files changed, 53 insertions(+), 65 deletions(-) rename src/main/{java/com/ossez/usreio/client => resources}/metadata_tables.xml (100%) delete mode 100644 src/test/java/com/ossez/usreio/tests/client/MetadataTest.java rename src/test/java/com/ossez/usreio/tests/client/{RetsGetMetadataExample.java => RetsMetadataTest.java} (59%) diff --git a/src/main/java/com/ossez/usreio/client/metadata_tables.xml b/src/main/resources/metadata_tables.xml similarity index 100% rename from src/main/java/com/ossez/usreio/client/metadata_tables.xml rename to src/main/resources/metadata_tables.xml diff --git a/src/test/java/com/ossez/usreio/tests/client/MetadataTest.java b/src/test/java/com/ossez/usreio/tests/client/MetadataTest.java deleted file mode 100644 index ca595d7..0000000 --- a/src/test/java/com/ossez/usreio/tests/client/MetadataTest.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.ossez.usreio.tests.client; - -import org.junit.jupiter.api.Test; -import com.ossez.usreio.client.retsapi.RETSConnection; -import com.ossez.usreio.client.retsapi.RETSGetMetadataTransaction; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.io.InputStream; -import java.util.Properties; - -/** - * @author YuCheng - */ -public class MetadataTest { - - private final static Logger logger = LoggerFactory.getLogger(MetadataTest.class); - - /** - * Do RetsServerConnection Test - */ - @Test - public void testStaticVariableChange() { - - // BasicConfigurator.configure(); - - RETSConnection rc = new RETSConnection(); -// RETSLoginTransaction trans = new RETSLoginTransaction(); - RETSGetMetadataTransaction trans = new RETSGetMetadataTransaction(); - - - try { - Properties props = new Properties(); - ClassLoader loader = Thread.currentThread().getContextClassLoader(); - InputStream inputStream = loader.getResourceAsStream("rets.properties"); - - props.load(inputStream); - - // Add the optional request parameters if they exist, are non-null and non-zero-length - // rc.setRequestHeaderField("Authorization", (String)props.get("login.AUTHORIZATION")); - rc.setServerUrl((String) props.getProperty("rets_server")); -// trans.setUrl((String) props.getProperty("rets_server")); -// trans.setUsername((String) props.getProperty("rets_username")); -// trans.setPassword((String) props.getProperty("rets_password")); - } catch (Exception e) { - e.printStackTrace(); - } - rc.execute(trans); -// rc.execute(transaction); - -// transaction.getVersion(); - - } - -} diff --git a/src/test/java/com/ossez/usreio/tests/client/RetsGetMetadataExample.java b/src/test/java/com/ossez/usreio/tests/client/RetsMetadataTest.java similarity index 59% rename from src/test/java/com/ossez/usreio/tests/client/RetsGetMetadataExample.java rename to src/test/java/com/ossez/usreio/tests/client/RetsMetadataTest.java index eaa87d2..d55d8b9 100644 --- a/src/test/java/com/ossez/usreio/tests/client/RetsGetMetadataExample.java +++ b/src/test/java/com/ossez/usreio/tests/client/RetsMetadataTest.java @@ -1,16 +1,21 @@ package com.ossez.usreio.tests.client; +import java.io.InputStream; import java.net.MalformedURLException; +import java.util.Properties; +import com.ossez.usreio.client.retsapi.RETSConnection; +import com.ossez.usreio.client.retsapi.RETSGetMetadataTransaction; import com.ossez.usreio.tests.common.metadata.types.MClass; import com.ossez.usreio.tests.common.metadata.types.MResource; import com.ossez.usreio.tests.common.metadata.types.MSystem; import com.ossez.usreio.client.*; +import org.junit.jupiter.api.Test; /** * Simple Example performing a GetMetadata and iterating of the results */ -public class RetsGetMetadataExample { +public class RetsMetadataTest { public static void main(String[] args) throws MalformedURLException { @@ -65,4 +70,40 @@ public class RetsGetMetadataExample { } } } + + /** + * Do RetsServerConnection Test + */ + @Test + public void testStaticVariableChange() { + + // BasicConfigurator.configure(); + + RETSConnection rc = new RETSConnection(); +// RETSLoginTransaction trans = new RETSLoginTransaction(); + RETSGetMetadataTransaction trans = new RETSGetMetadataTransaction(); + + + try { + Properties props = new Properties(); + ClassLoader loader = Thread.currentThread().getContextClassLoader(); + InputStream inputStream = loader.getResourceAsStream("rets.properties"); + + props.load(inputStream); + + // Add the optional request parameters if they exist, are non-null and non-zero-length + // rc.setRequestHeaderField("Authorization", (String)props.get("login.AUTHORIZATION")); + rc.setServerUrl((String) props.getProperty("rets_server")); +// trans.setUrl((String) props.getProperty("rets_server")); +// trans.setUsername((String) props.getProperty("rets_username")); +// trans.setPassword((String) props.getProperty("rets_password")); + } catch (Exception e) { + e.printStackTrace(); + } + rc.execute(trans); +// rc.execute(transaction); + +// transaction.getVersion(); + + } } diff --git a/src/test/java/com/ossez/usreio/tests/client/RetsSessionTest.java b/src/test/java/com/ossez/usreio/tests/client/RetsSessionTest.java index de83dc2..be9839a 100644 --- a/src/test/java/com/ossez/usreio/tests/client/RetsSessionTest.java +++ b/src/test/java/com/ossez/usreio/tests/client/RetsSessionTest.java @@ -4,12 +4,13 @@ import com.ossez.usreio.client.RetsException; import com.ossez.usreio.client.RetsSession; import com.ossez.usreio.client.RetsVersion; import com.ossez.usreio.util.SessionUtils; +import org.apache.commons.lang3.ObjectUtils; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.TestInstance; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import static org.junit.jupiter.api.Assertions.assertNull; +import static org.junit.jupiter.api.Assertions.assertNotNull; /** * Test for RETS session @@ -22,14 +23,15 @@ public class RetsSessionTest extends RetsTestCase { /** - * Test Login + * Test Login should return SessionID from server */ @Test public void testLogin() { + logger.debug("Test Rets Session Login by URL: [{}]", retsLoginUrl); try { RetsSession session = SessionUtils.retsLogin(retsLoginUrl, retsUsername, retsPassword, RetsVersion.RETS_1_7_2); - assertNull(session.getSessionId()); + assertNotNull(session.getSessionId()); } catch (RetsException ex) { logger.debug("Session Login Error", ex); } @@ -40,28 +42,28 @@ public class RetsSessionTest extends RetsTestCase { /** * TEST Logout */ - @org.junit.jupiter.api.Test + @Test public void testLogout() { - logger.debug("RETS Session Logout URL: [{}]", retsLoginUrl); + logger.debug("RETS Session Login URL: [{}]", retsLoginUrl); RetsSession session = null; try { session = SessionUtils.retsLogin(retsLoginUrl, retsUsername, retsPassword, RetsVersion.RETS_1_7_2); -// Assert.assertNotNull(session.getSessionId()); + assertNotNull(session.getSessionId()); } catch (RetsException ex) { logger.debug("Session Login Error", ex); } - if (session != null) { + // If Session is not Empty then Logout + if (ObjectUtils.isNotEmpty(session)) { try { session.logout(); } catch (RetsException e) { - e.printStackTrace(); + logger.error("Logout Error: ", e); } } } - }