Repository: objectionary/eo
Issue: Home object design. Visibility modifiers.

The `org.eolang.maven.Home` object itself and most of his methods are declared as public, but we can restrict visibility to `package-private`.

Changed files:
eo-maven-plugin/src/main/java/org/eolang/maven/Objectionary.java, eo-maven-plugin/src/main/java/org/eolang/maven/FtCached.java, eo-maven-plugin/src/main/java/org/eolang/maven/FtDefault.java, eo-maven-plugin/src/main/java/org/eolang/maven/OyCaching.java, eo-maven-plugin/src/main/java/org/eolang/maven/OyEmpty.java, eo-maven-plugin/src/main/java/org/eolang/maven/OyFallbackSwap.java, eo-maven-plugin/src/main/java/org/eolang/maven/OyHome.java, eo-maven-plugin/src/main/java/org/eolang/maven/JavaFiles.java, eo-maven-plugin/src/main/java/org/eolang/maven/Home.java, eo-maven-plugin/src/main/java/org/eolang/maven/Footprint.java, eo-maven-plugin/src/main/java/org/eolang/maven/OyFallback.java, eo-maven-plugin/src/main/java/org/eolang/maven/OyRemote.java

diff --git a/eo-maven-plugin/src/main/java/org/eolang/maven/Footprint.java b/eo-maven-plugin/src/main/java/org/eolang/maven/Footprint.java
index f32fe344e..3603b4536 100644
--- a/eo-maven-plugin/src/main/java/org/eolang/maven/Footprint.java
+++ b/eo-maven-plugin/src/main/java/org/eolang/maven/Footprint.java
@@ -30,7 +30,7 @@ import org.cactoos.Scalar;
  * Program footprint of EO compilation process.
  * @since 1.0
  */
