From f54f55546b61043b427c6237cc5ff027ccd60450 Mon Sep 17 00:00:00 2001 From: Olyutorskii Date: Fri, 3 May 2019 19:13:54 +0900 Subject: [PATCH 01/12] start 1.101.105-SNAPSHOT --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 753b4f1..5946d16 100644 --- a/pom.xml +++ b/pom.xml @@ -16,7 +16,7 @@ jp.sourceforge.jovsonz jovsonz - 1.101.104 + 1.101.105-SNAPSHOT jar Jovsonz -- 2.11.0 From 7580167de409baf57df2476a033127e7c3b61fd7 Mon Sep 17 00:00:00 2001 From: Olyutorskii Date: Sat, 18 Sep 2021 11:29:53 +0900 Subject: [PATCH 02/12] update maven plugins. --- pom.xml | 361 +++++++++++++++++++++++++++++++++++++++++----------------------- 1 file changed, 231 insertions(+), 130 deletions(-) diff --git a/pom.xml b/pom.xml index 5946d16..42277df 100644 --- a/pom.xml +++ b/pom.xml @@ -78,6 +78,7 @@ 1.8 1.8 + true true @@ -86,29 +87,15 @@ UTF-8 UTF-8 - ${project.basedir}/src/main/config + + en + en + -Duser.language=en - en - ${locale} - ${locale} - -Duser.language=${locale} - - - false - - 3.0.0-M3 - 0.8.3 - - 3.0.0 - 8.18 - ${project.basedir}/config/checkstyle/checkstyle.xml - ${project.basedir}/config/checkstyle/checkstyle-suppressions.xml + config/checkstyle/checkstyle.xml + config/checkstyle/checkstyle-suppressions.xml false - 3.12.0 - true - - 3.1.11 Max Low @@ -123,7 +110,7 @@ junit junit - 4.12 + 4.13.2 test @@ -140,13 +127,140 @@ org.apache.maven.plugins + maven-clean-plugin + 3.1.0 + + + + org.apache.maven.plugins + maven-enforcer-plugin + 3.0.0 + + + + org.apache.maven.plugins + maven-resources-plugin + 3.2.0 + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.1 + + + + org.apache.maven.plugins + maven-surefire-plugin + 3.0.0-M5 + + + + org.apache.maven.plugins + maven-surefire-report-plugin + 3.0.0-M5 + + + + org.jacoco + jacoco-maven-plugin + 0.8.7 + + + + org.apache.maven.plugins + maven-jar-plugin + 3.2.0 + + + + org.apache.maven.plugins + maven-source-plugin + 3.2.1 + + + + org.apache.maven.plugins + maven-install-plugin + 3.0.0-M1 + + + + org.apache.maven.plugins + maven-deploy-plugin + 3.0.0-M1 + + + + org.apache.maven.plugins + maven-site-plugin + 3.9.1 + + + + org.apache.maven.plugins + maven-assembly-plugin + 3.3.0 + + + + org.apache.maven.plugins + maven-project-info-reports-plugin + 3.1.2 + + + + org.apache.maven.plugins + maven-javadoc-plugin + 3.2.0 + + + + org.apache.maven.plugins + maven-jxr-plugin + 3.1.1 + + + + org.apache.maven.plugins maven-checkstyle-plugin - ${checkstyle-plugin.version} + 3.1.2 com.puppycrawl.tools checkstyle - ${checkstyleruntime.version} + 8.18 + + + + + + org.apache.maven.plugins + maven-pmd-plugin + 3.15.0 + + + net.sourceforge.pmd + pmd-core + 6.38.0 + + + net.sourceforge.pmd + pmd-java + 6.38.0 + + + + + + com.github.spotbugs + spotbugs-maven-plugin + 4.3.0 + + + com.github.spotbugs + spotbugs + 4.4.1 @@ -163,7 +277,6 @@ org.apache.maven.plugins maven-clean-plugin - 3.1.0 @@ -190,7 +303,6 @@ org.apache.maven.plugins maven-enforcer-plugin - 3.0.0-M2 enforce-versions @@ -213,14 +325,7 @@ org.apache.maven.plugins - maven-resources-plugin - 3.1.0 - - - - org.apache.maven.plugins maven-compiler-plugin - 3.8.0 1.8 1.8 @@ -235,7 +340,6 @@ org.apache.maven.plugins maven-surefire-plugin - ${surefire-plugin.version} true @@ -244,7 +348,6 @@ org.jacoco jacoco-maven-plugin - ${jacoco-plugin.version} default-prepare-agent @@ -252,40 +355,12 @@ prepare-agent - - default-report - prepare-package - - report - - - - default-check - - check - - - - - BUNDLE - - - COMPLEXITY - COVEREDRATIO - 0.0 - - - - - - org.apache.maven.plugins maven-jar-plugin - 3.1.1 @@ -300,48 +375,12 @@ - - org.apache.maven.plugins - maven-source-plugin - 3.0.1 - - true - - - ${project.organization.name} - - - - - - attach-sources - verify - - jar-no-fork - - - - - - - org.apache.maven.plugins - maven-install-plugin - 3.0.0-M1 - - - - org.apache.maven.plugins - maven-deploy-plugin - 3.0.0-M1 - - org.apache.maven.plugins maven-site-plugin - 3.7.1 ${site.locales} @@ -352,38 +391,43 @@ org.apache.maven.plugins - maven-assembly-plugin - 3.1.1 + maven-javadoc-plugin - - src/assembly/src.xml - + ${javadoc.locale} + + -J-Duser.language=${javadoc.locale} + ${maven.compiler.source} + true +
${project.name} ${project.version} API
+ true + false + true + all + protected
org.apache.maven.plugins - maven-checkstyle-plugin - ${checkstyle-plugin.version} + maven-assembly-plugin + + posix + + src/assembly/src.xml + + org.apache.maven.plugins maven-pmd-plugin - ${pmd-plugin.version} - ${project.basedir}/config/pmd/pmdrules.xml + config/pmd/pmdrules.xml - - com.github.spotbugs - spotbugs-maven-plugin - ${spotbugs-plugin.version} - - @@ -440,7 +484,6 @@ org.apache.maven.plugins maven-project-info-reports-plugin - 3.0.0 true true @@ -455,7 +498,6 @@ dependencies dependency-convergence plugins - plugin-management team issue-management scm @@ -465,6 +507,7 @@ ci-management mailing-lists modules + plugin-management --> @@ -474,17 +517,18 @@ org.apache.maven.plugins maven-javadoc-plugin - 3.1.0 - false - true - true - protected -
${project.name} ${project.version} API
- true ${javadoc.locale} -J-Duser.language=${javadoc.locale} + ${maven.compiler.source} + true +
${project.name} ${project.version} API
+ true + false + true + all + protected
@@ -498,19 +542,16 @@ org.apache.maven.plugins maven-jxr-plugin - 3.0.0 org.apache.maven.plugins maven-surefire-report-plugin - ${surefire-plugin.version} org.jacoco jacoco-maven-plugin - ${jacoco-plugin.version} @@ -523,7 +564,6 @@ org.apache.maven.plugins maven-checkstyle-plugin - ${checkstyle-plugin.version} @@ -536,10 +576,9 @@ org.apache.maven.plugins maven-pmd-plugin - ${pmd-plugin.version} - ${project.basedir}/config/pmd/pmdrules.xml + config/pmd/pmdrules.xml @@ -555,14 +594,76 @@ com.github.spotbugs spotbugs-maven-plugin - ${spotbugs-plugin.version} - + + + + release-profile + + + + performRelease + true + + + + + + + + true + org.apache.maven.plugins + maven-source-plugin + + true + + + ${project.organization.name} + + + + + + attach-sources + + jar-no-fork + + + + + + + true + org.apache.maven.plugins + maven-javadoc-plugin + + protected + + + ${project.organization.name} + + + + + + attach-javadocs + + jar + + + + + + + + + + -- 2.11.0 From 601e038d9a4abb1e667fc33ddf06b4608329a688 Mon Sep 17 00:00:00 2001 From: Olyutorskii Date: Sat, 18 Sep 2021 11:42:03 +0900 Subject: [PATCH 03/12] bump checkstyle to 9.0 --- config/checkstyle/checkstyle-suppressions.xml | 14 +- config/checkstyle/checkstyle.xml | 185 +++++++++----------------- pom.xml | 2 +- 3 files changed, 70 insertions(+), 131 deletions(-) diff --git a/config/checkstyle/checkstyle-suppressions.xml b/config/checkstyle/checkstyle-suppressions.xml index eb5b801..f7071b1 100644 --- a/config/checkstyle/checkstyle-suppressions.xml +++ b/config/checkstyle/checkstyle-suppressions.xml @@ -6,11 +6,11 @@ @@ -23,26 +23,28 @@ + - + + - - - + + + diff --git a/config/checkstyle/checkstyle.xml b/config/checkstyle/checkstyle.xml index d154a5d..29a68e1 100644 --- a/config/checkstyle/checkstyle.xml +++ b/config/checkstyle/checkstyle.xml @@ -6,11 +6,11 @@ @@ -20,18 +20,21 @@ - + + + + @@ -44,18 +47,22 @@ + + - + + + @@ -70,12 +77,16 @@ - - + + + + + + @@ -133,16 +144,16 @@ - - - + + + @@ -164,14 +175,11 @@ - - - - - + + @@ -180,7 +188,9 @@ + + @@ -188,19 +198,20 @@ + - - - + - - - + + + + + @@ -218,7 +229,12 @@ + + + + + + + + @@ -263,6 +282,7 @@ + @@ -283,35 +303,24 @@ - - - + + - - - - - - - - - + + + - - - - - - + + + + + @@ -337,13 +346,12 @@ - - - + + @@ -351,94 +359,23 @@ - + - - - + - - - - - - - - + - - - - - - - - - - - - - - - - - + + + + - - - - - - + + diff --git a/pom.xml b/pom.xml index 42277df..a9ae9a0 100644 --- a/pom.xml +++ b/pom.xml @@ -229,7 +229,7 @@ com.puppycrawl.tools checkstyle - 8.18 + 9.0 -- 2.11.0 From d7b739dd7c63659e86ca4ed0942d9c26f1d8b5ac Mon Sep 17 00:00:00 2001 From: Olyutorskii Date: Sat, 18 Sep 2021 20:32:54 +0900 Subject: [PATCH 04/12] add tar.gz format to assembly. --- src/assembly/src.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/assembly/src.xml b/src/assembly/src.xml index b4f4424..c543c11 100644 --- a/src/assembly/src.xml +++ b/src/assembly/src.xml @@ -8,13 +8,13 @@ > src + tar.gz zip -- 2.11.0 From 6d36bfa40a68fd70cb41b47bea0115b4d41bd5c0 Mon Sep 17 00:00:00 2001 From: Olyutorskii Date: Sat, 18 Sep 2021 20:37:29 +0900 Subject: [PATCH 05/12] update PMD rules. --- config/pmd/pmdrules.xml | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/config/pmd/pmdrules.xml b/config/pmd/pmdrules.xml index e8d6346..a82c723 100644 --- a/config/pmd/pmdrules.xml +++ b/config/pmd/pmdrules.xml @@ -2,16 +2,16 @@ @@ -23,12 +23,12 @@ - + @@ -39,11 +39,9 @@ - - @@ -55,13 +53,13 @@ + - -- 2.11.0 From e9bc440e0fb9b31e3e8883e8e1067e951a5b0443 Mon Sep 17 00:00:00 2001 From: Olyutorskii Date: Sat, 8 Oct 2022 00:52:02 +0900 Subject: [PATCH 06/12] bump maven plugins --- .gitignore | 14 ++++++++++++-- pom.xml | 37 ++++++++++++++++++++----------------- 2 files changed, 32 insertions(+), 19 deletions(-) diff --git a/.gitignore b/.gitignore index 3bf3b09..c659fa3 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,8 @@ -##### Git ignore pattern https://git-scm.com/docs/gitignore +##### Git ignore pattern +## See https://git-scm.com/docs/gitignore +## See https://docs.github.com/en/free-pro-team@latest/github/using-git/ignoring-files +## See https://github.com/github/gitignore +## See https://www.toptal.com/developers/gitignore ### Unix @@ -20,7 +24,8 @@ __MACOSX ### Windows Thumbs.db -desktop.ini +[Dd]esktop.ini +*.lnk ### JDK @@ -64,4 +69,9 @@ hs_err_pid* *.ipr +### Visual Studio Code + +/.vscode/ + + ### EOF ### diff --git a/pom.xml b/pom.xml index a9ae9a0..3b59396 100644 --- a/pom.xml +++ b/pom.xml @@ -87,6 +87,9 @@ UTF-8 UTF-8 + + ${basedir}/src/main/java + en en @@ -128,49 +131,49 @@ org.apache.maven.plugins maven-clean-plugin - 3.1.0 + 3.2.0 org.apache.maven.plugins maven-enforcer-plugin - 3.0.0 + 3.1.0 org.apache.maven.plugins maven-resources-plugin - 3.2.0 + 3.3.0 org.apache.maven.plugins maven-compiler-plugin - 3.8.1 + 3.10.1 org.apache.maven.plugins maven-surefire-plugin - 3.0.0-M5 + 3.0.0-M7 org.apache.maven.plugins maven-surefire-report-plugin - 3.0.0-M5 + 3.0.0-M7 org.jacoco jacoco-maven-plugin - 0.8.7 + 0.8.8 org.apache.maven.plugins maven-jar-plugin - 3.2.0 + 3.3.0 @@ -182,43 +185,43 @@ org.apache.maven.plugins maven-install-plugin - 3.0.0-M1 + 3.0.1 org.apache.maven.plugins maven-deploy-plugin - 3.0.0-M1 + 3.0.0 org.apache.maven.plugins maven-site-plugin - 3.9.1 + 3.12.1 org.apache.maven.plugins maven-assembly-plugin - 3.3.0 + 3.4.2 org.apache.maven.plugins maven-project-info-reports-plugin - 3.1.2 + 3.4.1 org.apache.maven.plugins maven-javadoc-plugin - 3.2.0 + 3.4.1 org.apache.maven.plugins maven-jxr-plugin - 3.1.1 + 3.3.0 @@ -255,12 +258,12 @@ com.github.spotbugs spotbugs-maven-plugin - 4.3.0 + 4.7.2.0 com.github.spotbugs spotbugs - 4.4.1 + 4.7.2 -- 2.11.0 From 097e65bbfa0e6940687b4fcd015dc8e161673b37 Mon Sep 17 00:00:00 2001 From: Olyutorskii Date: Sat, 8 Oct 2022 01:48:31 +0900 Subject: [PATCH 07/12] modify javadoc for

