diff --git a/README.md b/README.md
index dfd142c..f18eded 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,26 @@
-# indy-client-modules
+# indy-client
-Provide the client modules to Indy functionalities access and resources management on contents, stores, promotion, folo tracking, koji, etc.
\ No newline at end of file
+Provide the client modules for Indy functionalities access and resources management on the contents, stores, promotion, folo track, koji, etc.
+
+## Client Modules:
+IndyContentClientModule
+
+IndyContentBrowseClientModule
+
+IndyStoreQueryClientModule
+
+IndyStoresClientModule
+
+IndyPromoteAdminClientModule
+
+IndyPromoteClientModule
+
+IndyFoloAdminClientModule
+
+IndyFoloContentClientModule
+
+IndyKojiClientModule
+
+IndyRawHttpModule
+
+IndySslValidationClientModule
\ No newline at end of file
diff --git a/client-addons/content-browse/pom.xml b/client-addons/content-browse/pom.xml
new file mode 100644
index 0000000..31eb267
--- /dev/null
+++ b/client-addons/content-browse/pom.xml
@@ -0,0 +1,39 @@
+
+
+
+ 4.0.0
+
+ org.commonjava.indy
+ indy-client-addons
+ 3.2.0-SNAPSHOT
+
+
+ indy-content-browse-client-java
+ Indy :: Add-Ons :: Directory Content Browse :: Java Client
+
+
+
+ org.commonjava.indy
+ indy-client-core-java
+
+
+
+
\ No newline at end of file
diff --git a/src/main/java/org/commonjava/indy/client/modules/IndyContentBrowseClientModule.java b/client-addons/content-browse/src/main/java/org/commonjava/indy/content/browse/client/IndyContentBrowseClientModule.java
similarity index 87%
rename from src/main/java/org/commonjava/indy/client/modules/IndyContentBrowseClientModule.java
rename to client-addons/content-browse/src/main/java/org/commonjava/indy/content/browse/client/IndyContentBrowseClientModule.java
index 0b55abb..718f26a 100644
--- a/src/main/java/org/commonjava/indy/client/modules/IndyContentBrowseClientModule.java
+++ b/client-addons/content-browse/src/main/java/org/commonjava/indy/content/browse/client/IndyContentBrowseClientModule.java
@@ -13,14 +13,14 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.modules;
+package org.commonjava.indy.content.browse.client;
import org.commonjava.indy.client.core.IndyClientException;
import org.commonjava.indy.client.core.IndyClientModule;
-import org.commonjava.indy.client.util.UrlUtils;
-import org.commonjava.indy.client.model.browse.ContentBrowseResult;
-import org.commonjava.indy.client.model.StoreKey;
-import org.commonjava.indy.client.model.StoreType;
+import org.commonjava.indy.client.core.util.UrlUtils;
+import org.commonjava.indy.client.core.model.StoreKey;
+import org.commonjava.indy.client.core.model.StoreType;
+import org.commonjava.indy.content.browse.client.model.ContentBrowseResult;
import java.util.Map;
public class IndyContentBrowseClientModule
diff --git a/src/main/java/org/commonjava/indy/client/model/browse/ContentBrowseResult.java b/client-addons/content-browse/src/main/java/org/commonjava/indy/content/browse/client/model/ContentBrowseResult.java
similarity index 97%
rename from src/main/java/org/commonjava/indy/client/model/browse/ContentBrowseResult.java
rename to client-addons/content-browse/src/main/java/org/commonjava/indy/content/browse/client/model/ContentBrowseResult.java
index 26439c4..9f3903a 100644
--- a/src/main/java/org/commonjava/indy/client/model/browse/ContentBrowseResult.java
+++ b/client-addons/content-browse/src/main/java/org/commonjava/indy/content/browse/client/model/ContentBrowseResult.java
@@ -13,9 +13,9 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model.browse;
+package org.commonjava.indy.content.browse.client.model;
-import org.commonjava.indy.client.model.StoreKey;
+import org.commonjava.indy.client.core.model.StoreKey;
import java.util.List;
import java.util.Set;
diff --git a/client-addons/folo/pom.xml b/client-addons/folo/pom.xml
new file mode 100644
index 0000000..f6a6af9
--- /dev/null
+++ b/client-addons/folo/pom.xml
@@ -0,0 +1,43 @@
+
+
+
+ 4.0.0
+
+ org.commonjava.indy
+ indy-client-addons
+ 3.2.0-SNAPSHOT
+
+
+ indy-folo-client-java
+ Indy :: Add-Ons :: Folo Usage Tracker :: Java Client
+
+
+
+ org.commonjava.indy
+ indy-client-core-java
+
+
+ io.swagger
+ swagger-annotations
+
+
+
+
\ No newline at end of file
diff --git a/src/main/java/org/commonjava/indy/client/modules/IndyFoloAdminClientModule.java b/client-addons/folo/src/main/java/org/commonjava/indy/folo/client/IndyFoloAdminClientModule.java
similarity index 93%
rename from src/main/java/org/commonjava/indy/client/modules/IndyFoloAdminClientModule.java
rename to client-addons/folo/src/main/java/org/commonjava/indy/folo/client/IndyFoloAdminClientModule.java
index 547ab2f..815a091 100644
--- a/src/main/java/org/commonjava/indy/client/modules/IndyFoloAdminClientModule.java
+++ b/client-addons/folo/src/main/java/org/commonjava/indy/folo/client/IndyFoloAdminClientModule.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.modules;
+package org.commonjava.indy.folo.client;
import org.apache.commons.io.IOUtils;
import org.apache.http.HttpResponse;
@@ -23,11 +23,11 @@
import org.commonjava.indy.client.core.IndyClientException;
import org.commonjava.indy.client.core.IndyClientModule;
import org.commonjava.indy.client.core.IndyResponseErrorDetails;
-import org.commonjava.indy.client.helper.HttpResources;
-import org.commonjava.indy.client.util.UrlUtils;
-import org.commonjava.indy.client.model.folo.TrackedContentDTO;
-import org.commonjava.indy.client.model.folo.TrackingIdsDTO;
-import org.commonjava.indy.client.model.BatchDeleteRequest;
+import org.commonjava.indy.client.core.helper.HttpResources;
+import org.commonjava.indy.client.core.model.BatchDeleteRequest;
+import org.commonjava.indy.client.core.util.UrlUtils;
+import org.commonjava.indy.folo.client.model.TrackedContentDTO;
+import org.commonjava.indy.folo.client.model.TrackingIdsDTO;
import java.io.IOException;
import java.io.InputStream;
diff --git a/src/main/java/org/commonjava/indy/client/modules/IndyFoloContentClientModule.java b/client-addons/folo/src/main/java/org/commonjava/indy/folo/client/IndyFoloContentClientModule.java
similarity index 94%
rename from src/main/java/org/commonjava/indy/client/modules/IndyFoloContentClientModule.java
rename to client-addons/folo/src/main/java/org/commonjava/indy/folo/client/IndyFoloContentClientModule.java
index bd32d51..f9bd49a 100644
--- a/src/main/java/org/commonjava/indy/client/modules/IndyFoloContentClientModule.java
+++ b/client-addons/folo/src/main/java/org/commonjava/indy/folo/client/IndyFoloContentClientModule.java
@@ -13,18 +13,18 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.modules;
+package org.commonjava.indy.folo.client;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.Map;
import org.apache.commons.io.IOUtils;
import org.commonjava.indy.client.core.IndyClientException;
import org.commonjava.indy.client.core.IndyClientModule;
-import org.commonjava.indy.client.helper.HttpResources;
-import org.commonjava.indy.client.helper.PathInfo;
-import org.commonjava.indy.client.util.UrlUtils;
-import org.commonjava.indy.client.model.StoreKey;
+import org.commonjava.indy.client.core.helper.HttpResources;
+import org.commonjava.indy.client.core.helper.PathInfo;
+import org.commonjava.indy.client.core.model.StoreKey;
+import org.commonjava.indy.client.core.util.UrlUtils;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.Map;
public class IndyFoloContentClientModule
extends IndyClientModule
diff --git a/src/main/java/org/commonjava/indy/client/model/folo/TrackedContentDTO.java b/client-addons/folo/src/main/java/org/commonjava/indy/folo/client/model/TrackedContentDTO.java
similarity index 98%
rename from src/main/java/org/commonjava/indy/client/model/folo/TrackedContentDTO.java
rename to client-addons/folo/src/main/java/org/commonjava/indy/folo/client/model/TrackedContentDTO.java
index 3bcc0f3..8255929 100644
--- a/src/main/java/org/commonjava/indy/client/model/folo/TrackedContentDTO.java
+++ b/client-addons/folo/src/main/java/org/commonjava/indy/folo/client/model/TrackedContentDTO.java
@@ -13,9 +13,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model.folo;
+package org.commonjava.indy.folo.client.model;
import io.swagger.annotations.ApiModelProperty;
+
import java.util.Set;
public class TrackedContentDTO
diff --git a/src/main/java/org/commonjava/indy/client/model/folo/TrackedContentEntryDTO.java b/client-addons/folo/src/main/java/org/commonjava/indy/folo/client/model/TrackedContentEntryDTO.java
similarity index 97%
rename from src/main/java/org/commonjava/indy/client/model/folo/TrackedContentEntryDTO.java
rename to client-addons/folo/src/main/java/org/commonjava/indy/folo/client/model/TrackedContentEntryDTO.java
index facf331..fce8795 100644
--- a/src/main/java/org/commonjava/indy/client/model/folo/TrackedContentEntryDTO.java
+++ b/client-addons/folo/src/main/java/org/commonjava/indy/folo/client/model/TrackedContentEntryDTO.java
@@ -13,11 +13,12 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model.folo;
+package org.commonjava.indy.folo.client.model;
import io.swagger.annotations.ApiModelProperty;
-import org.commonjava.indy.client.model.AccessChannel;
-import org.commonjava.indy.client.model.StoreKey;
+import org.commonjava.indy.client.core.model.AccessChannel;
+import org.commonjava.indy.client.core.model.StoreKey;
+
import java.util.Set;
public class TrackedContentEntryDTO
diff --git a/src/main/java/org/commonjava/indy/client/model/folo/TrackingIdsDTO.java b/client-addons/folo/src/main/java/org/commonjava/indy/folo/client/model/TrackingIdsDTO.java
similarity index 96%
rename from src/main/java/org/commonjava/indy/client/model/folo/TrackingIdsDTO.java
rename to client-addons/folo/src/main/java/org/commonjava/indy/folo/client/model/TrackingIdsDTO.java
index feae063..773bd0f 100644
--- a/src/main/java/org/commonjava/indy/client/model/folo/TrackingIdsDTO.java
+++ b/client-addons/folo/src/main/java/org/commonjava/indy/folo/client/model/TrackingIdsDTO.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model.folo;
+package org.commonjava.indy.folo.client.model;
import java.util.Set;
diff --git a/src/main/java/org/commonjava/indy/client/model/folo/TrackingKey.java b/client-addons/folo/src/main/java/org/commonjava/indy/folo/client/model/TrackingKey.java
similarity index 98%
rename from src/main/java/org/commonjava/indy/client/model/folo/TrackingKey.java
rename to client-addons/folo/src/main/java/org/commonjava/indy/folo/client/model/TrackingKey.java
index a9e2752..b59e205 100644
--- a/src/main/java/org/commonjava/indy/client/model/folo/TrackingKey.java
+++ b/client-addons/folo/src/main/java/org/commonjava/indy/folo/client/model/TrackingKey.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model.folo;
+package org.commonjava.indy.folo.client.model;
import java.io.Externalizable;
import java.io.IOException;
diff --git a/client-addons/koji/pom.xml b/client-addons/koji/pom.xml
new file mode 100644
index 0000000..54c3594
--- /dev/null
+++ b/client-addons/koji/pom.xml
@@ -0,0 +1,43 @@
+
+
+
+ 4.0.0
+
+ org.commonjava.indy
+ indy-client-addons
+ 3.2.0-SNAPSHOT
+
+
+ indy-koji-client-java
+ Indy :: Add-Ons :: Koji Integration :: Java Client
+
+
+
+ org.commonjava.indy
+ indy-client-core-java
+
+
+ io.swagger
+ swagger-annotations
+
+
+
+
\ No newline at end of file
diff --git a/src/main/java/org/commonjava/indy/client/modules/IndyKojiClientModule.java b/client-addons/koji/src/main/java/org/commonjava/indy/koji/client/IndyKojiClientModule.java
similarity index 85%
rename from src/main/java/org/commonjava/indy/client/modules/IndyKojiClientModule.java
rename to client-addons/koji/src/main/java/org/commonjava/indy/koji/client/IndyKojiClientModule.java
index 5a52710..08a682f 100644
--- a/src/main/java/org/commonjava/indy/client/modules/IndyKojiClientModule.java
+++ b/client-addons/koji/src/main/java/org/commonjava/indy/koji/client/IndyKojiClientModule.java
@@ -13,15 +13,15 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.modules;
+package org.commonjava.indy.koji.client;
import org.apache.http.HttpStatus;
import org.commonjava.indy.client.core.IndyClientException;
import org.commonjava.indy.client.core.IndyClientModule;
-import org.commonjava.indy.client.model.koji.KojiRepairRequest;
-import org.commonjava.indy.client.model.koji.KojiRepairResult;
-import org.commonjava.indy.client.model.StoreKey;
-import org.commonjava.indy.client.model.StoreType;
+import org.commonjava.indy.client.core.model.StoreKey;
+import org.commonjava.indy.client.core.model.StoreType;
+import org.commonjava.indy.koji.client.model.KojiRepairRequest;
+import org.commonjava.indy.koji.client.model.KojiRepairResult;
public class IndyKojiClientModule
extends IndyClientModule
diff --git a/src/main/java/org/commonjava/indy/client/model/koji/KojiRepairRequest.java b/client-addons/koji/src/main/java/org/commonjava/indy/koji/client/model/KojiRepairRequest.java
similarity index 94%
rename from src/main/java/org/commonjava/indy/client/model/koji/KojiRepairRequest.java
rename to client-addons/koji/src/main/java/org/commonjava/indy/koji/client/model/KojiRepairRequest.java
index d74174e..4a50fcf 100644
--- a/src/main/java/org/commonjava/indy/client/model/koji/KojiRepairRequest.java
+++ b/client-addons/koji/src/main/java/org/commonjava/indy/koji/client/model/KojiRepairRequest.java
@@ -13,10 +13,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model.koji;
+package org.commonjava.indy.koji.client.model;
import io.swagger.annotations.ApiModelProperty;
-import org.commonjava.indy.client.model.StoreKey;
+import org.commonjava.indy.client.core.model.StoreKey;
/**
* Request to repair Koji remote stores. If source is a group, all repositories in the group are to be repaired.
diff --git a/src/main/java/org/commonjava/indy/client/model/koji/KojiRepairResult.java b/client-addons/koji/src/main/java/org/commonjava/indy/koji/client/model/KojiRepairResult.java
similarity index 98%
rename from src/main/java/org/commonjava/indy/client/model/koji/KojiRepairResult.java
rename to client-addons/koji/src/main/java/org/commonjava/indy/koji/client/model/KojiRepairResult.java
index 0245be1..3425845 100644
--- a/src/main/java/org/commonjava/indy/client/model/koji/KojiRepairResult.java
+++ b/client-addons/koji/src/main/java/org/commonjava/indy/koji/client/model/KojiRepairResult.java
@@ -13,10 +13,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model.koji;
+package org.commonjava.indy.koji.client.model;
import io.swagger.annotations.ApiModelProperty;
-import org.commonjava.indy.client.model.StoreKey;
+import org.commonjava.indy.client.core.model.StoreKey;
import java.util.ArrayList;
import java.util.List;
diff --git a/client-addons/pom.xml b/client-addons/pom.xml
new file mode 100644
index 0000000..7e1929e
--- /dev/null
+++ b/client-addons/pom.xml
@@ -0,0 +1,39 @@
+
+
+
+ 4.0.0
+
+ org.commonjava.indy
+ indy-clients-parent
+ 3.2.0-SNAPSHOT
+
+
+ indy-client-addons
+ pom
+ Indy :: Client Add-Ons :: Parent
+
+ content-browse
+ folo
+ promote
+ koji
+
+
+
\ No newline at end of file
diff --git a/client-addons/promote/pom.xml b/client-addons/promote/pom.xml
new file mode 100644
index 0000000..52cbfc7
--- /dev/null
+++ b/client-addons/promote/pom.xml
@@ -0,0 +1,43 @@
+
+
+
+ 4.0.0
+
+ org.commonjava.indy
+ indy-client-addons
+ 3.2.0-SNAPSHOT
+
+
+ indy-promote-client-java
+ Indy :: Add-Ons :: Artifact Promotion :: Java Client
+
+
+
+ org.commonjava.indy
+ indy-client-core-java
+
+
+ io.swagger
+ swagger-annotations
+
+
+
+
\ No newline at end of file
diff --git a/src/main/java/org/commonjava/indy/client/modules/IndyPromoteAdminClientModule.java b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/IndyPromoteAdminClientModule.java
similarity index 92%
rename from src/main/java/org/commonjava/indy/client/modules/IndyPromoteAdminClientModule.java
rename to client-addons/promote/src/main/java/org/commonjava/indy/promote/client/IndyPromoteAdminClientModule.java
index 18e02a6..59328da 100644
--- a/src/main/java/org/commonjava/indy/client/modules/IndyPromoteAdminClientModule.java
+++ b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/IndyPromoteAdminClientModule.java
@@ -13,18 +13,18 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.modules;
+package org.commonjava.indy.promote.client;
import org.apache.http.HttpStatus;
import org.commonjava.indy.client.core.IndyClientException;
import org.commonjava.indy.client.core.IndyClientModule;
-import org.commonjava.indy.client.model.StoreKey;
-import org.commonjava.indy.client.model.promote.ValidationRuleDTO;
-import org.commonjava.indy.client.model.promote.ValidationRuleSet;
+import org.commonjava.indy.client.core.model.StoreKey;
+import org.commonjava.indy.promote.client.model.ValidationRuleDTO;
+import org.commonjava.indy.promote.client.model.ValidationRuleSet;
import java.util.List;
import java.util.stream.Collectors;
-import static org.commonjava.indy.client.util.UrlUtils.buildUrl;
+import static org.commonjava.indy.client.core.util.UrlUtils.buildUrl;
public class IndyPromoteAdminClientModule
extends IndyClientModule
diff --git a/src/main/java/org/commonjava/indy/client/modules/IndyPromoteClientModule.java b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/IndyPromoteClientModule.java
similarity index 91%
rename from src/main/java/org/commonjava/indy/client/modules/IndyPromoteClientModule.java
rename to client-addons/promote/src/main/java/org/commonjava/indy/promote/client/IndyPromoteClientModule.java
index 1362852..c01b046 100644
--- a/src/main/java/org/commonjava/indy/client/modules/IndyPromoteClientModule.java
+++ b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/IndyPromoteClientModule.java
@@ -13,15 +13,15 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.modules;
+package org.commonjava.indy.promote.client;
import org.apache.http.HttpStatus;
import org.commonjava.indy.client.core.IndyClientException;
import org.commonjava.indy.client.core.IndyClientModule;
-import org.commonjava.indy.client.util.UrlUtils;
-import org.commonjava.indy.client.model.StoreKey;
-import org.commonjava.indy.client.model.promote.PathsPromoteRequest;
-import org.commonjava.indy.client.model.promote.PathsPromoteResult;
+import org.commonjava.indy.client.core.util.UrlUtils;
+import org.commonjava.indy.client.core.model.StoreKey;
+import org.commonjava.indy.promote.client.model.PathsPromoteRequest;
+import org.commonjava.indy.promote.client.model.PathsPromoteResult;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
diff --git a/src/main/java/org/commonjava/indy/client/model/promote/AbstractPromoteRequest.java b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/AbstractPromoteRequest.java
similarity index 97%
rename from src/main/java/org/commonjava/indy/client/model/promote/AbstractPromoteRequest.java
rename to client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/AbstractPromoteRequest.java
index e850ca1..05f5bb5 100644
--- a/src/main/java/org/commonjava/indy/client/model/promote/AbstractPromoteRequest.java
+++ b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/AbstractPromoteRequest.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model.promote;
+package org.commonjava.indy.promote.client.model;
import io.swagger.annotations.ApiModelProperty;
import java.util.UUID;
diff --git a/src/main/java/org/commonjava/indy/client/model/promote/AbstractPromoteResult.java b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/AbstractPromoteResult.java
similarity index 97%
rename from src/main/java/org/commonjava/indy/client/model/promote/AbstractPromoteResult.java
rename to client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/AbstractPromoteResult.java
index a54bad1..0cb1ebe 100644
--- a/src/main/java/org/commonjava/indy/client/model/promote/AbstractPromoteResult.java
+++ b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/AbstractPromoteResult.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model.promote;
+package org.commonjava.indy.promote.client.model;
import io.swagger.annotations.ApiModelProperty;
diff --git a/src/main/java/org/commonjava/indy/client/model/promote/CallbackTarget.java b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/CallbackTarget.java
similarity index 97%
rename from src/main/java/org/commonjava/indy/client/model/promote/CallbackTarget.java
rename to client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/CallbackTarget.java
index ba0e8d2..d5d2c9c 100644
--- a/src/main/java/org/commonjava/indy/client/model/promote/CallbackTarget.java
+++ b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/CallbackTarget.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model.promote;
+package org.commonjava.indy.promote.client.model;
import java.util.Collections;
import java.util.Map;
diff --git a/src/main/java/org/commonjava/indy/client/model/promote/PathsPromoteRequest.java b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/PathsPromoteRequest.java
similarity index 97%
rename from src/main/java/org/commonjava/indy/client/model/promote/PathsPromoteRequest.java
rename to client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/PathsPromoteRequest.java
index 5cd03f1..e897c5f 100644
--- a/src/main/java/org/commonjava/indy/client/model/promote/PathsPromoteRequest.java
+++ b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/PathsPromoteRequest.java
@@ -13,10 +13,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model.promote;
+package org.commonjava.indy.promote.client.model;
import io.swagger.annotations.ApiModelProperty;
-import org.commonjava.indy.client.model.StoreKey;
+import org.commonjava.indy.client.core.model.StoreKey;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashSet;
diff --git a/src/main/java/org/commonjava/indy/client/model/promote/PathsPromoteResult.java b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/PathsPromoteResult.java
similarity index 98%
rename from src/main/java/org/commonjava/indy/client/model/promote/PathsPromoteResult.java
rename to client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/PathsPromoteResult.java
index 8cef6e0..437129a 100644
--- a/src/main/java/org/commonjava/indy/client/model/promote/PathsPromoteResult.java
+++ b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/PathsPromoteResult.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model.promote;
+package org.commonjava.indy.promote.client.model;
import io.swagger.annotations.ApiModelProperty;
import java.util.Collections;
diff --git a/src/main/java/org/commonjava/indy/client/model/promote/PromoteRequest.java b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/PromoteRequest.java
similarity index 90%
rename from src/main/java/org/commonjava/indy/client/model/promote/PromoteRequest.java
rename to client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/PromoteRequest.java
index 42e91fd..0cfb65e 100644
--- a/src/main/java/org/commonjava/indy/client/model/promote/PromoteRequest.java
+++ b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/PromoteRequest.java
@@ -13,9 +13,9 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model.promote;
+package org.commonjava.indy.promote.client.model;
-import org.commonjava.indy.client.model.StoreKey;
+import org.commonjava.indy.client.core.model.StoreKey;
/**
* Created by jdcasey on 9/11/15.
diff --git a/src/main/java/org/commonjava/indy/client/model/promote/ValidationResult.java b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/ValidationResult.java
similarity index 98%
rename from src/main/java/org/commonjava/indy/client/model/promote/ValidationResult.java
rename to client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/ValidationResult.java
index b095218..3de33c9 100644
--- a/src/main/java/org/commonjava/indy/client/model/promote/ValidationResult.java
+++ b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/ValidationResult.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model.promote;
+package org.commonjava.indy.promote.client.model;
import io.swagger.annotations.ApiModelProperty;
import java.util.HashMap;
diff --git a/src/main/java/org/commonjava/indy/client/model/promote/ValidationRuleDTO.java b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/ValidationRuleDTO.java
similarity index 98%
rename from src/main/java/org/commonjava/indy/client/model/promote/ValidationRuleDTO.java
rename to client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/ValidationRuleDTO.java
index 763c877..28fdf16 100644
--- a/src/main/java/org/commonjava/indy/client/model/promote/ValidationRuleDTO.java
+++ b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/ValidationRuleDTO.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model.promote;
+package org.commonjava.indy.promote.client.model;
import io.swagger.annotations.ApiModelProperty;
diff --git a/src/main/java/org/commonjava/indy/client/model/promote/ValidationRuleSet.java b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/ValidationRuleSet.java
similarity index 98%
rename from src/main/java/org/commonjava/indy/client/model/promote/ValidationRuleSet.java
rename to client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/ValidationRuleSet.java
index 9dc3a78..ff53a6a 100644
--- a/src/main/java/org/commonjava/indy/client/model/promote/ValidationRuleSet.java
+++ b/client-addons/promote/src/main/java/org/commonjava/indy/promote/client/model/ValidationRuleSet.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model.promote;
+package org.commonjava.indy.promote.client.model;
import io.swagger.annotations.ApiModelProperty;
import org.slf4j.Logger;
diff --git a/core-java/pom.xml b/core-java/pom.xml
new file mode 100644
index 0000000..aff88c6
--- /dev/null
+++ b/core-java/pom.xml
@@ -0,0 +1,81 @@
+
+
+
+ 4.0.0
+
+ org.commonjava.indy
+ indy-clients-parent
+ 3.2.0-SNAPSHOT
+
+
+ indy-client-core-java
+ Indy :: Client APIs :: Core for Java
+
+
+
+ org.commonjava.util
+ jhttpc
+
+
+ org.commonjava.util
+ o11yphant-trace-api
+
+
+ org.commonjava.util
+ o11yphant-trace-honeycomb
+
+
+ io.undertow
+ undertow-servlet
+
+
+
+
+ org.commonjava.util
+ o11yphant-trace-otel
+
+
+ org.commonjava.util
+ o11yphant-trace-helper-jhttpc
+
+
+ org.commonjava.util
+ o11yphant-metrics-common
+
+
+ org.apache.httpcomponents
+ httpclient
+
+
+ org.slf4j
+ jcl-over-slf4j
+
+
+ commons-io
+ commons-io
+
+
+ io.swagger
+ swagger-annotations
+
+
+
+
\ No newline at end of file
diff --git a/src/main/java/org/commonjava/indy/client/core/Indy.java b/core-java/src/main/java/org/commonjava/indy/client/core/Indy.java
similarity index 97%
rename from src/main/java/org/commonjava/indy/client/core/Indy.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/Indy.java
index a23d3ff..1e83bfd 100644
--- a/src/main/java/org/commonjava/indy/client/core/Indy.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/Indy.java
@@ -17,8 +17,9 @@
import com.fasterxml.jackson.databind.Module;
import com.fasterxml.jackson.databind.ObjectMapper;
-import org.commonjava.indy.client.modules.IndyContentClientModule;
-import org.commonjava.indy.client.modules.IndyStoresClientModule;
+import org.commonjava.indy.client.core.auth.IndyClientAuthenticator;
+import org.commonjava.indy.client.core.modules.IndyContentClientModule;
+import org.commonjava.indy.client.core.modules.IndyStoresClientModule;
import org.commonjava.o11yphant.trace.TracerConfiguration;
import org.commonjava.util.jhttpc.auth.PasswordManager;
import org.commonjava.util.jhttpc.model.SiteConfig;
@@ -46,7 +47,7 @@ public Indy(final String baseUrl, final IndyClientModule... modules )
}
@Deprecated
- public Indy(final String baseUrl, final IndyClientAuthenticator authenticator, final IndyClientModule... modules )
+ public Indy( final String baseUrl, final IndyClientAuthenticator authenticator, final IndyClientModule... modules )
throws IndyClientException
{
this( authenticator, null, Arrays.asList( modules ), IndyClientHttp.defaultSiteConfig( baseUrl ) );
diff --git a/src/main/java/org/commonjava/indy/client/core/IndyClientException.java b/core-java/src/main/java/org/commonjava/indy/client/core/IndyClientException.java
similarity index 100%
rename from src/main/java/org/commonjava/indy/client/core/IndyClientException.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/IndyClientException.java
diff --git a/src/main/java/org/commonjava/indy/client/core/IndyClientHttp.java b/core-java/src/main/java/org/commonjava/indy/client/core/IndyClientHttp.java
similarity index 97%
rename from src/main/java/org/commonjava/indy/client/core/IndyClientHttp.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/IndyClientHttp.java
index 24c610c..a677b04 100644
--- a/src/main/java/org/commonjava/indy/client/core/IndyClientHttp.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/IndyClientHttp.java
@@ -29,9 +29,10 @@
import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.message.BasicHeader;
import org.apache.http.util.VersionInfo;
-import org.commonjava.indy.client.helper.HttpResources;
-import org.commonjava.indy.client.metric.ClientMetricManager;
-import org.commonjava.indy.client.metric.ClientMetrics;
+import org.commonjava.indy.client.core.auth.IndyClientAuthenticator;
+import org.commonjava.indy.client.core.helper.HttpResources;
+import org.commonjava.indy.client.core.metric.ClientMetricManager;
+import org.commonjava.indy.client.core.metric.ClientMetrics;
import org.commonjava.o11yphant.jhttpc.SpanningHttpFactory;
import org.commonjava.o11yphant.trace.TracerConfiguration;
import org.commonjava.util.jhttpc.HttpFactory;
@@ -52,11 +53,11 @@
import java.util.function.Supplier;
import static org.apache.commons.lang3.StringUtils.isNotBlank;
-import static org.commonjava.indy.client.helper.HttpResources.cleanupResources;
-import static org.commonjava.indy.client.helper.HttpResources.entityToString;
-import static org.commonjava.indy.client.metric.ClientMetricConstants.HEADER_CLIENT_API;
-import static org.commonjava.indy.client.metric.ClientMetricConstants.HEADER_CLIENT_TRACE_ID;
-import static org.commonjava.indy.client.util.UrlUtils.buildUrl;
+import static org.commonjava.indy.client.core.helper.HttpResources.cleanupResources;
+import static org.commonjava.indy.client.core.helper.HttpResources.entityToString;
+import static org.commonjava.indy.client.core.metric.ClientMetricConstants.HEADER_CLIENT_API;
+import static org.commonjava.indy.client.core.metric.ClientMetricConstants.HEADER_CLIENT_TRACE_ID;
+import static org.commonjava.indy.client.core.util.UrlUtils.buildUrl;
@SuppressWarnings( "unused" )
public class IndyClientHttp
@@ -95,8 +96,8 @@ public class IndyClientHttp
* @deprecated - since 3.1.0, we have introduced new {@link Builder} to set this up, so please try to use it
*/
@Deprecated
- public IndyClientHttp(final IndyClientAuthenticator authenticator, final ObjectMapper mapper,
- SiteConfig location, String apiVersion, Map mdcCopyMappings )
+ public IndyClientHttp( final IndyClientAuthenticator authenticator, final ObjectMapper mapper,
+ SiteConfig location, String apiVersion, Map mdcCopyMappings )
throws IndyClientException
{
this( mapper, location, apiVersion );
diff --git a/src/main/java/org/commonjava/indy/client/core/IndyClientModule.java b/core-java/src/main/java/org/commonjava/indy/client/core/IndyClientModule.java
similarity index 100%
rename from src/main/java/org/commonjava/indy/client/core/IndyClientModule.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/IndyClientModule.java
diff --git a/src/main/java/org/commonjava/indy/client/core/IndyException.java b/core-java/src/main/java/org/commonjava/indy/client/core/IndyException.java
similarity index 100%
rename from src/main/java/org/commonjava/indy/client/core/IndyException.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/IndyException.java
diff --git a/src/main/java/org/commonjava/indy/client/core/IndyResponseErrorDetails.java b/core-java/src/main/java/org/commonjava/indy/client/core/IndyResponseErrorDetails.java
similarity index 100%
rename from src/main/java/org/commonjava/indy/client/core/IndyResponseErrorDetails.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/IndyResponseErrorDetails.java
diff --git a/src/main/java/org/commonjava/indy/client/util/PackageTypeConstants.java b/core-java/src/main/java/org/commonjava/indy/client/core/PackageTypeConstants.java
similarity index 96%
rename from src/main/java/org/commonjava/indy/client/util/PackageTypeConstants.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/PackageTypeConstants.java
index 215d79f..a39f90b 100644
--- a/src/main/java/org/commonjava/indy/client/util/PackageTypeConstants.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/PackageTypeConstants.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.util;
+package org.commonjava.indy.client.core;
/**
* Created by ruhan on 7/24/18.
diff --git a/src/main/java/org/commonjava/indy/client/core/IndyClientAuthenticator.java b/core-java/src/main/java/org/commonjava/indy/client/core/auth/IndyClientAuthenticator.java
similarity index 96%
rename from src/main/java/org/commonjava/indy/client/core/IndyClientAuthenticator.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/auth/IndyClientAuthenticator.java
index 2017681..28ae7b4 100644
--- a/src/main/java/org/commonjava/indy/client/core/IndyClientAuthenticator.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/auth/IndyClientAuthenticator.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.core;
+package org.commonjava.indy.client.core.auth;
import org.apache.http.auth.AuthScope;
import org.apache.http.client.protocol.HttpClientContext;
diff --git a/src/main/java/org/commonjava/indy/client/helper/HttpResources.java b/core-java/src/main/java/org/commonjava/indy/client/core/helper/HttpResources.java
similarity index 98%
rename from src/main/java/org/commonjava/indy/client/helper/HttpResources.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/helper/HttpResources.java
index ab5a0f2..d78d87d 100644
--- a/src/main/java/org/commonjava/indy/client/helper/HttpResources.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/helper/HttpResources.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.helper;
+package org.commonjava.indy.client.core.helper;
import org.apache.commons.io.IOUtils;
import org.apache.http.HttpRequest;
@@ -25,7 +25,7 @@
import org.apache.http.client.methods.HttpEntityEnclosingRequestBase;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.util.EntityUtils;
-import org.commonjava.indy.client.metric.ClientMetrics;
+import org.commonjava.indy.client.core.metric.ClientMetrics;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.Closeable;
diff --git a/src/main/java/org/commonjava/indy/client/helper/PathInfo.java b/core-java/src/main/java/org/commonjava/indy/client/core/helper/PathInfo.java
similarity index 98%
rename from src/main/java/org/commonjava/indy/client/helper/PathInfo.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/helper/PathInfo.java
index 9f19957..2548c61 100644
--- a/src/main/java/org/commonjava/indy/client/helper/PathInfo.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/helper/PathInfo.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.helper;
+package org.commonjava.indy.client.core.helper;
import java.text.ParseException;
diff --git a/src/main/java/org/commonjava/indy/client/inject/ClientMetricConfig.java b/core-java/src/main/java/org/commonjava/indy/client/core/inject/ClientMetricConfig.java
similarity index 94%
rename from src/main/java/org/commonjava/indy/client/inject/ClientMetricConfig.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/inject/ClientMetricConfig.java
index 8a01fd8..c70e425 100644
--- a/src/main/java/org/commonjava/indy/client/inject/ClientMetricConfig.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/inject/ClientMetricConfig.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.inject;
+package org.commonjava.indy.client.core.inject;
import javax.inject.Qualifier;
import java.lang.annotation.*;
diff --git a/src/main/java/org/commonjava/indy/client/inject/ClientMetricSet.java b/core-java/src/main/java/org/commonjava/indy/client/core/inject/ClientMetricSet.java
similarity index 95%
rename from src/main/java/org/commonjava/indy/client/inject/ClientMetricSet.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/inject/ClientMetricSet.java
index 39fb392..d849f64 100644
--- a/src/main/java/org/commonjava/indy/client/inject/ClientMetricSet.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/inject/ClientMetricSet.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.inject;
+package org.commonjava.indy.client.core.inject;
import javax.inject.Qualifier;
import java.lang.annotation.*;
diff --git a/src/main/java/org/commonjava/indy/client/metric/ClientGoldenSignalsMetricSet.java b/core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientGoldenSignalsMetricSet.java
similarity index 87%
rename from src/main/java/org/commonjava/indy/client/metric/ClientGoldenSignalsMetricSet.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientGoldenSignalsMetricSet.java
index 53cbcc6..15e48e5 100644
--- a/src/main/java/org/commonjava/indy/client/metric/ClientGoldenSignalsMetricSet.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientGoldenSignalsMetricSet.java
@@ -13,15 +13,15 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.metric;
+package org.commonjava.indy.client.core.metric;
-import org.commonjava.indy.client.inject.ClientMetricSet;
+import org.commonjava.indy.client.core.inject.ClientMetricSet;
import org.commonjava.o11yphant.metrics.sli.GoldenSignalsFunctionMetrics;
import org.commonjava.o11yphant.metrics.sli.GoldenSignalsMetricSet;
import java.util.Arrays;
import java.util.Collection;
-import static org.commonjava.indy.client.metric.ClientMetricConstants.CLIENT_FUNCTIONS;
+import static org.commonjava.indy.client.core.metric.ClientMetricConstants.CLIENT_FUNCTIONS;
@ClientMetricSet
public class ClientGoldenSignalsMetricSet
diff --git a/src/main/java/org/commonjava/indy/client/metric/ClientGoldenSignalsSpanFieldsInjector.java b/core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientGoldenSignalsSpanFieldsInjector.java
similarity index 97%
rename from src/main/java/org/commonjava/indy/client/metric/ClientGoldenSignalsSpanFieldsInjector.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientGoldenSignalsSpanFieldsInjector.java
index efe5420..4b15a24 100644
--- a/src/main/java/org/commonjava/indy/client/metric/ClientGoldenSignalsSpanFieldsInjector.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientGoldenSignalsSpanFieldsInjector.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.metric;
+package org.commonjava.indy.client.core.metric;
import org.commonjava.o11yphant.metrics.api.Gauge;
import org.commonjava.o11yphant.metrics.api.Meter;
diff --git a/src/main/java/org/commonjava/indy/client/metric/ClientMetricConstants.java b/core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientMetricConstants.java
similarity index 96%
rename from src/main/java/org/commonjava/indy/client/metric/ClientMetricConstants.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientMetricConstants.java
index bf9ca49..4a7364a 100644
--- a/src/main/java/org/commonjava/indy/client/metric/ClientMetricConstants.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientMetricConstants.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.metric;
+package org.commonjava.indy.client.core.metric;
public class ClientMetricConstants {
diff --git a/src/main/java/org/commonjava/indy/client/metric/ClientMetricManager.java b/core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientMetricManager.java
similarity index 98%
rename from src/main/java/org/commonjava/indy/client/metric/ClientMetricManager.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientMetricManager.java
index ce9d606..8e4f9f6 100644
--- a/src/main/java/org/commonjava/indy/client/metric/ClientMetricManager.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientMetricManager.java
@@ -13,11 +13,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.metric;
+package org.commonjava.indy.client.core.metric;
import org.apache.commons.lang3.StringUtils;
import org.apache.http.client.methods.HttpUriRequest;
-import org.commonjava.indy.client.inject.ClientMetricSet;
+import org.commonjava.indy.client.core.inject.ClientMetricSet;
import org.commonjava.o11yphant.honeycomb.HoneycombConfiguration;
import org.commonjava.o11yphant.honeycomb.HoneycombTracePlugin;
import org.commonjava.o11yphant.otel.OtelConfiguration;
diff --git a/src/main/java/org/commonjava/indy/client/metric/ClientMetrics.java b/core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientMetrics.java
similarity index 99%
rename from src/main/java/org/commonjava/indy/client/metric/ClientMetrics.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientMetrics.java
index f4c2ff3..49a85a4 100644
--- a/src/main/java/org/commonjava/indy/client/metric/ClientMetrics.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientMetrics.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.metric;
+package org.commonjava.indy.client.core.metric;
import org.apache.commons.lang3.StringUtils;
import org.apache.http.HttpResponse;
diff --git a/src/main/java/org/commonjava/indy/client/metric/ClientMetricsProducer.java b/core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientMetricsProducer.java
similarity index 97%
rename from src/main/java/org/commonjava/indy/client/metric/ClientMetricsProducer.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientMetricsProducer.java
index 5b305fa..38cc083 100644
--- a/src/main/java/org/commonjava/indy/client/metric/ClientMetricsProducer.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientMetricsProducer.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.metric;
+package org.commonjava.indy.client.core.metric;
import org.commonjava.cdi.util.weft.config.DefaultWeftConfig;
import org.commonjava.cdi.util.weft.config.WeftConfig;
diff --git a/src/main/java/org/commonjava/indy/client/metric/ClientTracerConfiguration.java b/core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientTracerConfiguration.java
similarity index 97%
rename from src/main/java/org/commonjava/indy/client/metric/ClientTracerConfiguration.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientTracerConfiguration.java
index 6ff87bc..8daf796 100644
--- a/src/main/java/org/commonjava/indy/client/metric/ClientTracerConfiguration.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientTracerConfiguration.java
@@ -13,10 +13,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.metric;
+package org.commonjava.indy.client.core.metric;
import org.apache.commons.lang3.StringUtils;
-import org.commonjava.indy.client.inject.ClientMetricConfig;
+import org.commonjava.indy.client.core.inject.ClientMetricConfig;
import org.commonjava.o11yphant.honeycomb.HoneycombConfiguration;
import org.commonjava.o11yphant.otel.OtelConfiguration;
import org.commonjava.o11yphant.trace.TracerConfiguration;
diff --git a/src/main/java/org/commonjava/indy/client/metric/ClientTrafficClassifier.java b/core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientTrafficClassifier.java
similarity index 96%
rename from src/main/java/org/commonjava/indy/client/metric/ClientTrafficClassifier.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientTrafficClassifier.java
index fb6c8fb..2c4e771 100644
--- a/src/main/java/org/commonjava/indy/client/metric/ClientTrafficClassifier.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/metric/ClientTrafficClassifier.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.metric;
+package org.commonjava.indy.client.core.metric;
import org.apache.http.Header;
import org.apache.http.client.methods.HttpUriRequest;
@@ -24,7 +24,7 @@
import static java.util.Arrays.asList;
import static java.util.Collections.singletonList;
import static org.apache.commons.lang3.StringUtils.join;
-import static org.commonjava.indy.client.metric.ClientMetricConstants.*;
+import static org.commonjava.indy.client.core.metric.ClientMetricConstants.*;
@Alternative
diff --git a/src/main/java/org/commonjava/indy/client/model/AbstractRepository.java b/core-java/src/main/java/org/commonjava/indy/client/core/model/AbstractRepository.java
similarity index 98%
rename from src/main/java/org/commonjava/indy/client/model/AbstractRepository.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/model/AbstractRepository.java
index 1e5209d..ac80ca7 100644
--- a/src/main/java/org/commonjava/indy/client/model/AbstractRepository.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/model/AbstractRepository.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model;
+package org.commonjava.indy.client.core.model;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.io.Externalizable;
diff --git a/src/main/java/org/commonjava/indy/client/model/AccessChannel.java b/core-java/src/main/java/org/commonjava/indy/client/core/model/AccessChannel.java
similarity index 96%
rename from src/main/java/org/commonjava/indy/client/model/AccessChannel.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/model/AccessChannel.java
index b07152a..c07ae05 100644
--- a/src/main/java/org/commonjava/indy/client/model/AccessChannel.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/model/AccessChannel.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model;
+package org.commonjava.indy.client.core.model;
/**
diff --git a/src/main/java/org/commonjava/indy/client/model/ArtifactStore.java b/core-java/src/main/java/org/commonjava/indy/client/core/model/ArtifactStore.java
similarity index 98%
rename from src/main/java/org/commonjava/indy/client/model/ArtifactStore.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/model/ArtifactStore.java
index e0c65de..9209ea3 100644
--- a/src/main/java/org/commonjava/indy/client/model/ArtifactStore.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/model/ArtifactStore.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model;
+package org.commonjava.indy.client.core.model;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
@@ -33,7 +33,7 @@
import java.util.Set;
import java.util.TimeZone;
-import static org.commonjava.indy.client.model.PathStyle.plain;
+import static org.commonjava.indy.client.core.model.PathStyle.plain;
@JsonTypeInfo( use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY, property = ArtifactStore.TYPE_ATTR )
@JsonSubTypes( { @Type( name = "remote", value = RemoteRepository.class ),
diff --git a/src/main/java/org/commonjava/indy/client/model/ArtifactStoreValidateData.java b/core-java/src/main/java/org/commonjava/indy/client/core/model/ArtifactStoreValidateData.java
similarity index 98%
rename from src/main/java/org/commonjava/indy/client/model/ArtifactStoreValidateData.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/model/ArtifactStoreValidateData.java
index 6806c1e..bdefcd4 100644
--- a/src/main/java/org/commonjava/indy/client/model/ArtifactStoreValidateData.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/model/ArtifactStoreValidateData.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model;
+package org.commonjava.indy.client.core.model;
import java.util.HashMap;
import java.util.Map;
diff --git a/src/main/java/org/commonjava/indy/client/model/BatchDeleteRequest.java b/core-java/src/main/java/org/commonjava/indy/client/core/model/BatchDeleteRequest.java
similarity index 98%
rename from src/main/java/org/commonjava/indy/client/model/BatchDeleteRequest.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/model/BatchDeleteRequest.java
index 05a8165..e9e93bd 100644
--- a/src/main/java/org/commonjava/indy/client/model/BatchDeleteRequest.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/model/BatchDeleteRequest.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model;
+package org.commonjava.indy.client.core.model;
import io.swagger.annotations.ApiModel;
import java.io.Externalizable;
diff --git a/src/main/java/org/commonjava/indy/client/model/Group.java b/core-java/src/main/java/org/commonjava/indy/client/core/model/Group.java
similarity index 97%
rename from src/main/java/org/commonjava/indy/client/model/Group.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/model/Group.java
index a81dc3d..d294028 100644
--- a/src/main/java/org/commonjava/indy/client/model/Group.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/model/Group.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model;
+package org.commonjava.indy.client.core.model;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
@@ -26,7 +26,7 @@
import java.util.Collections;
import java.util.List;
-import static org.commonjava.indy.client.model.StoreKey.MAVEN_PKG_KEY;
+import static org.commonjava.indy.client.core.model.StoreKey.MAVEN_PKG_KEY;
@ApiModel( description = "Grouping of other artifact stores, with a defined order to the membership that determines content preference", parent = ArtifactStore.class )
public class Group
diff --git a/src/main/java/org/commonjava/indy/client/model/HostedRepository.java b/core-java/src/main/java/org/commonjava/indy/client/core/model/HostedRepository.java
similarity index 95%
rename from src/main/java/org/commonjava/indy/client/model/HostedRepository.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/model/HostedRepository.java
index af8f8d2..40e9000 100644
--- a/src/main/java/org/commonjava/indy/client/model/HostedRepository.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/model/HostedRepository.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model;
+package org.commonjava.indy.client.core.model;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@@ -22,8 +22,8 @@
import java.io.ObjectInput;
import java.io.ObjectOutput;
-import static org.commonjava.indy.client.model.StoreKey.MAVEN_PKG_KEY;
-import static org.commonjava.indy.client.model.StoreType.hosted;
+import static org.commonjava.indy.client.core.model.StoreKey.MAVEN_PKG_KEY;
+import static org.commonjava.indy.client.core.model.StoreType.hosted;
@ApiModel( description = "Hosts artifact content on the local system", parent = ArtifactStore.class )
public class HostedRepository
diff --git a/src/main/java/org/commonjava/indy/client/model/PathStyle.java b/core-java/src/main/java/org/commonjava/indy/client/core/model/PathStyle.java
similarity index 94%
rename from src/main/java/org/commonjava/indy/client/model/PathStyle.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/model/PathStyle.java
index 7f40ddc..cba2d50 100644
--- a/src/main/java/org/commonjava/indy/client/model/PathStyle.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/model/PathStyle.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model;
+package org.commonjava.indy.client.core.model;
/**
* Created by jdcasey on 6/2/16.
diff --git a/src/main/java/org/commonjava/indy/client/model/RemoteRepository.java b/core-java/src/main/java/org/commonjava/indy/client/core/model/RemoteRepository.java
similarity index 98%
rename from src/main/java/org/commonjava/indy/client/model/RemoteRepository.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/model/RemoteRepository.java
index f222762..ea8ad7b 100644
--- a/src/main/java/org/commonjava/indy/client/model/RemoteRepository.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/model/RemoteRepository.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model;
+package org.commonjava.indy.client.core.model;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
@@ -28,8 +28,8 @@
import java.net.MalformedURLException;
import java.net.URL;
-import static org.commonjava.indy.client.model.StoreKey.MAVEN_PKG_KEY;
-import static org.commonjava.indy.client.model.StoreType.remote;
+import static org.commonjava.indy.client.core.model.StoreKey.MAVEN_PKG_KEY;
+import static org.commonjava.indy.client.core.model.StoreType.remote;
@ApiModel( description = "Proxy to a remote server's artifact content, with local cache storage.",
parent = ArtifactStore.class )
diff --git a/src/main/java/org/commonjava/indy/client/model/StoreKey.java b/core-java/src/main/java/org/commonjava/indy/client/core/model/StoreKey.java
similarity index 98%
rename from src/main/java/org/commonjava/indy/client/model/StoreKey.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/model/StoreKey.java
index 18e5b85..c4870d1 100644
--- a/src/main/java/org/commonjava/indy/client/model/StoreKey.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/model/StoreKey.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model;
+package org.commonjava.indy.client.core.model;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -25,7 +25,7 @@
import java.util.concurrent.ConcurrentHashMap;
import static org.apache.commons.lang3.StringUtils.isBlank;
-import static org.commonjava.indy.client.util.PackageTypeConstants.PKG_TYPE_MAVEN;
+import static org.commonjava.indy.client.core.PackageTypeConstants.PKG_TYPE_MAVEN;
public final class StoreKey
implements Comparable, Externalizable
diff --git a/src/main/java/org/commonjava/indy/client/model/StoreType.java b/core-java/src/main/java/org/commonjava/indy/client/core/model/StoreType.java
similarity index 98%
rename from src/main/java/org/commonjava/indy/client/model/StoreType.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/model/StoreType.java
index 376669c..58f754a 100644
--- a/src/main/java/org/commonjava/indy/client/model/StoreType.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/model/StoreType.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model;
+package org.commonjava.indy.client.core.model;
import java.util.HashSet;
import java.util.Set;
diff --git a/src/main/java/org/commonjava/indy/client/model/store/SimpleBooleanResultDTO.java b/core-java/src/main/java/org/commonjava/indy/client/core/model/store/SimpleBooleanResultDTO.java
similarity index 96%
rename from src/main/java/org/commonjava/indy/client/model/store/SimpleBooleanResultDTO.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/model/store/SimpleBooleanResultDTO.java
index a7d4462..139641d 100644
--- a/src/main/java/org/commonjava/indy/client/model/store/SimpleBooleanResultDTO.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/model/store/SimpleBooleanResultDTO.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model.store;
+package org.commonjava.indy.client.core.model.store;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
diff --git a/src/main/java/org/commonjava/indy/client/model/store/StoreListingDTO.java b/core-java/src/main/java/org/commonjava/indy/client/core/model/store/StoreListingDTO.java
similarity index 94%
rename from src/main/java/org/commonjava/indy/client/model/store/StoreListingDTO.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/model/store/StoreListingDTO.java
index 0e682e5..8ef5982 100644
--- a/src/main/java/org/commonjava/indy/client/model/store/StoreListingDTO.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/model/store/StoreListingDTO.java
@@ -13,11 +13,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.model.store;
+package org.commonjava.indy.client.core.model.store;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
-import org.commonjava.indy.client.model.ArtifactStore;
+import org.commonjava.indy.client.core.model.ArtifactStore;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
diff --git a/src/main/java/org/commonjava/indy/client/modules/IndyContentClientModule.java b/core-java/src/main/java/org/commonjava/indy/client/core/modules/IndyContentClientModule.java
similarity index 93%
rename from src/main/java/org/commonjava/indy/client/modules/IndyContentClientModule.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/modules/IndyContentClientModule.java
index 3940e18..1c8a19f 100644
--- a/src/main/java/org/commonjava/indy/client/modules/IndyContentClientModule.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/modules/IndyContentClientModule.java
@@ -13,14 +13,14 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.modules;
+package org.commonjava.indy.client.core.modules;
import org.apache.commons.io.IOUtils;
import org.commonjava.indy.client.core.IndyClientException;
import org.commonjava.indy.client.core.IndyClientModule;
-import org.commonjava.indy.client.helper.HttpResources;
-import org.commonjava.indy.client.helper.PathInfo;
-import org.commonjava.indy.client.model.StoreKey;
+import org.commonjava.indy.client.core.helper.HttpResources;
+import org.commonjava.indy.client.core.helper.PathInfo;
+import org.commonjava.indy.client.core.model.StoreKey;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
@@ -28,7 +28,7 @@
import java.util.Collections;
import java.util.Map;
-import static org.commonjava.indy.client.util.UrlUtils.buildUrl;
+import static org.commonjava.indy.client.core.util.UrlUtils.buildUrl;
public class IndyContentClientModule
extends IndyClientModule
diff --git a/src/main/java/org/commonjava/indy/client/modules/IndyRawHttpModule.java b/core-java/src/main/java/org/commonjava/indy/client/core/modules/IndyRawHttpModule.java
similarity index 97%
rename from src/main/java/org/commonjava/indy/client/modules/IndyRawHttpModule.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/modules/IndyRawHttpModule.java
index faf0971..669fb1f 100644
--- a/src/main/java/org/commonjava/indy/client/modules/IndyRawHttpModule.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/modules/IndyRawHttpModule.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.modules;
+package org.commonjava.indy.client.core.modules;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpUriRequest;
diff --git a/src/main/java/org/commonjava/indy/client/modules/IndySslValidationClientModule.java b/core-java/src/main/java/org/commonjava/indy/client/core/modules/IndySslValidationClientModule.java
similarity index 90%
rename from src/main/java/org/commonjava/indy/client/modules/IndySslValidationClientModule.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/modules/IndySslValidationClientModule.java
index 5f34184..ef251d7 100644
--- a/src/main/java/org/commonjava/indy/client/modules/IndySslValidationClientModule.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/modules/IndySslValidationClientModule.java
@@ -13,13 +13,13 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.modules;
+package org.commonjava.indy.client.core.modules;
import org.commonjava.indy.client.core.IndyClientException;
import org.commonjava.indy.client.core.IndyClientModule;
-import org.commonjava.indy.client.util.UrlUtils;
-import org.commonjava.indy.client.model.ArtifactStoreValidateData;
-import org.commonjava.indy.client.model.RemoteRepository;
+import org.commonjava.indy.client.core.util.UrlUtils;
+import org.commonjava.indy.client.core.model.ArtifactStoreValidateData;
+import org.commonjava.indy.client.core.model.RemoteRepository;
import org.slf4j.LoggerFactory;
import java.util.HashMap;
diff --git a/src/main/java/org/commonjava/indy/client/modules/IndyStoreQueryClientModule.java b/core-java/src/main/java/org/commonjava/indy/client/core/modules/IndyStoreQueryClientModule.java
similarity index 93%
rename from src/main/java/org/commonjava/indy/client/modules/IndyStoreQueryClientModule.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/modules/IndyStoreQueryClientModule.java
index d03d99a..95d8771 100644
--- a/src/main/java/org/commonjava/indy/client/modules/IndyStoreQueryClientModule.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/modules/IndyStoreQueryClientModule.java
@@ -13,22 +13,22 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.modules;
+package org.commonjava.indy.client.core.modules;
import com.fasterxml.jackson.core.type.TypeReference;
import org.apache.commons.lang3.StringUtils;
import org.commonjava.indy.client.core.IndyClientException;
import org.commonjava.indy.client.core.IndyClientModule;
-import org.commonjava.indy.client.util.UrlUtils;
-import org.commonjava.indy.client.model.ArtifactStore;
-import org.commonjava.indy.client.model.Group;
-import org.commonjava.indy.client.model.HostedRepository;
-import org.commonjava.indy.client.model.RemoteRepository;
-import org.commonjava.indy.client.model.StoreKey;
-import org.commonjava.indy.client.model.StoreType;
-import org.commonjava.indy.client.model.store.SimpleBooleanResultDTO;
-import org.commonjava.indy.client.model.store.StoreListingDTO;
-import org.commonjava.indy.client.util.PackageTypeConstants;
+import org.commonjava.indy.client.core.util.UrlUtils;
+import org.commonjava.indy.client.core.model.ArtifactStore;
+import org.commonjava.indy.client.core.model.Group;
+import org.commonjava.indy.client.core.model.HostedRepository;
+import org.commonjava.indy.client.core.model.RemoteRepository;
+import org.commonjava.indy.client.core.model.StoreKey;
+import org.commonjava.indy.client.core.model.StoreType;
+import org.commonjava.indy.client.core.model.store.SimpleBooleanResultDTO;
+import org.commonjava.indy.client.core.model.store.StoreListingDTO;
+import org.commonjava.indy.client.core.PackageTypeConstants;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.net.MalformedURLException;
diff --git a/src/main/java/org/commonjava/indy/client/modules/IndyStoresClientModule.java b/core-java/src/main/java/org/commonjava/indy/client/core/modules/IndyStoresClientModule.java
similarity index 92%
rename from src/main/java/org/commonjava/indy/client/modules/IndyStoresClientModule.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/modules/IndyStoresClientModule.java
index aa103c2..e040fb8 100644
--- a/src/main/java/org/commonjava/indy/client/modules/IndyStoresClientModule.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/modules/IndyStoresClientModule.java
@@ -13,19 +13,19 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.modules;
+package org.commonjava.indy.client.core.modules;
import com.fasterxml.jackson.core.type.TypeReference;
import org.commonjava.indy.client.core.IndyClientException;
import org.commonjava.indy.client.core.IndyClientModule;
-import org.commonjava.indy.client.util.UrlUtils;
-import org.commonjava.indy.client.model.ArtifactStore;
-import org.commonjava.indy.client.model.Group;
-import org.commonjava.indy.client.model.HostedRepository;
-import org.commonjava.indy.client.model.RemoteRepository;
-import org.commonjava.indy.client.model.StoreKey;
-import org.commonjava.indy.client.model.StoreType;
-import org.commonjava.indy.client.model.store.StoreListingDTO;
+import org.commonjava.indy.client.core.util.UrlUtils;
+import org.commonjava.indy.client.core.model.ArtifactStore;
+import org.commonjava.indy.client.core.model.Group;
+import org.commonjava.indy.client.core.model.HostedRepository;
+import org.commonjava.indy.client.core.model.RemoteRepository;
+import org.commonjava.indy.client.core.model.StoreKey;
+import org.commonjava.indy.client.core.model.StoreType;
+import org.commonjava.indy.client.core.model.store.StoreListingDTO;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/src/main/java/org/commonjava/indy/client/util/UrlUtils.java b/core-java/src/main/java/org/commonjava/indy/client/core/util/UrlUtils.java
similarity index 99%
rename from src/main/java/org/commonjava/indy/client/util/UrlUtils.java
rename to core-java/src/main/java/org/commonjava/indy/client/core/util/UrlUtils.java
index cff58d6..2a62e67 100644
--- a/src/main/java/org/commonjava/indy/client/util/UrlUtils.java
+++ b/core-java/src/main/java/org/commonjava/indy/client/core/util/UrlUtils.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.commonjava.indy.client.util;
+package org.commonjava.indy.client.core.util;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/pom.xml b/pom.xml
index d7fb382..e395d2f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -28,15 +28,21 @@
org.commonjava.indy
- indy-client-modules
- 1.0.0-SNAPSHOT
+ indy-clients-parent
+ pom
+ 3.2.0-SNAPSHOT
- Indy :: Client :: Modules
+ Indy :: Client APIs :: Parent
+
+
+ core-java
+ client-addons
+
- scm:git:https://github.com/commonjava/indy-client-modules
- scm:git:https://github.com/commonjava/indy-client-modules
- http://github.com/Commonjava/indy-client-modules
+ scm:git:https://github.com/commonjava/indy-client
+ scm:git:https://github.com/commonjava/indy-client
+ http://github.com/Commonjava/indy-client
HEAD
@@ -51,6 +57,11 @@
+
+ org.commonjava.indy
+ indy-client-core-java
+ 3.2.0-SNAPSHOT
+
org.commonjava.util
jhttpc
@@ -104,53 +115,4 @@
-
-
-
- org.commonjava.util
- jhttpc
-
-
- org.commonjava.util
- o11yphant-trace-api
-
-
- org.commonjava.util
- o11yphant-trace-honeycomb
-
-
- io.undertow
- undertow-servlet
-
-
-
-
- org.commonjava.util
- o11yphant-trace-otel
-
-
- org.commonjava.util
- o11yphant-trace-helper-jhttpc
-
-
- org.commonjava.util
- o11yphant-metrics-common
-
-
- org.apache.httpcomponents
- httpclient
-
-
- org.slf4j
- jcl-over-slf4j
-
-
- commons-io
- commons-io
-
-
- io.swagger
- swagger-annotations
-
-
\ No newline at end of file