-public interface Footprint {
+interface Footprint {
 
     /**
      * Get program content of a specific type.
diff --git a/eo-maven-plugin/src/main/java/org/eolang/maven/FtCached.java b/eo-maven-plugin/src/main/java/org/eolang/maven/FtCached.java
index 9e990f00d..eeada3d80 100644
--- a/eo-maven-plugin/src/main/java/org/eolang/maven/FtCached.java
+++ b/eo-maven-plugin/src/main/java/org/eolang/maven/FtCached.java
@@ -50,7 +50,7 @@ import org.cactoos.text.TextOf;
  * </code>
  * @since 1.0
  */
-public final class FtCached implements Footprint {
+final class FtCached implements Footprint {
     /**
      * Path to target root.
      */
@@ -72,7 +72,7 @@ public final class FtCached implements Footprint {
      * @param main Main root
      * @param cache Cache root
      */
-    public FtCached(final String hash, final Path main, final Path cache) {
+    FtCached(final String hash, final Path main, final Path cache) {
         this.hash = hash;
         this.main = main;
         this.cache = cache;
diff --git a/eo-maven-plugin/src/main/java/org/eolang/maven/FtDefault.java b/eo-maven-plugin/src/main/java/org/eolang/maven/FtDefault.java
index 25bc299f1..c334c00f2 100644
--- a/eo-maven-plugin/src/main/java/org/eolang/maven/FtDefault.java
+++ b/eo-maven-plugin/src/main/java/org/eolang/maven/FtDefault.java
@@ -34,7 +34,7 @@ import org.cactoos.text.TextOf;
  * Default implementation of a Footprint.
  * @since 1.0
  */
-public final class FtDefault implements Footprint {
+final class FtDefault implements Footprint {
 
     /**
      * Path to main location.
@@ -45,7 +45,7 @@ public final class FtDefault implements Footprint {
      * Ctor.
      * @param main Main location.
      */
-    public FtDefault(final Path main) {
+    FtDefault(final Path main) {
         this.main = main;
     }
 
diff --git a/eo-maven-plugin/src/main/java/org/eolang/maven/Home.java b/eo-maven-plugin/src/main/java/org/eolang/maven/Home.java
index 28c835d84..883232497 100644
--- a/eo-maven-plugin/src/main/java/org/eolang/maven/Home.java
+++ b/eo-maven-plugin/src/main/java/org/eolang/maven/Home.java
@@ -48,7 +48,7 @@ import org.cactoos.scalar.LengthOf;
  *  We also need to add new unit test
  */
 @SuppressWarnings("PMD.TooManyMethods")
-public class Home {
+final class Home {
     /**
      * Current working directory.
      */
diff --git a/eo-maven-plugin/src/main/java/org/eolang/maven/JavaFiles.java b/eo-maven-plugin/src/main/java/org/eolang/maven/JavaFiles.java
index 64a4c484e..7656c4dfc 100644
--- a/eo-maven-plugin/src/main/java/org/eolang/maven/JavaFiles.java
+++ b/eo-maven-plugin/src/main/java/org/eolang/maven/JavaFiles.java
@@ -38,7 +38,7 @@ import org.cactoos.text.Joined;
  * Java files from XMIR.
  * @since 1.0
  */
-public final class JavaFiles {
+final class JavaFiles {
 
     /**
      * Path to XMIR file.
@@ -56,7 +56,7 @@ public final class JavaFiles {
      * @param src XML with java code
      * @param target Base destination path
      */
-    public JavaFiles(final Path src, final Path target) {
+    JavaFiles(final Path src, final Path target) {
         this.source = src;
         this.dest = target;
     }
diff --git a/eo-maven-plugin/src/main/java/org/eolang/maven/Objectionary.java b/eo-maven-plugin/src/main/java/org/eolang/maven/Objectionary.java
index 9f94b8839..869a679e4 100644
--- a/eo-maven-plugin/src/main/java/org/eolang/maven/Objectionary.java
+++ b/eo-maven-plugin/src/main/java/org/eolang/maven/Objectionary.java
@@ -31,7 +31,7 @@ import org.cactoos.Input;
  *
  * @since 1.0
  */
-public interface Objectionary {
+interface Objectionary {
     /**
      * Resolve object.
      * @param name Object name.
diff --git a/eo-maven-plugin/src/main/java/org/eolang/maven/OyCaching.java b/eo-maven-plugin/src/main/java/org/eolang/maven/OyCaching.java
index 89fe260af..050b54479 100644
--- a/eo-maven-plugin/src/main/java/org/eolang/maven/OyCaching.java
+++ b/eo-maven-plugin/src/main/java/org/eolang/maven/OyCaching.java
@@ -33,7 +33,7 @@ import org.cactoos.io.TeeInput;
  *
  * @since 1.0
  */
-public final class OyCaching implements Objectionary {
+final class OyCaching implements Objectionary {
 
     /**
      * Cache location.
@@ -56,7 +56,7 @@ public final class OyCaching implements Objectionary {
      * @param cache Cache directory.
      * @param primary Primary objectionary.
      */
-    public OyCaching(
+    OyCaching(
         final String ver,
         final Path cache,
         final Objectionary primary
diff --git a/eo-maven-plugin/src/main/java/org/eolang/maven/OyEmpty.java b/eo-maven-plugin/src/main/java/org/eolang/maven/OyEmpty.java
index f7bbbe6bc..2bf6d361f 100644
--- a/eo-maven-plugin/src/main/java/org/eolang/maven/OyEmpty.java
+++ b/eo-maven-plugin/src/main/java/org/eolang/maven/OyEmpty.java
@@ -31,7 +31,7 @@ import org.cactoos.Input;
  *
  * @since 0.1
  */
-public final class OyEmpty implements Objectionary {
+final class OyEmpty implements Objectionary {
 
     @Override
     public String toString() {
diff --git a/eo-maven-plugin/src/main/java/org/eolang/maven/OyFallback.java b/eo-maven-plugin/src/main/java/org/eolang/maven/OyFallback.java
index 1742f4c14..1977ad9a6 100644
--- a/eo-maven-plugin/src/main/java/org/eolang/maven/OyFallback.java
+++ b/eo-maven-plugin/src/main/java/org/eolang/maven/OyFallback.java
@@ -34,7 +34,7 @@ import org.cactoos.func.IoCheckedFunc;
  *
  * @since 1.0
  */
-public final class OyFallback implements Objectionary {
+final class OyFallback implements Objectionary {
 
     /**
      * Primary Objectionary.
@@ -51,7 +51,7 @@ public final class OyFallback implements Objectionary {
      * @param primary Primary source.
      * @param secondary Secondary source.
      */
-    public OyFallback(final Objectionary primary, final Objectionary secondary) {
+    OyFallback(final Objectionary primary, final Objectionary secondary) {
         this.first = primary;
         this.second = secondary;
     }
diff --git a/eo-maven-plugin/src/main/java/org/eolang/maven/OyFallbackSwap.java b/eo-maven-plugin/src/main/java/org/eolang/maven/OyFallbackSwap.java
index 5bfedf86c..1e2325a46 100644
--- a/eo-maven-plugin/src/main/java/org/eolang/maven/OyFallbackSwap.java
+++ b/eo-maven-plugin/src/main/java/org/eolang/maven/OyFallbackSwap.java
@@ -46,7 +46,7 @@ import org.cactoos.scalar.Unchecked;
  * </pre>
  * @since 1.0
  */
-public final class OyFallbackSwap implements Objectionary {
+final class OyFallbackSwap implements Objectionary {
     /**
      * Swapped Oy.
      */
@@ -58,7 +58,7 @@ public final class OyFallbackSwap implements Objectionary {
      * @param second Initial secondary
      * @param swap Whether to swap
      */
-    public OyFallbackSwap(
+    OyFallbackSwap(
         final Objectionary first,
         final Objectionary second,
         final boolean swap
diff --git a/eo-maven-plugin/src/main/java/org/eolang/maven/OyHome.java b/eo-maven-plugin/src/main/java/org/eolang/maven/OyHome.java
index ef6781a0c..fe03de396 100644
--- a/eo-maven-plugin/src/main/java/org/eolang/maven/OyHome.java
+++ b/eo-maven-plugin/src/main/java/org/eolang/maven/OyHome.java
@@ -33,7 +33,7 @@ import org.cactoos.io.InputOf;
  *
  * @since 1.0
  */
-public final class OyHome implements Objectionary {
+final class OyHome implements Objectionary {
     /**
      * Local storage.
      */
@@ -49,7 +49,7 @@ public final class OyHome implements Objectionary {
      * @param ver Version.
      * @param path Root.
      */
-    public OyHome(final String ver, final Path path) {
+    OyHome(final String ver, final Path path) {
         this.version = ver;
         this.home = path;
     }
diff --git a/eo-maven-plugin/src/main/java/org/eolang/maven/OyRemote.java b/eo-maven-plugin/src/main/java/org/eolang/maven/OyRemote.java
index 62a90109e..c2d5ed9df 100644
--- a/eo-maven-plugin/src/main/java/org/eolang/maven/OyRemote.java
+++ b/eo-maven-plugin/src/main/java/org/eolang/maven/OyRemote.java
@@ -35,7 +35,7 @@ import org.cactoos.io.InputOf;
  *
  * @since 0.1
  */
-public final class OyRemote implements Objectionary {
+final class OyRemote implements Objectionary {
 
     /**
      * The address template.
@@ -47,7 +47,7 @@ public final class OyRemote implements Objectionary {
      * @param tag Tag
      * @throws IOException if fails.
      */
-    public OyRemote(final String tag) throws IOException {
+    OyRemote(final String tag) throws IOException {
         this.template = String.format(
             "https://raw.githubusercontent.com/objectionary/home/%s/objects/%%s.eo",
             tag