tags --- src/main/java/jp/sourceforge/jovsonz/JsArray.java | 57 +++++++--- .../java/jp/sourceforge/jovsonz/JsBoolean.java | 42 ++++++-- .../java/jp/sourceforge/jovsonz/JsComposition.java | 21 +++- src/main/java/jp/sourceforge/jovsonz/JsNull.java | 38 +++++-- src/main/java/jp/sourceforge/jovsonz/JsNumber.java | 119 +++++++++++++++------ src/main/java/jp/sourceforge/jovsonz/JsObject.java | 60 ++++++++--- src/main/java/jp/sourceforge/jovsonz/JsPair.java | 42 ++++++-- .../jp/sourceforge/jovsonz/JsParseException.java | 11 +- src/main/java/jp/sourceforge/jovsonz/JsString.java | 77 +++++++++---- src/main/java/jp/sourceforge/jovsonz/JsTypes.java | 7 +- src/main/java/jp/sourceforge/jovsonz/JsValue.java | 4 +- .../jp/sourceforge/jovsonz/JsVisitException.java | 11 +- src/main/java/jp/sourceforge/jovsonz/Json.java | 10 +- .../java/jp/sourceforge/jovsonz/JsonAppender.java | 62 ++++++++--- .../java/jp/sourceforge/jovsonz/JsonSource.java | 44 ++++++-- .../java/jp/sourceforge/jovsonz/UnmodIterator.java | 17 ++- .../java/jp/sourceforge/jovsonz/ValueVisitor.java | 15 ++- .../java/jp/sourceforge/jovsonz/package-info.java | 3 +- 18 files changed, 481 insertions(+), 159 deletions(-) diff --git a/src/main/java/jp/sourceforge/jovsonz/JsArray.java b/src/main/java/jp/sourceforge/jovsonz/JsArray.java index 84802f5..b099753 100644 --- a/src/main/java/jp/sourceforge/jovsonz/JsArray.java +++ b/src/main/java/jp/sourceforge/jovsonz/JsArray.java @@ -14,8 +14,11 @@ import java.util.List; /** * JSON ARRAY型Valueを表す。 - * 子要素の配列リストを反映する。 - *

表記例

+ * + *

子要素の配列リストを反映する。 + * + *

表記例 + * *

  * [
  *     true ,
@@ -45,9 +48,11 @@ public class JsArray
 
     /**
      * JSON文字列ソースからARRAY型Valueを読み込む。
-     * さらに子Valueへとパース解析が進む可能性がある。
+     *
+     * 

さらに子Valueへとパース解析が進む可能性がある。 * 別型の可能性のある先頭文字を読み込んだ場合、 * ソースに文字を読み戻した後nullが返される。 + * * @param source 文字列ソース * @return ARRAY型Value。別型の可能性がある場合はnull。 * @throws IOException 入力エラー @@ -91,7 +96,9 @@ public class JsArray /** * {@inheritDoc} - * 常に{@link JsTypes#ARRAY}を返す。 + * + *

常に{@link JsTypes#ARRAY}を返す。 + * * @return {@inheritDoc} */ @Override @@ -101,9 +108,11 @@ public class JsArray /** * このValueおよび子孫に変更があったか判定する。 - * 子要素の追加・削除が行われたか、 + * + *

子要素の追加・削除が行われたか、 * もしくは子要素のいずれかに変更が認められれば、 * このARRAY型Valueに変更があったとみなされる。 + * * @return {@inheritDoc} */ @Override @@ -137,7 +146,9 @@ public class JsArray /** * 深さ優先探索を行い各種構造の出現をビジターに通知する。 - * thisを通知した後、子Valueを順に訪問し、最後に閉じ括弧を通知する。 + * + *

thisを通知した後、子Valueを順に訪問し、最後に閉じ括弧を通知する。 + * * @param visitor {@inheritDoc} * @throws JsVisitException {@inheritDoc} */ @@ -156,6 +167,7 @@ public class JsArray /** * 配列要素数を返す。 + * * @return {@inheritDoc} */ @Override @@ -165,6 +177,7 @@ public class JsArray /** * 配列が空か判定する。 + * * @return {@inheritDoc} */ @Override @@ -184,7 +197,9 @@ public class JsArray /** * ハッシュ値を返す。 - * 全ての子孫Valueのハッシュ値からその都度合成される。高コスト注意!。 + * + *

全ての子孫Valueのハッシュ値からその都度合成される。高コスト注意!。 + * * @return {@inheritDoc} * @see java.util.List#hashCode() */ @@ -195,9 +210,11 @@ public class JsArray /** * 等価判定を行う。 - * 双方の配列サイズが一致し + * + *

双方の配列サイズが一致し * その全ての子Valueでのequals()が等価と判断された場合のみ * 等価と判断される。 + * * @param obj {@inheritDoc} * @return {@inheritDoc} * @see java.util.List#equals(Object) @@ -214,7 +231,9 @@ public class JsArray /** * 配列にValueを追加する。 - * 同じJsValueインスタンスを複数回追加することも可能。 + * + *

同じJsValueインスタンスを複数回追加することも可能。 + * * @param value JSON Value * @throws NullPointerException 引数がnull */ @@ -227,6 +246,7 @@ public class JsArray /** * 配列から指定された位置のValueを返す。 + * * @param index 0で始まる配列上の位置 * @return Value JSON Value * @throws IndexOutOfBoundsException 不正な位置指定 @@ -237,12 +257,15 @@ public class JsArray /** * 配列からValueを削除する。 - * {@link java.util.List#remove(Object)}と異なり、 + * + *

{@link java.util.List#remove(Object)}と異なり、 * 削除対象の検索に際して * {@link java.lang.Object#equals(Object)}は使われない。 - * 一致するインスタンスが複数存在する場合、 + * + *

一致するインスタンスが複数存在する場合、 * 先頭に近いインスタンスのみ削除される。 * 一致するインスタンスが存在しなければなにもしない。 + * * @param value JSON Value * @return 既存のValueが削除されたならtrue */ @@ -266,6 +289,7 @@ public class JsArray /** * 配列から指定位置のValueを削除する。 + * * @param index 0で始まる削除対象のインデックス値 * @return 削除されたValue * @throws IndexOutOfBoundsException 不正なインデックス値 @@ -278,7 +302,9 @@ public class JsArray /** * Valueにアクセスするための反復子を提供する。 - * この反復子での削除作業はできない。 + * + *

この反復子での削除作業はできない。 + * * @return 反復子イテレータ * @see UnmodIterator */ @@ -289,8 +315,11 @@ public class JsArray /** * {@inheritDoc} - * 文字列表現を返す。 - * JSON表記の全体もしくは一部としての利用も可能。 + * + *

文字列表現を返す。 + * + *

JSON表記の全体もしくは一部としての利用も可能。 + * * @return {@inheritDoc} */ @Override diff --git a/src/main/java/jp/sourceforge/jovsonz/JsBoolean.java b/src/main/java/jp/sourceforge/jovsonz/JsBoolean.java index 06e4a0f..e152151 100644 --- a/src/main/java/jp/sourceforge/jovsonz/JsBoolean.java +++ b/src/main/java/jp/sourceforge/jovsonz/JsBoolean.java @@ -11,9 +11,12 @@ import java.io.IOException; /** * JSON BOOLEAN型Valueを表す。 - * 真偽値を反映する。 + * + *

真偽値を反映する。 * インスタンスは2つしか存在しえない。 - *

表記例

+ * + *

表記例 + * *

  * true
  * false
@@ -39,7 +42,8 @@ public final class JsBoolean
 
     /**
      * 隠しコンストラクタ。
-     * 2回しか呼ばれないはず。
+     *
+     * 

2回しか呼ばれないはず。 */ private JsBoolean(){ super(); @@ -48,8 +52,10 @@ public final class JsBoolean /** * JSON文字列ソースからBOOLEAN型Valueを読み込む。 - * 別型の可能性のある先頭文字を読み込んだ場合、 + * + *

別型の可能性のある先頭文字を読み込んだ場合、 * ソースに文字を読み戻した後nullが返される。 + * * @param source 文字列ソース * @return BOOLEAN型Value。別型の可能性がある場合はnull。 * @throws IOException 入力エラー @@ -91,7 +97,9 @@ public final class JsBoolean /** * {@inheritDoc} - * 常に{@link JsTypes#BOOLEAN}を返す。 + * + *

常に{@link JsTypes#BOOLEAN}を返す。 + * * @return {@inheritDoc} */ @Override @@ -101,7 +109,9 @@ public final class JsBoolean /** * 各種構造の出現をビジターに通知する。 - * この実装ではthisの出現のみを通知する。 + * + *

この実装ではthisの出現のみを通知する。 + * * @param visitor {@inheritDoc} * @throws JsVisitException {@inheritDoc} */ @@ -114,8 +124,10 @@ public final class JsBoolean /** * {@inheritDoc} - * ハッシュ値を返す。 + * + *

ハッシュ値を返す。 * 真なら{@link #HASH_TRUE}、偽なら{@link #HASH_FALSE}を返す。 + * * @return {@inheritDoc} */ @Override @@ -128,7 +140,9 @@ public final class JsBoolean /** * {@inheritDoc} - * 等価判定を行う。 + * + *

等価判定を行う。 + * * @param obj {@inheritDoc} * @return {@inheritDoc} */ @@ -141,8 +155,10 @@ public final class JsBoolean /** * {@inheritDoc} - * BOOLEAN型Valueを順序付ける。 + * + *

BOOLEAN型Valueを順序付ける。 * ({@link #TRUE}、{@link #FALSE})の順に順序付けられる。 + * * @param value {@inheritDoc} * @return {@inheritDoc} * @throws NullPointerException 引数がnull @@ -161,6 +177,7 @@ public final class JsBoolean /** * boolean値を反映したBOOLEAN型Valueを返す。 + * * @param bool boolean値 * @return BOOLEAN型Value */ @@ -171,6 +188,7 @@ public final class JsBoolean /** * boolean値を返す。 + * * @return boolean値 */ public boolean booleanValue(){ @@ -180,6 +198,7 @@ public final class JsBoolean /** * 真か判定する。 + * * @return 真ならtrue */ public boolean isTrue(){ @@ -189,6 +208,7 @@ public final class JsBoolean /** * 偽か判定する。 + * * @return 偽ならtrue */ public boolean isFalse(){ @@ -198,7 +218,9 @@ public final class JsBoolean /** * 文字列表現を返す。 - * JSON表記の一部としての利用も可能。 + * + *

JSON表記の一部としての利用も可能。 + * * @return {@inheritDoc} */ @Override diff --git a/src/main/java/jp/sourceforge/jovsonz/JsComposition.java b/src/main/java/jp/sourceforge/jovsonz/JsComposition.java index e18ec8b..1f25289 100644 --- a/src/main/java/jp/sourceforge/jovsonz/JsComposition.java +++ b/src/main/java/jp/sourceforge/jovsonz/JsComposition.java @@ -9,22 +9,29 @@ package jp.sourceforge.jovsonz; /** * 子要素を持つJSON型の抽象インタフェース。 - * JSON最上位構造であるための必要条件。 - * 子要素を持ちうるJSON型はOBJECT型かARRAY型のみ。 + * + *

JSON最上位構造であるための必要条件。 + * + *

子要素を持ちうるJSON型はOBJECT型かARRAY型のみ。 + * * @param 反復子の要素型 */ public interface JsComposition extends JsValue, Iterable { /** * 要素数を返す。 + * *

OBJECT型の場合は直下のPAIR総数。

+ * *

ARRAY型の場合は直下の子要素総数。

+ * * @return 要素数 */ int size(); /** * 子要素が空か否か判定する。 + * * @return 要素がなければtrue */ boolean isEmpty(); @@ -36,10 +43,14 @@ public interface JsComposition extends JsValue, Iterable { /** * このValueおよび子孫に変更があったか判定する。 - * Value生成直後はfalseでなければならない。 - * ロードしたデータに対し + * + *

Value生成直後はfalseでなければならない。 + * + *

ロードしたデータに対し * 再セーブの必要があるかどうかの判定などを目的とする。 - *

変更が可能なValueはOBJECT型かARRAY型のみ。

+ * + *

変更が可能なValueはOBJECT型かARRAY型のみ。 + * * @return 変更があればtrue */ boolean hasChanged(); diff --git a/src/main/java/jp/sourceforge/jovsonz/JsNull.java b/src/main/java/jp/sourceforge/jovsonz/JsNull.java index b0e1015..f9e1a37 100644 --- a/src/main/java/jp/sourceforge/jovsonz/JsNull.java +++ b/src/main/java/jp/sourceforge/jovsonz/JsNull.java @@ -11,9 +11,12 @@ import java.io.IOException; /** * JSON NULL型Valueを表す。 - * Javaのnullとは一切無関係。 + * + *

Javaのnullとは一切無関係。 * その実体はシングルトン。 - *

表記例

+ * + *

表記例 + * *

  * null
  * 
@@ -32,7 +35,8 @@ public final class JsNull /** * 隠しコンストラクタ。 - * 1回しか呼ばれないはず + * + *

1回しか呼ばれないはず */ private JsNull(){ super(); @@ -41,8 +45,10 @@ public final class JsNull /** * JSON文字列ソースからNULL型Valueを読み込む。 - * 別型の可能性のある先頭文字を読み込んだ場合、 + * + *

別型の可能性のある先頭文字を読み込んだ場合、 * ソースに文字を読み戻した後nullが返される。 + * * @param source 文字列ソース * @return NULL型Value。別型の可能性がある場合はnull。 * @throws IOException 入力エラー @@ -67,7 +73,9 @@ public final class JsNull /** * {@inheritDoc} - * 常に{@link JsTypes#NULL}を返す。 + * + *

常に{@link JsTypes#NULL}を返す。 + * * @return {@inheritDoc} */ @Override @@ -77,7 +85,9 @@ public final class JsNull /** * 各種構造の出現をビジターに通知する。 - * この実装ではthisの出現のみを通知する。 + * + *

この実装ではthisの出現のみを通知する。 + * * @param visitor {@inheritDoc} * @throws JsVisitException {@inheritDoc} */ @@ -90,8 +100,10 @@ public final class JsNull /** * {@inheritDoc} - * ハッシュ値を返す。 + * + *

ハッシュ値を返す。 * 常に{@value ONLYHASH}を返す。 + * * @return {@inheritDoc} */ @Override @@ -101,8 +113,10 @@ public final class JsNull /** * {@inheritDoc} - * 等価判定を行う。 + * + *

等価判定を行う。 * {@link #NULL}が渡された時のみtrueを返す。 + * * @param obj {@inheritDoc} * @return {@inheritDoc} */ @@ -115,8 +129,10 @@ public final class JsNull /** * {@inheritDoc} - * NULL型Valueを順序付ける。シングルトン相手にほぼ無意味。 + * + *

NULL型Valueを順序付ける。シングルトン相手にほぼ無意味。 * null以外の引数には必ず0を返す。 + * * @param value {@inheritDoc} * @return {@inheritDoc} * @throws NullPointerException 引数がnull @@ -129,9 +145,11 @@ public final class JsNull /** * {@inheritDoc} - * 文字列表現を返す。 + * + *

文字列表現を返す。 * 常に文字列 {@value TEXT} を返す。 * JSON表記の一部としての利用も可能。 + * * @return {@inheritDoc} */ @Override diff --git a/src/main/java/jp/sourceforge/jovsonz/JsNumber.java b/src/main/java/jp/sourceforge/jovsonz/JsNumber.java index 545f134..1b35cb9 100644 --- a/src/main/java/jp/sourceforge/jovsonz/JsNumber.java +++ b/src/main/java/jp/sourceforge/jovsonz/JsNumber.java @@ -15,18 +15,22 @@ import java.math.RoundingMode; /** * JSON NUMBER型Valueを表す。 - * 整数、実数を含めた数値を反映する。 - *

- * 10を基数とした{@link java.math.BigDecimal}を実装ベースとする。 + * + *

整数、実数を含めた数値を反映する。 + * + *

10を基数とした{@link java.math.BigDecimal}を実装ベースとする。 * ※ IEEE754浮動小数ではない。 - *

- *

(1)と(1.0)はスケール値によって区別される

- *

表記例

+ * + *

(1)と(1.0)はスケール値によって区別される + * + *

表記例 + * *

  * -43
  * 0.56
  * 3.23E-06
  * 
+ * * @see java.math.BigDecimal */ public class JsNumber @@ -46,6 +50,7 @@ public class JsNumber /** * コンストラクタ。 + * * @param val 初期整数値 */ public JsNumber(long val){ @@ -55,12 +60,14 @@ public class JsNumber /** * コンストラクタ。 - *

- * {@link java.math.BigDecimal#valueOf(double)}と同等の丸めが行われる。 - * (1.0/10.0)を渡すと0.1相当になる。 - * 必要に応じて{@link java.math.BigDecimal}を + * + *

{@link java.math.BigDecimal#valueOf(double)}と同等の丸めが行われる。 + * + *

(1.0/10.0)を渡すと0.1相当になる。 + * + *

必要に応じて{@link java.math.BigDecimal}を * 引数に持つコンストラクタと使い分けること。 - *

+ * * @param val 初期実数値 * @see java.math.BigDecimal#valueOf(double) */ @@ -71,9 +78,10 @@ public class JsNumber /** * コンストラクタ。 + * * @param val 初期整数値 * @throws ArithmeticException 正確な結果を - * {@link java.math.BigDecimal}に納め切れない + * {@link java.math.BigDecimal}に納め切れない */ public JsNumber(BigInteger val) throws ArithmeticException{ this(new BigDecimal(val, DEF_MC)); @@ -82,11 +90,14 @@ public class JsNumber /** * コンストラクタ。 - * 書式は{@link java.math.BigDecimal#BigDecimal(String)}に準ずる。 + * + *

書式は{@link java.math.BigDecimal#BigDecimal(String)}に準ずる。 + * * @param val 初期数値の文字列表記 * @throws NumberFormatException 不正な数値表記 * @throws ArithmeticException 正確な結果を - * {@link java.math.BigDecimal}に納め切れない + * {@link java.math.BigDecimal}に納め切れない + * * @see java.math.BigDecimal#BigDecimal(String) */ public JsNumber(CharSequence val) @@ -97,6 +108,7 @@ public class JsNumber /** * コンストラクタ。 + * * @param val 初期数値 * @throws NullPointerException 引数がnull */ @@ -109,8 +121,10 @@ public class JsNumber /** * 任意の文字がUnicodeのBasic-Latinの数字か否か判定する。 + * * @param ch 文字 * @return 数字ならtrue + * * @see java.lang.Character#isDigit(char) */ public static boolean isLatinDigit(char ch){ @@ -120,9 +134,12 @@ public class JsNumber /** * 文字ソースから符号付きの数字並びを読み込む。 - * 先頭'+'符号は読み飛ばされる。 + * + *

先頭'+'符号は読み飛ばされる。 * 冒頭のゼロ'0'に続く数字を許すか否か指定が可能。 - *

NUMBER型表記の整数部、小数部、指数部読み込みの下請けメソッド。

+ * + *

NUMBER型表記の整数部、小数部、指数部読み込みの下請けメソッド。 + * * @param source 文字列ソース * @param app 出力先 * @param allowZeroTrail 冒頭のゼロ'0'に続く数字を許すならtrue @@ -174,7 +191,9 @@ public class JsNumber /** * 文字ソースから、ピリオド「.」で始まるNUMBER型小数部を読み込む。 - * 小数部がなければなにもせずに戻る。 + * + *

小数部がなければなにもせずに戻る。 + * * @param source 文字列ソース * @param app 出力先 * @return 引数と同じ出力先 @@ -220,7 +239,9 @@ public class JsNumber /** * 文字ソースから「e」もしくは「E」で始まるNUMBER型指数部を読み込む。 - * 指数部がなければなにもせずに戻る。 + * + *

指数部がなければなにもせずに戻る。 + * * @param source 文字列ソース * @param app 出力先 * @return 引数と同じ出力先 @@ -247,8 +268,10 @@ public class JsNumber /** * JSON文字列ソースからNUMBER型Valueを読み込む。 - * 別型の可能性のある先頭文字を読み込んだ場合、 + * + *

別型の可能性のある先頭文字を読み込んだ場合、 * ソースに文字を読み戻した後nullが返される。 + * * @param source 文字列ソース * @return NUMBER型Value。別型の可能性がある場合はnull。 * @throws IOException 入力エラー @@ -275,7 +298,9 @@ public class JsNumber /** * {@inheritDoc} - * 常に{@link JsTypes#NUMBER}を返す。 + * + *

常に{@link JsTypes#NUMBER}を返す。 + * * @return {@inheritDoc} */ @Override @@ -285,7 +310,9 @@ public class JsNumber /** * 各種構造の出現をビジターに通知する。 - * この実装ではthisの出現のみを通知する。 + * + *

この実装ではthisの出現のみを通知する。 + * * @param visitor {@inheritDoc} * @throws JsVisitException {@inheritDoc} */ @@ -298,9 +325,12 @@ public class JsNumber /** * {@inheritDoc} - * ハッシュ値を返す。 + * + *

ハッシュ値を返す。 * {@link java.math.BigDecimal#hashCode()}と同じ値を返す。 + * * @return {@inheritDoc} + * * @see java.math.BigDecimal#hashCode() */ @Override @@ -310,12 +340,16 @@ public class JsNumber /** * {@inheritDoc} - * 等価判定を行う。 + * + *

等価判定を行う。 * {@link java.math.BigDecimal#equals(Object)}と同等の判断が行われる。 - * 「1.2」と「0.12E+1」など、 + * + *

「1.2」と「0.12E+1」など、 * スケールの一致しない値は異なる値と見なされる。 + * * @param obj {@inheritDoc} * @return {@inheritDoc} + * * @see java.math.BigDecimal#equals(Object) */ @Override @@ -328,11 +362,15 @@ public class JsNumber /** * {@inheritDoc} - * NUMBER型Valueを昇順に順序付ける。 - * 「1.2」と「0.12E+1」など、スケールが異なっても値が同じであれば + * + *

NUMBER型Valueを昇順に順序付ける。 + * + *

「1.2」と「0.12E+1」など、スケールが異なっても値が同じであれば * 等しい値と見なされる。 + * * @param value {@inheritDoc} * @return {@inheritDoc} + * * @see java.math.BigDecimal#compareTo(BigDecimal) */ @Override @@ -343,8 +381,11 @@ public class JsNumber /** * int型の数値を返す。 - * 情報が失われる可能性がある。 + * + *

情報が失われる可能性がある。 + * * @return int型数値 + * * @see java.lang.Number#intValue() * @see java.math.BigDecimal#intValue() */ @@ -354,8 +395,11 @@ public class JsNumber /** * long型の数値を返す。 - * 情報が失われる可能性がある。 + * + *

情報が失われる可能性がある。 + * * @return long型数値 + * * @see java.lang.Number#longValue() * @see java.math.BigDecimal#longValue() */ @@ -365,8 +409,11 @@ public class JsNumber /** * float型の数値を返す。 - * 情報が失われる可能性がある。 + * + *

情報が失われる可能性がある。 + * * @return float型数値 + * * @see java.lang.Number#floatValue() * @see java.math.BigDecimal#floatValue() */ @@ -376,8 +423,11 @@ public class JsNumber /** * double型の数値を返す。 - * 情報が失われる可能性がある。 + * + *

情報が失われる可能性がある。 + * * @return double型数値 + * * @see java.lang.Number#doubleValue() * @see java.math.BigDecimal#doubleValue() */ @@ -387,6 +437,7 @@ public class JsNumber /** * {@link java.math.BigDecimal}型の数値表現を返す。 + * * @return BigDecimal型数値 */ public BigDecimal decimalValue(){ @@ -395,7 +446,8 @@ public class JsNumber /** * スケール値を返す。 - * このインスタンスが整数文字列表記に由来する場合、 + * + *

このインスタンスが整数文字列表記に由来する場合、 * スケール値は0になるはず。 * *

    @@ -407,6 +459,7 @@ public class JsNumber *
* * @return スケール値 + * * @see java.math.BigDecimal#scale() */ public int scale(){ @@ -415,8 +468,10 @@ public class JsNumber /** * 文字列表現を返す。 - * {@link java.math.BigDecimal#toString()}に準ずる。 + * + *

{@link java.math.BigDecimal#toString()}に準ずる。 * JSON表記の一部としての利用も可能。 + * * @return {@inheritDoc} */ @Override diff --git a/src/main/java/jp/sourceforge/jovsonz/JsObject.java b/src/main/java/jp/sourceforge/jovsonz/JsObject.java index c5ad78a..d6be80d 100644 --- a/src/main/java/jp/sourceforge/jovsonz/JsObject.java +++ b/src/main/java/jp/sourceforge/jovsonz/JsObject.java @@ -18,9 +18,12 @@ import java.util.TreeMap; /** * JSON OBJECT型Valueを表す。 - * PAIR名と子要素の組(PAIR)の集合を反映する。 + * + *

PAIR名と子要素の組(PAIR)の集合を反映する。 * PAIR名の並び順に関しては未定義とする。 - *

表記例

+ * + *

表記例 + * *

  * {
  *     "Name" : "Joe" ,
@@ -57,9 +60,12 @@ public class JsObject
 
     /**
      * JSON文字列ソースからOBJECT型Valueを読み込む。
-     * さらに子Valueへとパース解析が進む可能性がある。
-     * 別型の可能性のある先頭文字を読み込んだ場合、
+     *
+     * 

さらに子Valueへとパース解析が進む可能性がある。 + * + *

別型の可能性のある先頭文字を読み込んだ場合、 * ソースに文字を読み戻した後nullが返される。 + * * @param source 文字列ソース * @return OBJECT型Value。別型の可能性がある場合はnull。 * @throws IOException 入力エラー @@ -117,7 +123,9 @@ public class JsObject /** * {@inheritDoc} - * 常に{@link JsTypes#OBJECT}を返す。 + * + *

常に{@link JsTypes#OBJECT}を返す。 + * * @return {@inheritDoc} */ @Override @@ -127,9 +135,11 @@ public class JsObject /** * このValueおよび子孫に変更があったか判定する。 - * PAIRの追加・削除が行われたか、 + * + *

PAIRの追加・削除が行われたか、 * もしくはPAIRのValue値いずれかに変更が認められれば、 * このOBJECT型Valueに変更があったとみなされる。 + * * @return {@inheritDoc} */ @Override @@ -165,9 +175,12 @@ public class JsObject /** * 深さ優先探索を行い各種構造の出現をビジターに通知する。 - * thisを通知した後、PAIRの各名前およびValueを順に訪問し、 + * + *

thisを通知した後、PAIRの各名前およびValueを順に訪問し、 * 最後に閉じ括弧を通知する。 - * PAIRの訪問順に関しては未定義。 + * + *

PAIRの訪問順に関しては未定義。 + * * @param visitor {@inheritDoc} * @throws JsVisitException {@inheritDoc} */ @@ -189,6 +202,7 @@ public class JsObject /** * PAIR総数を返す。 + * * @return PAIR総数 */ @Override @@ -198,6 +212,7 @@ public class JsObject /** * PAIR集合が空か判定する。 + * * @return 空ならtrue */ @Override @@ -217,7 +232,9 @@ public class JsObject /** * ハッシュ値を返す。 - * 全てのPAIRのハッシュ値からその都度合成される。高コスト注意!。 + * + *

全てのPAIRのハッシュ値からその都度合成される。高コスト注意!。 + * * @return {@inheritDoc} */ @Override @@ -227,9 +244,11 @@ public class JsObject /** * 等価判定を行う。 - * 双方のPAIR数が一致し、 + * + *

双方のPAIR数が一致し、 * 全てのPAIR名およびそれに対応付けられたValueが一致した場合のみ * 等価と判断される。 + * * @param obj {@inheritDoc} * @return {@inheritDoc} */ @@ -245,6 +264,7 @@ public class JsObject /** * 名前とValueからPAIRを登録する。 + * * @param name 名前 * @param value Value * @return 旧Value。同じ内容のPAIRがすでに存在していたらnull @@ -271,6 +291,7 @@ public class JsObject /** * PAIR名からValueを取得する。 + * * @param name PAIR名 * @return 対応するValue。見つからなければnull */ @@ -283,7 +304,9 @@ public class JsObject /** * PAIRを追加する。 - * 同じPAIR名を持つPAIRは無条件に上書きされる。 + * + *

同じPAIR名を持つPAIRは無条件に上書きされる。 + * * @param pair PAIR */ public void putPair(JsPair pair){ @@ -293,6 +316,7 @@ public class JsObject /** * PAIR名からPAIRを返す。 + * * @param name PAIR名 * @return PAIR。見つからなければnull */ @@ -305,6 +329,7 @@ public class JsObject /** * 指定した名前のPAIRを削除する。 + * * @param name PAIR名 * @return 消されたPAIR。該当するPAIRがなければnull */ @@ -317,6 +342,7 @@ public class JsObject /** * 保持する全PAIRのPAIR名の集合を返す。 + * * @return すべての名前 */ public Set nameSet(){ @@ -325,7 +351,9 @@ public class JsObject /** * PAIRのリストを返す。 - * このリストを上書き操作しても影響はない。 + * + *

このリストを上書き操作しても影響はない。 + * * @return PAIRリスト */ public List getPairList(){ @@ -340,8 +368,10 @@ public class JsObject /** * PAIRにアクセスするための反復子を提供する。 - * この反復子での削除作業はできない。 + * + *

この反復子での削除作業はできない。 * PAIR出現順序は未定義。 + * * @return 反復子イテレータ */ @Override @@ -351,7 +381,9 @@ public class JsObject /** * 文字列表現を返す。 - * JSON表記の全体もしくは一部としての利用も可能。 + * + *

JSON表記の全体もしくは一部としての利用も可能。 + * * @return {@inheritDoc} */ @Override diff --git a/src/main/java/jp/sourceforge/jovsonz/JsPair.java b/src/main/java/jp/sourceforge/jovsonz/JsPair.java index a10fb76..cf30af5 100644 --- a/src/main/java/jp/sourceforge/jovsonz/JsPair.java +++ b/src/main/java/jp/sourceforge/jovsonz/JsPair.java @@ -11,7 +11,8 @@ import java.io.IOException; /** * OBJECT型Value内に列挙される、名前の付いたValueとの組(PAIR)。 - * PAIRはValueではない。 + * + *

PAIRはValueではない。 * *

  * {
@@ -28,6 +29,7 @@ public class JsPair {
 
     /**
      * コンストラクタ。
+     *
      * @param name PAIR名
      * @param value PAIR名に対応付けられるValue
      * @throws NullPointerException 引数のいずれかがnull
@@ -46,10 +48,12 @@ public class JsPair {
 
     /**
      * コンストラクタ。
-     * STRING型をValueに持つPAIRが生成される。
+     *
+     * 

STRING型をValueに持つPAIRが生成される。 + * * @param name PAIR名 * @param text PAIR名に対応付けられる文字列データ。 - * エスケープされる前段階の表記。 + * エスケープされる前段階の表記。 * @throws NullPointerException 引数がnull */ public JsPair(String name, CharSequence text) @@ -60,7 +64,9 @@ public class JsPair { /** * コンストラクタ。 - * BOOLEAN型をValueに持つPAIRが生成される。 + * + *

BOOLEAN型をValueに持つPAIRが生成される。 + * * @param name PAIR名 * @param bool PAIR名に対応付けられる真偽値 * @throws NullPointerException PAIR名がnull @@ -73,7 +79,9 @@ public class JsPair { /** * コンストラクタ。 - * NUMBER型をValueに持つPAIRが生成される。 + * + *

NUMBER型をValueに持つPAIRが生成される。 + * * @param name PAIR名 * @param number PAIR名に対応付けられる整数値 * @throws NullPointerException PAIR名がnull @@ -86,7 +94,9 @@ public class JsPair { /** * コンストラクタ。 - * NUMBER型をValueに持つPAIRが生成される。 + * + *

NUMBER型をValueに持つPAIRが生成される。 + * * @param name PAIR名 * @param number PAIR名に対応付けられる実数値 * @throws NullPointerException PAIR名がnull @@ -99,6 +109,7 @@ public class JsPair { /** * PAIR名を返す。 + * * @return PAIR名 */ public String getName(){ @@ -107,6 +118,7 @@ public class JsPair { /** * Valueを返す。 + * * @return Value */ public JsValue getValue(){ @@ -115,8 +127,11 @@ public class JsPair { /** * {@inheritDoc} - * ハッシュ値を返す。 - * PAIR名とValue双方のハッシュ値から合成される。 + * + *

ハッシュ値を返す。 + * + *

PAIR名とValue双方のハッシュ値から合成される。 + * * @return {@inheritDoc} */ @Override @@ -128,8 +143,11 @@ public class JsPair { /** * {@inheritDoc} - * 等価判定を行う。 - * PAIR名とValue双方が一致する場合のみ真となる。 + * + *

等価判定を行う。 + * + *

PAIR名とValue双方が一致する場合のみ真となる。 + * * @param obj {@inheritDoc} * @return {@inheritDoc} */ @@ -148,7 +166,9 @@ public class JsPair { /** * 文字列表現を返す。 - * JSON表記の一部としての利用も可能。 + * + *

JSON表記の一部としての利用も可能。 + * * @return {@inheritDoc} */ @Override diff --git a/src/main/java/jp/sourceforge/jovsonz/JsParseException.java b/src/main/java/jp/sourceforge/jovsonz/JsParseException.java index 094da39..fe1ead8 100644 --- a/src/main/java/jp/sourceforge/jovsonz/JsParseException.java +++ b/src/main/java/jp/sourceforge/jovsonz/JsParseException.java @@ -9,7 +9,8 @@ package jp.sourceforge.jovsonz; /** * 入力文字列パース中断例外。 - * JSON文字列ソースへのパース処理の中断時に投げられる。 + * + *

JSON文字列ソースへのパース処理の中断時に投げられる。 */ @SuppressWarnings("serial") public class JsParseException extends Exception { @@ -35,6 +36,7 @@ public class JsParseException extends Exception { /** * コンストラクタ。 + * * @param message 詳細メッセージ。不明な場合はnull * @param lineNumber 行番号。不明な場合は0以下の値 */ @@ -45,6 +47,7 @@ public class JsParseException extends Exception { /** * コンストラクタ。 + * * @param message 詳細メッセージ。不明な場合はnull * @param cause 原因となった例外。不明な場合はnull * @param lineNumber 行番号。不明な場合は0以下の値 @@ -57,6 +60,7 @@ public class JsParseException extends Exception { /** * パースエラーの起きた行番号を返す。 + * * @return 行番号。不明な場合は0以下の値。 */ public int getLineNumber(){ @@ -65,6 +69,7 @@ public class JsParseException extends Exception { /** * 有効な行番号を保持しているか判定する。 + * * @return 有効な行番号(1以上)を保持していればtrue */ public boolean hasValidLineNumber(){ @@ -74,7 +79,9 @@ public class JsParseException extends Exception { /** * {@inheritDoc} - * 有効な行番号があれば一緒に出力される。 + * + *

有効な行番号があれば一緒に出力される。 + * * @return {@inheritDoc} */ @Override diff --git a/src/main/java/jp/sourceforge/jovsonz/JsString.java b/src/main/java/jp/sourceforge/jovsonz/JsString.java index 3f2ecc3..7c2df68 100644 --- a/src/main/java/jp/sourceforge/jovsonz/JsString.java +++ b/src/main/java/jp/sourceforge/jovsonz/JsString.java @@ -11,8 +11,11 @@ import java.io.IOException; /** * JSON STRING型Valueを表す。 - * Unicode文字列データを反映する。 - *

表記例

+ * + *

Unicode文字列データを反映する。 + * + *

表記例 + * *

  * "xyz"
  * "æ¼¢"
@@ -35,7 +38,8 @@ public class JsString
 
     /**
      * コンストラクタ。
-     * 長さ0の空文字が設定される。
+     *
+     * 

長さ0の空文字が設定される。 */ public JsString(){ this(""); @@ -44,7 +48,9 @@ public class JsString /** * コンストラクタ。 - * 引数はJSON書式ではない生文字列。 + * + *

引数はJSON書式ではない生文字列。 + * * @param rawSeq 生文字列 * @throws NullPointerException 引数がnull */ @@ -58,6 +64,7 @@ public class JsString /** * FFFF形式4桁で16進エスケープされた文字列を読み、 * char1文字にデコードする。 + * * @param source 文字列ソース * @return 文字 * @throws IOException 入力エラー @@ -98,11 +105,12 @@ public class JsString /** * '\'に続くスペシャルキャラの読み込みを行う。 + * * @param source 文字列ソース * @param app スペシャルキャラ格納文字列 * @throws IOException 入出力エラー * @throws JsParseException "\z"などの不正なスペシャルキャラ - * もしくは意図しない入力終了 + * もしくは意図しない入力終了 */ private static void parseSpecial(JsonSource source, Appendable app) throws IOException, JsParseException{ @@ -130,8 +138,10 @@ public class JsString /** * JSON文字列ソースからSTRING型Valueを読み込む。 - * 別型の可能性のある先頭文字を読み込んだ場合、 + * + *

別型の可能性のある先頭文字を読み込んだ場合、 * ソースに文字を読み戻した後nullが返される。 + * * @param source 文字列ソース * @return STRING型Value。別型の可能性がある場合はnull。 * @throws IOException 入力エラー @@ -168,11 +178,13 @@ public class JsString /** * 任意の文字からエスケープ出力用シンボルを得る。 - * このシンボルは'\'に続けて用いられる1文字である。 + * + *

このシンボルは'\'に続けて用いられる1文字である。 * 'u'を返す事はありえない。 + * * @param ch 任意の文字 * @return エスケープ出力用シンボル。 - * 1文字エスケープの必要がない場合は'\0' + * 1文字エスケープの必要がない場合は'\0' */ private static char escapeSymbol(char ch){ char result; @@ -192,7 +204,9 @@ public class JsString /** * 特殊文字をエスケープ出力する。 - * 特殊文字でなければなにもしない。 + * + *

特殊文字でなければなにもしない。 + * * @param appout 出力先 * @param ch 文字 * @return 特殊文字出力がエスケープされた時にtrue @@ -218,6 +232,7 @@ public class JsString /** * JSON STRING型Value形式で文字列を出力する。 + * * @param appout 文字出力 * @param seq 文字列 * @throws IOException 出力エラー @@ -241,6 +256,7 @@ public class JsString /** * JSON STRING型Value形式の文字列を返す。 + * * @param seq 生文字列 * @return STRING型表記に変換された文字列 */ @@ -258,7 +274,9 @@ public class JsString /** * {@inheritDoc} - * 常に{@link JsTypes#STRING}を返す。 + * + *

常に{@link JsTypes#STRING}を返す。 + * * @return {@inheritDoc} */ @Override @@ -268,7 +286,9 @@ public class JsString /** * 各種構造の出現をビジターに通知する。 - * この実装ではthisの出現のみを通知する。 + * + *

この実装ではthisの出現のみを通知する。 + * * @param visitor {@inheritDoc} * @throws JsVisitException {@inheritDoc} */ @@ -281,7 +301,9 @@ public class JsString /** * {@inheritDoc} - * ハッシュ値を返す。 + * + *

ハッシュ値を返す。 + * * @return {@inheritDoc} */ @Override @@ -291,8 +313,11 @@ public class JsString /** * {@inheritDoc} - * 等価判定を行う。 - * {@link java.lang.String#equals(Object)}に準ずる。 + * + *

等価判定を行う。 + * + *

{@link java.lang.String#equals(Object)}に準ずる。 + * * @param obj {@inheritDoc} * @return {@inheritDoc} */ @@ -308,8 +333,11 @@ public class JsString /** * {@inheritDoc} - * STRING型Valueを昇順に順序付ける。 - * {@link java.lang.String#compareTo(String)}に準ずる。 + * + *

STRING型Valueを昇順に順序付ける。 + * + *

{@link java.lang.String#compareTo(String)}に準ずる。 + * * @param value {@inheritDoc} * @return {@inheritDoc} */ @@ -322,7 +350,9 @@ public class JsString /** * {@inheritDoc} - * 指定位置の文字を返す。 + * + *

指定位置の文字を返す。 + * * @param index {@inheritDoc} * @return {@inheritDoc} * @throws IndexOutOfBoundsException {@inheritDoc} @@ -335,7 +365,9 @@ public class JsString /** * {@inheritDoc} - * 文字列長(char値総数)を返す。 + * + *

文字列長(char値総数)を返す。 + * * @return {@inheritDoc} */ @Override @@ -345,7 +377,9 @@ public class JsString /** * {@inheritDoc} - * 部分文字列を返す。 + * + *

部分文字列を返す。 + * * @param start {@inheritDoc} * @param end {@inheritDoc} * @return {@inheritDoc} @@ -359,6 +393,7 @@ public class JsString /** * クォーテーションやエスケープ処理の施されていない生の文字列を返す。 + * * @return 生の文字列 */ public String toRawString(){ @@ -367,8 +402,10 @@ public class JsString /** * {@inheritDoc} - * クォーテーションとエスケープ処理の施された文字列表記を生成する。 + * + *

クォーテーションとエスケープ処理の施された文字列表記を生成する。 * JSON表記の一部としての利用も可能。 + * * @return {@inheritDoc} */ @Override diff --git a/src/main/java/jp/sourceforge/jovsonz/JsTypes.java b/src/main/java/jp/sourceforge/jovsonz/JsTypes.java index 3e00a13..35464f3 100644 --- a/src/main/java/jp/sourceforge/jovsonz/JsTypes.java +++ b/src/main/java/jp/sourceforge/jovsonz/JsTypes.java @@ -33,6 +33,7 @@ public enum JsTypes { /** * コンストラクタ。 + * * @param klass {@link java.lang.Class}型 */ private JsTypes(Class klass){ @@ -49,6 +50,7 @@ public enum JsTypes { /** * {@link java.lang.Class}型から対応する型列挙を返す。 + * * @param carg 任意のjava.lang.Class型変数 * @return 型列挙。JSON型に由来しないクラスが指定されたときはnull * @throws NullPointerException 引数がnull @@ -66,6 +68,7 @@ public enum JsTypes { /** * 対応する{@link java.lang.Class}型を返す。 + * * @return java.lang.Class型 */ public Class getJsClass(){ @@ -74,7 +77,9 @@ public enum JsTypes { /** * このJSON型が子要素を持ちうるか判定する。 - * 子要素を持ちうるJSON型はOBJECT型かARRAY型のみ。 + * + *

子要素を持ちうるJSON型はOBJECT型かARRAY型のみ。 + * * @return 子要素を持ちうるならtrue */ public boolean isComposition(){ diff --git a/src/main/java/jp/sourceforge/jovsonz/JsValue.java b/src/main/java/jp/sourceforge/jovsonz/JsValue.java index 9635760..6b5ec9d 100644 --- a/src/main/java/jp/sourceforge/jovsonz/JsValue.java +++ b/src/main/java/jp/sourceforge/jovsonz/JsValue.java @@ -14,15 +14,17 @@ public interface JsValue { /** * 対応するJSON型列挙を返す。 + * * @return JSON型列挙 */ JsTypes getJsTypes(); /** * 深さ優先探索を行い各種構造の出現をビジターに通知する。 + * * @param visitor ビジター * @throws JsVisitException ビジターにより - * トラバース中断が判断された時に投げられる。 + * トラバース中断が判断された時に投げられる。 */ void traverse(ValueVisitor visitor) throws JsVisitException; diff --git a/src/main/java/jp/sourceforge/jovsonz/JsVisitException.java b/src/main/java/jp/sourceforge/jovsonz/JsVisitException.java index e976c47..b866974 100644 --- a/src/main/java/jp/sourceforge/jovsonz/JsVisitException.java +++ b/src/main/java/jp/sourceforge/jovsonz/JsVisitException.java @@ -9,12 +9,12 @@ package jp.sourceforge.jovsonz; /** * トラバース中断例外。 - * JSONツリー構造のトラバース処理の中断時に投げられる。 - *

- * トラバース処理内部でIOExceptionなどのチェック例外が発生した場合、 + * + *

JSONツリー構造のトラバース処理の中断時に投げられる。 + * + *

トラバース処理内部でIOExceptionなどのチェック例外が発生した場合、 * チェーン例外機構({@link java.lang.Throwable#getCause()} etc.) * を用いるのが望ましい。 - *

*/ @SuppressWarnings("serial") public class JsVisitException extends Exception { @@ -29,6 +29,7 @@ public class JsVisitException extends Exception { /** * コンストラクタ。 + * * @param message 詳細メッセージ。不明な場合はnull */ public JsVisitException(String message){ @@ -38,6 +39,7 @@ public class JsVisitException extends Exception { /** * コンストラクタ。 + * * @param message 詳細メッセージ。不明な場合はnull * @param cause 原因となった例外。不明な場合はnull */ @@ -48,6 +50,7 @@ public class JsVisitException extends Exception { /** * コンストラクタ。 + * * @param cause 原因となった例外。不明な場合はnull */ public JsVisitException(Throwable cause){ diff --git a/src/main/java/jp/sourceforge/jovsonz/Json.java b/src/main/java/jp/sourceforge/jovsonz/Json.java index e408c03..5c7c2c3 100644 --- a/src/main/java/jp/sourceforge/jovsonz/Json.java +++ b/src/main/java/jp/sourceforge/jovsonz/Json.java @@ -29,6 +29,7 @@ public final class Json { /** * JSON最上位構造から文字出力を開始する。 + * * @param appout 出力先 * @param topValue OBJECT型かARRAY型のValue * @throws NullPointerException 引数がnull @@ -57,9 +58,10 @@ public final class Json { /** * JSONの各種Valueを文字ソースから読み取る。 + * * @param source 文字入力 * @return 各種Value。 - * 0個以上連続するホワイトスペースと共にソースの終わりに達したときはnull + * 0個以上連続するホワイトスペースと共にソースの終わりに達したときはnull * @throws IOException 入力エラー * @throws JsParseException パースエラー */ @@ -91,9 +93,10 @@ public final class Json { /** * JSONの最上位構造を文字ソースから読み取る。 + * * @param source 文字入力ソース * @return JSON最上位構造。OBJECT型かARRAY型のいずれか。 - * 入力が0個以上のホワイトスペースのみで埋められていた場合はnull。 + * 入力が0個以上のホワイトスペースのみで埋められていた場合はnull。 * @throws IOException 入力エラー * @throws JsParseException パースエラー */ @@ -113,9 +116,10 @@ public final class Json { /** * JSONの最上位構造を文字リーダから読み取る。 + * * @param source 文字入力リーダ * @return JSON最上位構造。OBJECT型かARRAY型のいずれか。 - * 入力が0個以上のホワイトスペースのみで埋められていた場合はnull。 + * 入力が0個以上のホワイトスペースのみで埋められていた場合はnull。 * @throws IOException 入力エラー * @throws JsParseException パースエラー */ diff --git a/src/main/java/jp/sourceforge/jovsonz/JsonAppender.java b/src/main/java/jp/sourceforge/jovsonz/JsonAppender.java index 3dc56cd..98ec664 100644 --- a/src/main/java/jp/sourceforge/jovsonz/JsonAppender.java +++ b/src/main/java/jp/sourceforge/jovsonz/JsonAppender.java @@ -14,18 +14,15 @@ import java.util.Stack; /** * JSON文字出力用ビジター。 - *

- * JSON Valueのトラバース時にこのビジターを指定すると、 + * + *

JSON Valueのトラバース時にこのビジターを指定すると、 * 事前に用意した文字出力先にJSONフォーマットで出力される。 - *

- *

- * 出力に伴う{@link java.io.IOException}は + * + *

出力に伴う{@link java.io.IOException}は * {@link JsVisitException}のチェーン例外となる。 - *

- *

- * 前回パースの成功/失敗に関わらず、 + * + *

前回パースの成功/失敗に関わらず、 * インスタンスの再利用時の挙動は保証されない。 - *

*/ class JsonAppender implements ValueVisitor { @@ -51,6 +48,7 @@ class JsonAppender implements ValueVisitor { /** * コンストラクタ。 + * * @param appout 出力先 * @throws NullPointerException 引数がnull */ @@ -64,6 +62,7 @@ class JsonAppender implements ValueVisitor { /** * コンテキストをプッシュ退避する。 + * * @param composition 現在のコンテキスト */ protected void pushComposition(JsComposition composition){ @@ -74,6 +73,7 @@ class JsonAppender implements ValueVisitor { /** * コンテキストをポップ復帰する。 + * * @return スタックトップのコンテキスト * @throws EmptyStackException スタック構造が空 */ @@ -85,6 +85,7 @@ class JsonAppender implements ValueVisitor { /** * ネスト構造の深さを返す。 + * * @return 0から始まる深さ */ protected int nestDepth(){ @@ -93,6 +94,7 @@ class JsonAppender implements ValueVisitor { /** * ネスト構造が空(深さ0)か判定する。 + * * @return 空ならtrue */ protected boolean isNestEmpty(){ @@ -101,6 +103,7 @@ class JsonAppender implements ValueVisitor { /** * ネスト後、一つでも子要素が出力されたか判定する。 + * * @return 子要素が出力されていればtrue */ protected boolean hasChildDumped(){ @@ -120,6 +123,7 @@ class JsonAppender implements ValueVisitor { /** * 現在のコンテキストがARRAY型配列要素出力中の状態か否か判定する。 + * * @return 現在のコンテキストがARRAY型配列要素出力中ならtrue */ protected boolean isArrayContext(){ @@ -135,8 +139,10 @@ class JsonAppender implements ValueVisitor { /** * 1文字出力。 + * * @param ch 文字 * @throws JsVisitException 出力エラー。 + * * @see java.lang.Appendable#append(char) */ protected void append(char ch) throws JsVisitException{ @@ -151,8 +157,10 @@ class JsonAppender implements ValueVisitor { /** * 文字列出力。 + * * @param seq 文字列 * @throws JsVisitException 出力エラー。 + * * @see java.lang.Appendable#append(CharSequence) */ protected void append(CharSequence seq) throws JsVisitException{ @@ -167,7 +175,9 @@ class JsonAppender implements ValueVisitor { /** * 可能であれば出力先をフラッシュする。 + * * @throws JsVisitException 出力エラー + * * @see java.io.Flushable */ protected void flush() throws JsVisitException{ @@ -184,6 +194,7 @@ class JsonAppender implements ValueVisitor { /** * トラバース中断の原因となったIOExceptionを返す。 + * * @return トラバース中断の原因となったIOException。なければnull。 */ public IOException getIOException(){ @@ -192,6 +203,7 @@ class JsonAppender implements ValueVisitor { /** * トラバース中断の原因となったIOExceptionがあるか判定する。 + * * @return トラバース中断の原因となったIOExceptionがあればtrue */ public boolean hasIOException(){ @@ -201,6 +213,7 @@ class JsonAppender implements ValueVisitor { /** * pairの名前を出力する。 + * * @param name pair名 * @throws JsVisitException 出力エラー */ @@ -216,6 +229,7 @@ class JsonAppender implements ValueVisitor { /** * pair区切りコロンを出力する。 + * * @throws JsVisitException 出力エラー */ protected void putPairSeparator() throws JsVisitException{ @@ -225,7 +239,9 @@ class JsonAppender implements ValueVisitor { /** * 要素間区切りコンマを出力する。 - * JSONでは最後の要素の後にコンマを出力してはいけない。 + * + *

JSONでは最後の要素の後にコンマを出力してはいけない。 + * * @throws JsVisitException 出力エラー */ protected void putComma() throws JsVisitException{ @@ -235,6 +251,7 @@ class JsonAppender implements ValueVisitor { /** * 改行を出力する。 + * * @throws JsVisitException 出力エラー。 */ protected void putNewLine() throws JsVisitException{ @@ -244,6 +261,7 @@ class JsonAppender implements ValueVisitor { /** * インデントを出力する。 + * * @throws JsVisitException 出力エラー */ protected void putIndent() throws JsVisitException{ @@ -256,6 +274,7 @@ class JsonAppender implements ValueVisitor { /** * OBJECT及びARRAY型の最初の要素の前部分を出力する。 + * * @throws JsVisitException 出力エラー */ protected void putBefore1stElement() throws JsVisitException{ @@ -266,6 +285,7 @@ class JsonAppender implements ValueVisitor { /** * OBJECT及びARRAY型の要素間区切りを出力する。 + * * @throws JsVisitException 出力エラー */ protected void putBetweenElement() throws JsVisitException{ @@ -277,6 +297,7 @@ class JsonAppender implements ValueVisitor { /** * OBJECT及びARRAY型の最後の要素の後部分を出力する。 + * * @throws JsVisitException 出力エラー */ protected void putAfterLastElement() throws JsVisitException{ @@ -287,6 +308,7 @@ class JsonAppender implements ValueVisitor { /** * OBJECT及びARRAY型の空要素を出力する。 + * * @throws JsVisitException 出力エラー */ protected void putEmptyElement() throws JsVisitException{ @@ -296,6 +318,7 @@ class JsonAppender implements ValueVisitor { /** * パース前の出力を行う。 + * * @throws JsVisitException 出力エラー */ protected void putBeforeParse() throws JsVisitException{ @@ -305,6 +328,7 @@ class JsonAppender implements ValueVisitor { /** * パース後の出力を行う。 + * * @throws JsVisitException 出力エラー */ protected void putAfterParse() throws JsVisitException{ @@ -314,7 +338,9 @@ class JsonAppender implements ValueVisitor { /** * {@inheritDoc} - * Valueの出力を行う。 + * + *

Valueの出力を行う。 + * * @param value {@inheritDoc} * @throws JsVisitException {@inheritDoc} */ @@ -347,7 +373,9 @@ class JsonAppender implements ValueVisitor { /** * {@inheritDoc} - * OBJECT内の各pairの名前を出力する。 + * + *

OBJECT内の各pairの名前を出力する。 + * * @param pairName {@inheritDoc} * @throws JsVisitException {@inheritDoc} */ @@ -367,7 +395,9 @@ class JsonAppender implements ValueVisitor { /** * {@inheritDoc} - * 閉じ括弧を出力する。 + * + *

閉じ括弧を出力する。 + * * @param closed {@inheritDoc} * @throws JsVisitException {@inheritDoc} */ @@ -405,7 +435,9 @@ class JsonAppender implements ValueVisitor { /** * コンストラクタ。 - * 子要素が出力された事実は無い状態で始まる。 + * + *

子要素が出力された事実は無い状態で始まる。 + * * @param composition レベルに対応するOBJECTもしくはARRAY型Value */ DumpContext(JsComposition composition){ @@ -416,6 +448,7 @@ class JsonAppender implements ValueVisitor { /** * このレベルに対応するJSON集約型を返す。 + * * @return OBJECTもしくはARRAY型Value */ JsComposition getComposition(){ @@ -424,6 +457,7 @@ class JsonAppender implements ValueVisitor { /** * このレベルで子要素出力が行われたか判定する。 + * * @return 子要素出力が行われていたならtrue */ boolean hasChildDumped(){ diff --git a/src/main/java/jp/sourceforge/jovsonz/JsonSource.java b/src/main/java/jp/sourceforge/jovsonz/JsonSource.java index 758c007..c2a9ebb 100644 --- a/src/main/java/jp/sourceforge/jovsonz/JsonSource.java +++ b/src/main/java/jp/sourceforge/jovsonz/JsonSource.java @@ -14,9 +14,12 @@ import java.io.StringReader; /** * JSONデータ用入力ソース。 - * 先読みした文字のプッシュバック機能と行番号のカウント機能を有する。 - * 行番号は1から始まる。 + * + *

先読みした文字のプッシュバック機能と行番号のカウント機能を有する。 + * + *

行番号は1から始まる。 * 行と行はLF('\n')で区切られるものとする。(※CRは無視) + * * @see java.io.PushbackReader * @see java.io.LineNumberReader */ @@ -48,6 +51,7 @@ class JsonSource implements Closeable { /** * コンストラクタ。 + * * @param reader 文字入力リーダー * @throws NullPointerException 引数がnull */ @@ -60,8 +64,11 @@ class JsonSource implements Closeable { /** * コンストラクタ。 - * 任意の文字列を入力ソースとする。 + * + *

任意の文字列を入力ソースとする。 + * * @param text 文字列 + * * @see java.io.StringReader */ public JsonSource(CharSequence text){ @@ -71,6 +78,7 @@ class JsonSource implements Closeable { /** * JSON規格のwhitespace文字を判定する。 + * * @param ch 判定対象文字 * @return whitespaceならtrue */ @@ -89,8 +97,9 @@ class JsonSource implements Closeable { /** * JSON規格のwhitespace文字を判定する。 + * * @param ch 判定対象文字。 - * 上位16bitがゼロでなければwhitespaceと判定されない。 + * 上位16bitがゼロでなければwhitespaceと判定されない。 * @return whitespaceならtrue。引数が負の場合はfalse。 */ public static boolean isWhitespace(int ch){ @@ -101,6 +110,7 @@ class JsonSource implements Closeable { /** * プッシュバック可能な残り文字数を返す。 + * * @return プッシュバック可能な残り文字数 */ public int getPushBackSpared(){ @@ -109,6 +119,7 @@ class JsonSource implements Closeable { /** * 現時点での行番号を返す。 + * * @return 1から始まる行番号 */ public int getLineNumber(){ @@ -117,8 +128,10 @@ class JsonSource implements Closeable { /** * 1文字読み込む。 + * * @return 読み込んだ文字。入力が終わっている場合は負の値。 * @throws IOException 入力エラー + * * @see java.io.Reader#read() */ public int read() throws IOException{ @@ -138,6 +151,7 @@ class JsonSource implements Closeable { /** * 入力末端ではないと仮定して1文字読み込む。 + * * @return 読み込んだ文字。 * @throws IOException 入力エラー * @throws JsParseException 入力が終わっている @@ -153,8 +167,10 @@ class JsonSource implements Closeable { /** * 入力が文字列とマッチするか判定する。 - * 失敗しても読み戻しは行われない。 + * + *

失敗しても読み戻しは行われない。 * 長さ0の文字列は必ずマッチに成功する。 + * * @param seq マッチ対象文字列 * @return マッチすればtrue * @throws IOException 入力エラー @@ -171,7 +187,9 @@ class JsonSource implements Closeable { /** * 1文字読み戻す。 - * 行数カウントへも反映される。 + * + *

行数カウントへも反映される。 + * * @param ch 読み戻す文字 * @throws IOException バッファあふれもしくはクローズ済み */ @@ -191,8 +209,11 @@ class JsonSource implements Closeable { /** * 1文字読み戻す。 - * char型にキャストした引数が次回読み込まれる。 - * 行数カウントへも反映される。 + * + *

char型にキャストした引数が次回読み込まれる。 + * + *

行数カウントへも反映される。 + * * @param ch 読み戻す文字。負の符号を含む上位16bitは無視される。 * @throws IOException バッファあふれもしくはクローズ済み */ @@ -203,6 +224,7 @@ class JsonSource implements Closeable { /** * whitespace文字を読み飛ばす。 + * * @throws IOException 入力エラー */ public void skipWhiteSpace() throws IOException{ @@ -220,6 +242,7 @@ class JsonSource implements Closeable { /** * まだ読み込めるデータがあるか判定する。 + * * @return まだ読めるデータがあればtrue * @throws IOException IO入力エラー */ @@ -232,8 +255,11 @@ class JsonSource implements Closeable { /** * コンストラクタで指定されたReaderを閉じる。 - * クローズ後の読み込みおよび読み戻し動作は全て例外を投げる。 + * + *

クローズ後の読み込みおよび読み戻し動作は全て例外を投げる。 + * * @throws IOException 入出力エラー + * * @see java.io.Closeable */ @Override diff --git a/src/main/java/jp/sourceforge/jovsonz/UnmodIterator.java b/src/main/java/jp/sourceforge/jovsonz/UnmodIterator.java index 1786e34..cfe99ae 100644 --- a/src/main/java/jp/sourceforge/jovsonz/UnmodIterator.java +++ b/src/main/java/jp/sourceforge/jovsonz/UnmodIterator.java @@ -13,6 +13,7 @@ import java.util.NoSuchElementException; /** * 既存の{@link java.util.Iterator}および{@link java.lang.Iterable}に対し、 * 削除のできない変更操作不可なIteratorラッパを提供する。 + * * @param コレクション内の要素型 */ public class UnmodIterator implements Iterator { @@ -21,6 +22,7 @@ public class UnmodIterator implements Iterator { /** * コンストラクタ。 + * * @param iterator ラップ元Iterator * @throws NullPointerException 引数がnull */ @@ -33,6 +35,7 @@ public class UnmodIterator implements Iterator { /** * 削除操作不可なラップIteratorを生成する。 + * * @param コレクション内の要素型 * @param iterator ラップ元Iterator * @return 変更操作不可なIterator @@ -46,6 +49,7 @@ public class UnmodIterator implements Iterator { /** * 削除操作不可なラップIterableを生成する。 + * * @param コレクション内の要素型 * @param iterable ラップ元Iterable * @return 変更操作不可なIteratorを生成するIterable @@ -66,6 +70,7 @@ public class UnmodIterator implements Iterator { /** * Iterableに由来する削除操作不可なラップIteratorを生成する。 + * * @param コレクション内の要素型 * @param iterable Iterable * @return 変更操作不可なIterator @@ -80,7 +85,9 @@ public class UnmodIterator implements Iterator { /** * {@inheritDoc} - * 反復子に次の要素があるか判定する。 + * + *

反復子に次の要素があるか判定する。 + * * @return {@inheritDoc} */ @Override @@ -90,7 +97,9 @@ public class UnmodIterator implements Iterator { /** * {@inheritDoc} - * 反復子の次の要素を取得する。 + * + *

反復子の次の要素を取得する。 + * * @return {@inheritDoc} * @throws NoSuchElementException これ以上要素はない。 */ @@ -101,7 +110,9 @@ public class UnmodIterator implements Iterator { /** * {@inheritDoc} - * 必ず失敗し例外を投げる。 + * + *

必ず失敗し例外を投げる。 + * * @throws UnsupportedOperationException {@inheritDoc} */ @Override diff --git a/src/main/java/jp/sourceforge/jovsonz/ValueVisitor.java b/src/main/java/jp/sourceforge/jovsonz/ValueVisitor.java index e04c0ad..4fc25ed 100644 --- a/src/main/java/jp/sourceforge/jovsonz/ValueVisitor.java +++ b/src/main/java/jp/sourceforge/jovsonz/ValueVisitor.java @@ -14,27 +14,32 @@ public interface ValueVisitor { /** * Value登場の通知を受け取る。 + * * @param value JSON Value * @throws JsVisitException ビジターがトラバース中止を判断した際に - * 投げられる。 + * 投げられる。 */ void visitValue(JsValue value) throws JsVisitException; /** * OBJECT型内部のPAIR名登場の通知を受け取る。 - * PAIRの示すValueの出現する直前に通知が行われる。 + * + *

PAIRの示すValueの出現する直前に通知が行われる。 + * * @param pairName PAIR名 * @throws JsVisitException ビジターがトラバース中止を判断した際に - * 投げられる。 + * 投げられる。 */ void visitPairName(String pairName) throws JsVisitException; /** * 括弧構造終了の通知を受け取る。 - *

括弧構造を持つJSON型は、OBJECT型かARRAY型のみ。

+ * + *

括弧構造を持つJSON型は、OBJECT型かARRAY型のみ。 + * * @param composition OBJECT型かARRAY型のいずれかのValue * @throws JsVisitException ビジターがトラバース中止を判断した際に - * 投げられる。 + * 投げられる。 */ void visitCompositionClose(JsComposition composition) throws JsVisitException; diff --git a/src/main/java/jp/sourceforge/jovsonz/package-info.java b/src/main/java/jp/sourceforge/jovsonz/package-info.java index 7176733..b4d4998 100644 --- a/src/main/java/jp/sourceforge/jovsonz/package-info.java +++ b/src/main/java/jp/sourceforge/jovsonz/package-info.java @@ -43,7 +43,8 @@ * *


* - *

JSON基本型

+ *

JSON基本型 + * *

*
OBJECT型
*
{ "Name" : "Joe", "Age" : 88 }
-- 2.11.0 From 1d5b0b9a3eaebb62dda7b1e7314cac615228511d Mon Sep 17 00:00:00 2001 From: Olyutorskii Date: Sat, 8 Oct 2022 01:59:53 +0900 Subject: [PATCH 08/12] bump checkstyle from 9.0 to 10.3.4 --- config/checkstyle/checkstyle.xml | 50 +++++++++++++++++++--- pom.xml | 4 +- .../java/jp/sourceforge/jovsonz/JsComposition.java | 10 ++--- src/main/java/jp/sourceforge/jovsonz/JsValue.java | 4 +- .../java/jp/sourceforge/jovsonz/ValueVisitor.java | 6 +-- 5 files changed, 55 insertions(+), 19 deletions(-) diff --git a/config/checkstyle/checkstyle.xml b/config/checkstyle/checkstyle.xml index 29a68e1..eb53383 100644 --- a/config/checkstyle/checkstyle.xml +++ b/config/checkstyle/checkstyle.xml @@ -211,6 +211,7 @@ + @@ -362,20 +363,55 @@ - + + + - + + + + - + + - - + + + + + + + + - - + + + + + + diff --git a/pom.xml b/pom.xml index 3b59396..f27cfc2 100644 --- a/pom.xml +++ b/pom.xml @@ -227,12 +227,12 @@ org.apache.maven.plugins maven-checkstyle-plugin - 3.1.2 + 3.2.0 com.puppycrawl.tools checkstyle - 9.0 + 10.3.4 diff --git a/src/main/java/jp/sourceforge/jovsonz/JsComposition.java b/src/main/java/jp/sourceforge/jovsonz/JsComposition.java index 1f25289..b13c7e9 100644 --- a/src/main/java/jp/sourceforge/jovsonz/JsComposition.java +++ b/src/main/java/jp/sourceforge/jovsonz/JsComposition.java @@ -27,19 +27,19 @@ public interface JsComposition extends JsValue, Iterable { * * @return 要素数 */ - int size(); + public abstract int size(); /** * 子要素が空か否か判定する。 * * @return 要素がなければtrue */ - boolean isEmpty(); + public abstract boolean isEmpty(); /** * 子要素を空にする。 */ - void clear(); + public abstract void clear(); /** * このValueおよび子孫に変更があったか判定する。 @@ -53,11 +53,11 @@ public interface JsComposition extends JsValue, Iterable { * * @return 変更があればtrue */ - boolean hasChanged(); + public abstract boolean hasChanged(); /** * このValueおよび子孫に変更がなかったことにする。 */ - void setUnchanged(); + public abstract void setUnchanged(); } diff --git a/src/main/java/jp/sourceforge/jovsonz/JsValue.java b/src/main/java/jp/sourceforge/jovsonz/JsValue.java index 6b5ec9d..4d38bfd 100644 --- a/src/main/java/jp/sourceforge/jovsonz/JsValue.java +++ b/src/main/java/jp/sourceforge/jovsonz/JsValue.java @@ -17,7 +17,7 @@ public interface JsValue { * * @return JSON型列挙 */ - JsTypes getJsTypes(); + public abstract JsTypes getJsTypes(); /** * 深さ優先探索を行い各種構造の出現をビジターに通知する。 @@ -26,6 +26,6 @@ public interface JsValue { * @throws JsVisitException ビジターにより * トラバース中断が判断された時に投げられる。 */ - void traverse(ValueVisitor visitor) throws JsVisitException; + public abstract void traverse(ValueVisitor visitor) throws JsVisitException; } diff --git a/src/main/java/jp/sourceforge/jovsonz/ValueVisitor.java b/src/main/java/jp/sourceforge/jovsonz/ValueVisitor.java index 4fc25ed..1cd8a76 100644 --- a/src/main/java/jp/sourceforge/jovsonz/ValueVisitor.java +++ b/src/main/java/jp/sourceforge/jovsonz/ValueVisitor.java @@ -19,7 +19,7 @@ public interface ValueVisitor { * @throws JsVisitException ビジターがトラバース中止を判断した際に * 投げられる。 */ - void visitValue(JsValue value) throws JsVisitException; + public abstract void visitValue(JsValue value) throws JsVisitException; /** * OBJECT型内部のPAIR名登場の通知を受け取る。 @@ -30,7 +30,7 @@ public interface ValueVisitor { * @throws JsVisitException ビジターがトラバース中止を判断した際に * 投げられる。 */ - void visitPairName(String pairName) throws JsVisitException; + public abstract void visitPairName(String pairName) throws JsVisitException; /** * 括弧構造終了の通知を受け取る。 @@ -41,7 +41,7 @@ public interface ValueVisitor { * @throws JsVisitException ビジターがトラバース中止を判断した際に * 投げられる。 */ - void visitCompositionClose(JsComposition composition) + public abstract void visitCompositionClose(JsComposition composition) throws JsVisitException; } -- 2.11.0 From d70c37b950f9b07c3d152ecf39e03f3188e73d5e Mon Sep 17 00:00:00 2001 From: Olyutorskii Date: Sat, 8 Oct 2022 02:32:33 +0900 Subject: [PATCH 09/12] bump PMD from 6.38.0 to 6.50.0 --- CHANGELOG.txt | 4 ++++ pom.xml | 6 +++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.txt b/CHANGELOG.txt index 94446be..af29673 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -4,6 +4,10 @@ Jovsonz 変更履歴 +1.101.XXX () + ・interfaceの修飾子を明示化。(JDK9対応) + ・Javadoc不備に対応。(JDK17対応) + 1.101.104 (2019-05-03) ・Maven3対応。 ・JDK1.8が必須となる。 diff --git a/pom.xml b/pom.xml index f27cfc2..49143eb 100644 --- a/pom.xml +++ b/pom.xml @@ -240,17 +240,17 @@ org.apache.maven.plugins maven-pmd-plugin - 3.15.0 + 3.19.0 net.sourceforge.pmd pmd-core - 6.38.0 + 6.50.0 net.sourceforge.pmd pmd-java - 6.38.0 + 6.50.0 -- 2.11.0 From d17a7f927d94b34a4c3c7237f04e6c9e233283c5 Mon Sep 17 00:00:00 2001 From: Olyutorskii Date: Sat, 8 Oct 2022 13:43:15 +0900 Subject: [PATCH 10/12] Add Javadoc comment to Serializable implemented private field for JDK15 warning --- src/main/java/jp/sourceforge/jovsonz/JsParseException.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/jp/sourceforge/jovsonz/JsParseException.java b/src/main/java/jp/sourceforge/jovsonz/JsParseException.java index fe1ead8..65fe409 100644 --- a/src/main/java/jp/sourceforge/jovsonz/JsParseException.java +++ b/src/main/java/jp/sourceforge/jovsonz/JsParseException.java @@ -24,6 +24,7 @@ public class JsParseException extends Exception { private static final int LINE_UNKNOWN = 0; + /** line number. */ private final int lineNumber; /** -- 2.11.0 From ef2c163bdad4b5441a69f29e8b488a96cbe93b50 Mon Sep 17 00:00:00 2001 From: Olyutorskii Date: Sat, 8 Oct 2022 13:53:45 +0900 Subject: [PATCH 11/12] prepare v1.101.106 --- CHANGELOG.txt | 2 +- pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.txt b/CHANGELOG.txt index af29673..c900ee4 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -4,7 +4,7 @@ Jovsonz 変更履歴 -1.101.XXX () +1.101.106 (2022-10-08) ・interfaceの修飾子を明示化。(JDK9対応) ・Javadoc不備に対応。(JDK17対応) diff --git a/pom.xml b/pom.xml index 49143eb..4381730 100644 --- a/pom.xml +++ b/pom.xml @@ -16,7 +16,7 @@ jp.sourceforge.jovsonz jovsonz - 1.101.105-SNAPSHOT + 1.101.106 jar Jovsonz -- 2.11.0 From 5a7fbcc8f2a227154ee6023eea0da375f92cd2ba Mon Sep 17 00:00:00 2001 From: Olyutorskii Date: Sat, 8 Oct 2022 13:59:16 +0900 Subject: [PATCH 12/12] start v1.101.107-SNAPSHOT --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 4381730..f8bcf63 100644 --- a/pom.xml +++ b/pom.xml @@ -16,7 +16,7 @@ jp.sourceforge.jovsonz jovsonz - 1.101.106 + 1.101.107-SNAPSHOT jar Jovsonz -- 2.11.0