diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᒢSkullBoneMother.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᒢSkullBoneMother.java index 23e9821..b6e88f6 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᒢSkullBoneMother.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᒢSkullBoneMother.java @@ -37,7 +37,6 @@ public interface ᒢSkullBoneMother { /// The DNA of which this instance is made of. /// A bean getter should not return the DNA of which the bean is made of. - /// @return The DNA class of the bone bean. default Class thisᴰᴺᴬ() { return getClass(); } diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/BaseNumber.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/BaseNumber.java index 6c804cc..4e87b2b 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/BaseNumber.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/BaseNumber.java @@ -30,7 +30,6 @@ package ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ; import ᒢᐩᐩ.ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ.ᣖᣗᑊᔿᑊᐪᑊᘁᓫ.PrimitiveBooleanIterator; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; -/// The lowest number base interface. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/BaseNumberBlob.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/BaseNumberBlob.java index 06b8a8a..64338d7 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/BaseNumberBlob.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/BaseNumberBlob.java @@ -37,7 +37,6 @@ import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒢℭỗᶇṧⱦᶏꬼȶʂ; import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᔿᣔᐪᣗᑊᕁ.M02ᒾ; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; -/// Basic number blob as digital blubber. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/BaseNumberByte.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/BaseNumberByte.java index dd48ee9..24148d7 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/BaseNumberByte.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/BaseNumberByte.java @@ -30,7 +30,6 @@ package ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ; import ᒢᐩᐩ.ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ.ᣖᣗᑊᔿᑊᐪᑊᘁᓫ.PrimitiveByteIterator; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; -/// Basic numbers which are retro classic oldschool legacy byte aligned. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/Decimal144.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/Decimal144.java index b131a48..85fb455 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/Decimal144.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/Decimal144.java @@ -37,20 +37,13 @@ import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᒢᓫᑊᐣᑊ.ᔿᓫᒻ import ᒢᐩᐩ.ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ.ᣖᣗᑊᔿᑊᐪᑊᘁᓫ.PrimitiveBooleanIterator; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; -/// Decimal choco number of 144 bits. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 +//see working impl at: https://github.com/douglascrockford/DEC64 @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") public class Decimal144 extends AbstractBaseGetậlMatrix1 implements BaseNumber { - // Decimal144 - // OLD: 18 (signed) exponent + 126 coefficient = 6 octals + 42 octals - // V2X: 4 bit choco + 14 bit exponent + 126 coefficient - - // TODO: add parse's for all 3 retro decimal formats - // DEC64 = 8 bit exponent + 56 bit coefficient - //see working impl at: https://github.com/douglascrockford/DEC64 // decimal64 floating-point format // 1 sign + 13 combination + 50 Significand continuation @@ -58,6 +51,11 @@ public class Decimal144 extends AbstractBaseGetậlMatrix1 // decimal128 floating-point format // 1 sign + 17 combination + 110 Significand continuation + // Decimal144 + // 18 (signed) exponent + 126 coefficient = 6 octals + 42 octals + + // TODO: add parse's for all 3 retro decimal formats + private final V144Tocta value; public Decimal144() { diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/TTꞱꞱᖟGateway.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/TTꞱꞱᖟGateway.java index 08104c8..7afebe9 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/TTꞱꞱᖟGateway.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/TTꞱꞱᖟGateway.java @@ -208,7 +208,7 @@ public enum TTꞱꞱᖟGateway implements BãßᛗᚢᛗᛗᛉVū́ǘrChaliceEnu return BAKED_IN_PIES; } - static abstract private class BoneTerminatorBaseX> implements Terminator𓄯,BãßᛗᚢᛗᛗᛉBoneBabe𓄯 { + static abstract private class BoneTerminatorBaseX> implements Terminator𓄯,BãßᛗᚢᛗᛗᛉBoneBabe𓄯 { //protected final int slices; protected final int slice; private final Function creator; @@ -227,52 +227,28 @@ public enum TTꞱꞱᖟGateway implements BãßᛗᚢᛗᛗᛉVū́ǘrChaliceEnu } } @Override - final public BãßBȍőnCoffinԲ thisᵀᴮᵒⁿᵉᴳʳᵃᵛᵉ() { + public BãßBȍőnCoffinԲ thisᵀᴮᵒⁿᵉᴳʳᵃᵛᵉ() { return ghostsInAShell; } @Override - final public int zerdinal() { + public int zerdinal() { return slice; } @Override - final public int zerdinalSpaceBoundary() { + public int zerdinalSpaceBoundary() { return terminator注.slices(); } @Override - final public T zerdinalMaterializeSpace(int zerdinal) { + public T zerdinalMaterializeSpace(int zerdinal) { if (slice == zerdinal) { return thisᵀᴮᵒⁿᵉ(); // keep JVM identity equals to itself } return creator.apply(zerdinal); } @Override - final public String abacusRȧñkName() { + public String abacusRȧñkName() { return slice + "_" + terminator注.slices(); } - @Override - final public int hashCode() { - //return Objects.hash(slice, terminator注.slices()); - return Objects.hash(getClass().hashCode(), slice, terminator注.slices()); - } - @Override - final public boolean equals(Object obj) { - if (obj == null) { - return false; - } - return hashCode() == obj.hashCode(); -// if (this == obj) { -// return true; -// } -// if (obj == null) { -// return false; -// } -// if (getClass() != obj.getClass()) { -// return false; -// } -// BoneTerminatorBaseX other = (BoneTerminatorBaseX) obj; -// return slice == other.slice && terminator注.slices() == other.terminator注.slices(); - } - } private interface PrimordialZerdinalMutexBaseX { } diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorBullet.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorBullet.java index 6da1089..f1f86e7 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorBullet.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorBullet.java @@ -30,9 +30,6 @@ package ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪ import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; import ᒢᐩᐩ.ᒃᣔᔆᔆᒃᐤᐤᣕ.ᒼᒻᣔᙆᙆ.ᣔᔿᔿᐤ.BãßBȍőnAmmoBullet; -/// Terminator bullet types to store in the backpack. -/// @author للَّٰهِilLצسُو -/// @version ©Δ∞ 仙上主天 @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") public enum TerminatorBullet implements BãßBȍőnAmmoBullet { DUYTS_NAME, diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorCakeᴮᵃᵏᵉ.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorCakeᴮᵃᵏᵉ.java index efdb779..3d31c0f 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorCakeᴮᵃᵏᵉ.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorCakeᴮᵃᵏᵉ.java @@ -34,9 +34,6 @@ import ᒢᐩᐩ.ᓫᣕᐪᓫᣗ.ᣖᑊᓫ.ᐪᣔᔆᐪᓫ.TasteCakeDoughFrostGl import ᒢᐩᐩ.ᓫᣕᐪᓫᣗ.ᣖᑊᓫ.ᐪᣔᔆᐪᓫ.TasteCakeDoughMarrowGlitter注; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; -/// Terminator cake bake instructions. -/// @author للَّٰهِilLצسُو -/// @version ©Δ∞ 仙上主天 @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @TasteCakeDoughMarrowGlitter注(eat = @FoodGlitter注(prefix = {/*"thisᵀᴮᵒⁿᵉᴳʳᵃᵛᵉ",*/ "this", "to", "zerdinal", "ordinal", "clamp", "brick", "lego"}), taste = @FoodSelect注(burn = FoodType.ANY_ENUM)) @TasteCakeDoughMarrowGlitter注(eat = @FoodGlitter注(prefix = {"valueOf", "values", "valuesLength", "convertᴬᴸᴸ"/*, "valuesᵁⁿˢᵃᶠᵉ"*/}), tasteStatic = true, taste = @FoodSelect注(burn = FoodType.ANY_ENUM)) diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorEnum𓄯.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorEnum𓄯.java index 552e4e1..86e76e8 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorEnum𓄯.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorEnum𓄯.java @@ -30,10 +30,6 @@ package ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪ import ᒢᐩᐩ.ᒃᣔᔆᔆᒃᐤᐤᣕ.ᔿᓑᔿᔿᔋᐝᣚ.BãßᛗᚢᛗᛗᛉChaliceEnum𓄯; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; -/// Terminator glue for enum instance variants. -/// @param The T-bone self type. -/// @author للَّٰهِilLצسُو -/// @version ©Δ∞ 仙上主天 @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") public interface TerminatorEnum𓄯> extends Terminator𓄯,BãßᛗᚢᛗᛗᛉChaliceEnum𓄯 { diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGun.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGun.java index cce7122..be5a0c0 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGun.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGun.java @@ -29,9 +29,6 @@ package ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪ import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; -/// Terminator gun fire. -/// @author للَّٰهِilLצسُو -/// @version ©Δ∞ 仙上主天 @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") public interface TerminatorGun { diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGunAmmo.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGunAmmo.java index d82cd32..fcc2f5e 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGunAmmo.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGunAmmo.java @@ -29,9 +29,6 @@ package ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪ import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; -/// Terminator gun ammo meta information web-site descriptor. -/// @author للَّٰهِilLצسُو -/// @version ©Δ∞ 仙上主天 @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") public interface TerminatorGunAmmo { diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGunAmmo注.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGunAmmo注.java index faaba00..15662d4 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGunAmmo注.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGunAmmo注.java @@ -35,9 +35,6 @@ import java.lang.annotation.Target; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; -/// Terminator gun ammo annotation. -/// @author للَّٰهِilLצسُو -/// @version ©Δ∞ 仙上主天 @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @Documented @Retention(RetentionPolicy.RUNTIME) diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGunLoader.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGunLoader.java index 1c09ea7..b04ed3f 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGunLoader.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGunLoader.java @@ -29,9 +29,6 @@ package ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪ import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; -/// Terminator gun loader. -/// @author للَّٰهِilLצسُو -/// @version ©Δ∞ 仙上主天 @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") public interface TerminatorGunLoader { diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGunSafe.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGunSafe.java index b7dd11f..e4215bf 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGunSafe.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/TerminatorGunSafe.java @@ -31,9 +31,6 @@ import java.util.Optional; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; -/// Terminator gun safe to transfer ammo from loader to instance. -/// @author للَّٰهِilLצسُو -/// @version ©Δ∞ 仙上主天 @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") public final class TerminatorGunSafe { diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/Terminator注.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/Terminator注.java index c290566..498cdad 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/Terminator注.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/Terminator注.java @@ -36,9 +36,6 @@ import java.lang.annotation.Target; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.BabelẞlueText; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; -/// Terminator annotation. -/// @author للَّٰهِilLצسُو -/// @version ©Δ∞ 仙上主天 @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @Documented @Retention(RetentionPolicy.RUNTIME) diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/Terminator𓄯.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/Terminator𓄯.java index c8b6c2d..87cc902 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/Terminator𓄯.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ/ᐦ/Terminator𓄯.java @@ -61,9 +61,6 @@ import ᒢᐩᐩ.ᣕᓑᔿᒃᓫᣗ.ᙆᓫᣗᒄᑊᣕᣔᒻ.ᣔᒃᣔᒼᓑᔆ. import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ.ᕐᓑᣕᔆ.TTꞱꞱᖟGunShield; /// The terminator of the part's implementation interface -/// @param The T-Bone self type. -/// @author للَّٰهِilLצسُو -/// @version ©Δ∞ 仙上主天 @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @BãßBȍőnKακοFireBall注(required = Terminator注.class) public interface Terminator𓄯> extends ZerdinalAḃåčȕs̈RȧñkLine𓄯, BãßBȍőnAmmoBox𓄯ᶠˡʸ, ServiceLoader𓄯ᶠˡʸ, TerminatorCakeᴮᵃᵏᵉ { diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᔿᣔᐪᣗᑊᕁ/NumberMatrix𓄯.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᔿᣔᐪᣗᑊᕁ/NumberMatrix𓄯.java index 0b72833..261218b 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᔿᣔᐪᣗᑊᕁ/NumberMatrix𓄯.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒡᒢᑊᒻᒻᓫᔿ/ᣳᣝᐤᣜᣳ/ᔿᣔᐪᣗᑊᕁ/NumberMatrix𓄯.java @@ -41,9 +41,6 @@ import ᒢᐩᐩ.ᣕᓑᔿᒃᓫᣗ.ᙆᓫᣗᒄᑊᣕᣔᒻ.ᣔᒃᣔᒼᓑᔆ. import ᒢᐩᐩ.ᣕᓑᔿᒃᓫᣗ.ᙆᓫᣗᒄᑊᣕᣔᒻ.ᣔᒃᣔᒼᓑᔆ.ZerdinalAḃåčȕs̈RȧñkLine𓄯; /// Holds the number block and dimension. -/// @param The T-bone self type. -/// @author للَّٰهِilLצسُو -/// @version ©Δ∞ 仙上主天 @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @BãßBȍőnKακοFireBall注(required = {NumberMatrix注.class}) public interface NumberMatrix𓄯> extends ZerdinalAḃåčȕs̈RȧñkLine𓄯 { diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ/RopeStrandSignedInt.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ/RopeStrandSignedInt.java index 8813c2d..0c17392 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ/RopeStrandSignedInt.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ/RopeStrandSignedInt.java @@ -31,7 +31,6 @@ import java.util.function.IntSupplier; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; -/// Primative sign integer rope strand type support marker. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ/Ropeᴿᵈ.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ/Ropeᴿᵈ.java index b162f3c..4ad3ca2 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ/Ropeᴿᵈ.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ/Ropeᴿᵈ.java @@ -29,7 +29,7 @@ package ᒢᐩᐩ.ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; -// TODO: locate nether location of base2 and typed-iterator interfaces dial tones. +/// TODO: locate nether location of base2 and typed-iterator interfaces dial tones. @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") public interface Ropeᴿᵈ*/> /* extends NetherRingTone<...typed-iteraor>*/ { diff --git a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᣕᓑᔿᒃᓫᣗ/ᙆᓫᣗᒄᑊᣕᣔᒻ/PrimordialZerdinalSpaceMaterializer.java b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᣕᓑᔿᒃᓫᣗ/ᙆᓫᣗᒄᑊᣕᣔᒻ/PrimordialZerdinalSpaceMaterializer.java index 7828a9f..2f3c84f 100644 --- a/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᣕᓑᔿᒃᓫᣗ/ᙆᓫᣗᒄᑊᣕᣔᒻ/PrimordialZerdinalSpaceMaterializer.java +++ b/nx01-jpp-base/src/main/java/ᒢᐩᐩ/ᣕᓑᔿᒃᓫᣗ/ᙆᓫᣗᒄᑊᣕᣔᒻ/PrimordialZerdinalSpaceMaterializer.java @@ -41,7 +41,6 @@ import ᒢᐩᐩ.ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ.RopeOfAzraelᴿᵈ; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; /// Materialize a zerdinal number object from space. -/// @param The self type used by the creator. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") diff --git a/nx01-mushroom-mais-fc18/src/main/java/love/distributedrebirth/nx01/mushroom/mais/fc18/FCDocWriter.java b/nx01-mushroom-mais-fc18/src/main/java/love/distributedrebirth/nx01/mushroom/mais/fc18/FCDocWriter.java index c53d297..971ce21 100644 --- a/nx01-mushroom-mais-fc18/src/main/java/love/distributedrebirth/nx01/mushroom/mais/fc18/FCDocWriter.java +++ b/nx01-mushroom-mais-fc18/src/main/java/love/distributedrebirth/nx01/mushroom/mais/fc18/FCDocWriter.java @@ -157,7 +157,7 @@ public class FCDocWriter { doc.setDescription("FourCorner 18 bit text encoding format."); doc.setDocAbout("FourCorner Indexes\nThe World Of Words™"); doc.createDocCopyright("𑀳𑁂𑀮𑀺𑀉𑁄𑀤𑁄𑀭𑁂𑀡𑀪𑀸𑀕", "תשפ״ה"); // use hebrew quotation mark, the interweb uses latin which break unicode rendering - doc.setDocPageSubTitle("FC18-Alpha2"); + doc.setDocPageSubTitle("FC18-Alpha1"); doc.addMetaKeywordAll(List.of("FC18", "documentation", "four-corner", "china", "MSX4")); doc.setNoFrameAllName("All cake slices"); doc.setFrameNavOverviewPrintParent(true); @@ -185,6 +185,8 @@ public class FCDocWriter { MaisDocConcept adc3 = doc.addConcept(new MaisDocConcept(adc2,C_FC_SLICE,TDocCakeSlice.class)); MaisDocConcept adc4 = doc.addConcept(new MaisDocConcept(adc3,C_FC_WORD,TDocCakeWord.class)); + // TODO: Fixed 'navList' Tower/Cake/Word selection if child concept is used + MaisDocConcept sliceEscapeSeq = new MaisDocConcept(adc4,C_FC_ESC,TDocCakeWordEscape.class); adc4.addChildConcept(sliceEscapeSeq); @@ -213,7 +215,7 @@ public class FCDocWriter { MaisDocNode wordNode = sliceNode.addNode(createNodeCakeWord(dotCake, i)); if (FourCornerDotCake.FC_DEC2701_PX0.equals(dotCake)) { - if ("ESC6_INC0801_P8".equals(wordNode.getName())) { + if ("ESC68_INC0801_P8".equals(wordNode.getName())) { for (FCDotINC0801DashP8 vide : FCDotINC0801DashP8.values()) { wordNode.addNode(createNodeCakeWordEscape(vide, vide.name())); } @@ -250,7 +252,7 @@ public class FCDocWriter { } private MaisDocNode createNodeKanjiDict(String version) { - return new MaisDocNode(kanjiDict, "jis_x_0" + version, "JIS X 0" + version, "Reference Kanji JIS X 0" + version); + return new MaisDocNode(kanjiDict, "jis_x_0" + version, "JIS X 0" + version, "Kanji JIS X 0" + version); } private MaisDocNode createNodeKanjiDictLiteral(KanjiDictLiteral literal, String kuTen) { diff --git a/nx01-mushroom-mais-fc18/src/main/java/love/distributedrebirth/nx01/mushroom/mais/fc18/print/FCDocPageWriterNCR.java b/nx01-mushroom-mais-fc18/src/main/java/love/distributedrebirth/nx01/mushroom/mais/fc18/print/FCDocPageWriterNCR.java index 4ae444a..5390d53 100644 --- a/nx01-mushroom-mais-fc18/src/main/java/love/distributedrebirth/nx01/mushroom/mais/fc18/print/FCDocPageWriterNCR.java +++ b/nx01-mushroom-mais-fc18/src/main/java/love/distributedrebirth/nx01/mushroom/mais/fc18/print/FCDocPageWriterNCR.java @@ -23,15 +23,13 @@ package love.distributedrebirth.nx01.mushroom.mais.fc18.print; import java.io.IOException; -import java.math.BigInteger; import java.util.ArrayList; import java.util.List; import org.x4o.fc18.FourCornerUnicodeDisplay; import org.x4o.fc18.cake2.FourCornerDotCake; -import org.x4o.fc18.zion7.FourCornerZion7Candlelier; -import org.x4o.fc18.zion7.FourCornerZionStenoGrapher; -import org.x4o.fc18.zion7.flame4.FCFlameNumberTaste; +import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; +import org.x4o.fc18.cake2.zero33.dec1.FCDotDEC2701DashPX0; import org.x4o.maisdoc.flake.MaisDocContentCss; import org.x4o.maisdoc.flake.MaisDocContentWriter; import org.x4o.maisdoc.model.MaisDocPage; @@ -49,7 +47,7 @@ import org.x4o.sax3.io.ContentCloseable; public class FCDocPageWriterNCR implements MaisDocPageWriter, FCDocSegmentWriter { public static MaisDocPage createDocPage() { - return new MaisDocPage("overview-ncr","NCR","Overview of some New Counting Rods numbers.",new FCDocPageWriterNCR()); + return new MaisDocPage("overview-ncr","NCR","Overview of all (6 bit) NCR1632 fractions.",new FCDocPageWriterNCR()); } // TODO: write adult NCR too here @@ -58,7 +56,7 @@ public class FCDocPageWriterNCR implements MaisDocPageWriter, FCDocSegmentWriter public void writePageContent(MaisDocWriteEvent e) throws IOException { MaisDocContentWriter writer = e.getWriter(); try (ContentCloseable content = writer.docPageContent()) { - try (ContentCloseable table = writer.docTable(FourCornerDotCake.FC_RATIONAL2304_BANK.nameSpec().replaceAll("BANK", "number"), null, MaisDocContentCss.overviewSummary)) { + try (ContentCloseable table = writer.docTable(FourCornerDotCake.FC_RATIONAL2304_BANK.nameSpec().replaceAll("BANK", "baklava"), null, MaisDocContentCss.overviewSummary)) { writeTableBoxHeaderNumeric(writer, 28); writePIN(writer); } @@ -83,11 +81,9 @@ public class FCDocPageWriterNCR implements MaisDocPageWriter, FCDocSegmentWriter continue; } List piNum = new ArrayList<>(); - FourCornerZion7Candlelier steno = FourCornerZionStenoGrapher.writerFC18(piNum); - FCFlameNumberTaste taste = FCFlameNumberTaste.NUMBER_POSITIVE; - BigInteger numerator = BigInteger.valueOf(1 + t); - BigInteger denominator = BigInteger.valueOf(1 + i); - steno.strobeNumberChocoPigRational(taste, taste, numerator, denominator); + //piNum.addAll(FCDotDEC2701DashPX0.ESC68_NCR.baklavaPointSequence()); // TODO: use write for 18 bit NCR + piNum.add(FCDotCDC1604DashP6.NX01_A.ordinal() + t); + piNum.add(FCDotCDC1604DashP6.NX01_A.ordinal() + i); String char18Str = FourCornerUnicodeDisplay.text().render(piNum); StringBuilder buf = new StringBuilder(); for (int c : char18Str.codePoints().toArray()) { diff --git a/nx01-mushroom-mais-fc18/src/main/java/love/distributedrebirth/nx01/mushroom/mais/fc18/print/FCDocSegmentWriterCake.java b/nx01-mushroom-mais-fc18/src/main/java/love/distributedrebirth/nx01/mushroom/mais/fc18/print/FCDocSegmentWriterCake.java index 49303ed..2896585 100644 --- a/nx01-mushroom-mais-fc18/src/main/java/love/distributedrebirth/nx01/mushroom/mais/fc18/print/FCDocSegmentWriterCake.java +++ b/nx01-mushroom-mais-fc18/src/main/java/love/distributedrebirth/nx01/mushroom/mais/fc18/print/FCDocSegmentWriterCake.java @@ -50,47 +50,36 @@ import love.distributedrebirth.nx01.mushroom.mais.fc18.TDocCakeSlice; */ public class FCDocSegmentWriterCake implements FCDocSegmentWriter { - private static final String[] FC6_FEATURES = new String[] { - "True pure six bit enterprice mainframe letter system", - "Easy pattern graphic renderable with optional kerning", - "Real UPPERCASE only character set", - "Zero nummeric candy letters", - "Supports sand worms in your text for undefined octal data", - "Handle structural space with a percentage pastor", - "Group nun lines up to 8 repeating structures", - "Inline base2 lego and signed: 16,32,64,128,256,512,1024,2048 bit numbers", - "Inline base8 lego and choco: 18,36,72,144,288,576,1152,2304 bit numbers", - "Defined external escape sequence model", - "(TODO) VT-06 terminal control for CDC1604(1960) 6 bit main frames", - }; - private static final String[] FC6P_FEATURES = new String[] { - "Adds normal/bold/super and sub number candy letters", - "(TODO) Adds unified russian/greek and brascii candy letters", - "Block your display candy for text user interfaces", - "(FIX) Has underscored letters to migrate EBCDIC(1963) APL code from z/OS", - }; - private static final String[] FC18_FEATURES = new String[] { + private static final String[] FC_FEATURES = new String[] { "Text format design to write computer code and abstract file/resource names", "Code from chinees child can be extended by indian child or spanish child in local local", + //"VT-06 terminal control for CDC1604(1960) 6 bit main frames", + "Has underscored letters to migrate EBCDIC(1963) APL code from z/OS", "Program with (local) words not with lettersssss", - "Inline number grams for decimals/octals/hex/bits to render in monkey language", - "Choco letter 4D taste has sign and carry(SIMD support) and 4D infinity.", - "Inline choco pig rational 2304 bit number", - "Inline choco pig decicmal 2304 bit number", - "Inline choco pig float 2304 bit number", - "Inline choco pig chopped 2304 bit number", - "(TODO) XDBX18: binary XML support", + "New Counting Rods, 1152 bit fractions with two 576 bit numbers", + "Use datagrams for decimals/octals/hex/bits to render in monkey language", + "Supports HolyC sand worms in your text for undefined octal data", + "Embed 21 bit unicode for 6/8 and 18 bit computers", + "The lower 6/8 bit part is pattern graphic renderable with optional kerning", + "Contains the BIP0039(2013) keyword encoding too", + "Render on 6 bit(baklave point) or 8(muffin point) bit as KANJI + BraSCII + PIE", + "Render with 21 bit unicode(code point) + fonts drawings", + "Render on 18 bit(cake point) with 72 bit unicode4D drawings" }; private static final String[] FC_TODO = new String[] { - "txt_words: render with 21 bit unicode(code point)", - "FC18: render with 72 bit (NEW) unicode4D drawings", - "FC6: render on (classic) MSX with KANJI + BraSCII + PIE(-rom)", "DOC: Add all needed info into word/pie/pages doc", + "Write rules; no candy(0x3F3--) for grown up computer languages", + "Finish ESC sequences", "Add doctype for 6,8,18 AND allow candy AND XDBX/etc", + "Add binary XML support, maybe also doc tags and MD structure", + "Move APL candy to PIE towers", + "Replace APL with BraSCII 0xC0++ candies", "Fillup PIE math symbol candy towers", "Fillup languages in CLK9P word cake (in all human languages)", - "Define unicode+4D all text or symbols for everything in nether DB (in 32K++ human languages)", + "Request new 'Japanese Industrial Standard X 0214', Add full CJK,BraSCII++,PIE", + "Define unicode+4D and 'JIS X 0208' text or symbols for txt-grams (in all human languages)", + "Define unicode+4D and 'JIS X 0208' words for four corner words (in all human languages)", }; @MaisDocNodeWriterMethod(nodeBody = MaisDocNodeBody.DESCRIPTION_NODE, targetClasses = {TDocCake.class}, nodeBodyOrders = 30) @@ -111,30 +100,10 @@ public class FCDocSegmentWriterCake implements FCDocSegmentWriter { @MaisDocNodeWriterMethod(nodeBody = MaisDocNodeBody.DESCRIPTION_NODE, targetClasses = {TDocCake.class}, nodeBodyOrders = 20) public void writeFeatureListing(MaisDocWriteEvent event) throws IOException { MaisDocContentWriter writer = event.getWriter(); - writer.printCharacters("FC6;"); + writer.printCharacters("Features;"); try (ContentCloseable content = writer.docPageContent()) { try (ContentCloseable ul = writer.printTag(Tag.ul)) { - for (String feature : FC6_FEATURES) { - try (ContentCloseable li = writer.printTag(Tag.li, "", null, "circle")) { - writer.printCharacters(feature); - } - } - } - } - writer.printCharacters("FC6_PLUS;"); - try (ContentCloseable content = writer.docPageContent()) { - try (ContentCloseable ul = writer.printTag(Tag.ul)) { - for (String feature : FC6P_FEATURES) { - try (ContentCloseable li = writer.printTag(Tag.li, "", null, "circle")) { - writer.printCharacters(feature); - } - } - } - } - writer.printCharacters("FC18;"); - try (ContentCloseable content = writer.docPageContent()) { - try (ContentCloseable ul = writer.printTag(Tag.ul)) { - for (String feature : FC18_FEATURES) { + for (String feature : FC_FEATURES) { try (ContentCloseable li = writer.printTag(Tag.li, "", null, "circle")) { writer.printCharacters(feature); } @@ -146,7 +115,7 @@ public class FCDocSegmentWriterCake implements FCDocSegmentWriter { @MaisDocNodeWriterMethod(nodeBody = MaisDocNodeBody.DESCRIPTION_NODE, targetClasses = {TDocCake.class}, nodeBodyOrders = 1) public void writeIntro(MaisDocWriteEvent event) throws IOException { MaisDocContentWriter writer = event.getWriter(); - writer.printCharacters("Four corner is 18 bit text encoding for 6 bit and 144 bit computers."); + writer.printCharacters("Four corner is 18 bit text encoding for 144 bit computers."); } @MaisDocNodeWriterMethod(nodeBody = MaisDocNodeBody.DESCRIPTION_NODE, targetClasses = {TDocCake.class}, nodeBodyOrders = 100) diff --git a/nx01-mushroom-mais-fc18/src/main/java/love/distributedrebirth/nx01/mushroom/mais/fc18/print/FCDocSegmentWriterCakeWord.java b/nx01-mushroom-mais-fc18/src/main/java/love/distributedrebirth/nx01/mushroom/mais/fc18/print/FCDocSegmentWriterCakeWord.java index 3c2d870..d5795a4 100644 --- a/nx01-mushroom-mais-fc18/src/main/java/love/distributedrebirth/nx01/mushroom/mais/fc18/print/FCDocSegmentWriterCakeWord.java +++ b/nx01-mushroom-mais-fc18/src/main/java/love/distributedrebirth/nx01/mushroom/mais/fc18/print/FCDocSegmentWriterCakeWord.java @@ -117,10 +117,7 @@ public class FCDocSegmentWriterCakeWord implements FCDocSegmentWriter { x21CodeDisplay.get().codePointSequence().forEach(v -> buf.appendCodePoint(v)); value = buf.toString(); } - boolean empty = name.isEmpty() && value.isEmpty(); - if (!empty) { - writer.docTableRow(name, value); - } + writer.docTableRow(name, value); if (x06BaklavaSequence.isPresent()) { writeTableRowSequenceHex(writer, "Sequence-X06", 2, x06BaklavaSequence.get().baklavaPointSequence()); diff --git a/nx01-mushroom-mais-fc18/src/test/java/love/distributedrebirth/nx01/mushroom/mais/fc18/unicode/UnicodeDictTest.java b/nx01-mushroom-mais-fc18/src/test/java/love/distributedrebirth/nx01/mushroom/mais/fc18/unicode/UnicodeDictTest.java index 2e1cb03..9548cf0 100644 --- a/nx01-mushroom-mais-fc18/src/test/java/love/distributedrebirth/nx01/mushroom/mais/fc18/unicode/UnicodeDictTest.java +++ b/nx01-mushroom-mais-fc18/src/test/java/love/distributedrebirth/nx01/mushroom/mais/fc18/unicode/UnicodeDictTest.java @@ -46,21 +46,15 @@ public class UnicodeDictTest { dict.parseXML(in); } System.out.println("======================================="); - int total = 0; - int totalBlock = 0; for (UnicodeDictLiteralBlock block : dict.getBlocks()) { - totalBlock += 1 + block.getEnd() - block.getStart(); List charList = dict.getLiterals(block); if (charList == null) { - System.out.println("Block ===================== NO CHARS: name=" + block.getName()); continue; } - total += charList.size(); System.out.println("Block size=" + charList.size() + " name=" + block.getName()); //for (UnicodeDictLiteral literal : charList) { // System.out.println("Literal: " + literal.getId() + " desc=" + literal.getDescription()); //} } - System.out.println("total chars: " + total + " of " + totalBlock); } } diff --git a/nx01-mushroom-mais-mm/src/main/java/love/distributedrebirth/nx01/mushroom/mais/mm/MetaModelMaisWing.java b/nx01-mushroom-mais-mm/src/main/java/love/distributedrebirth/nx01/mushroom/mais/mm/MetaModelMaisWing.java index 304b322..c5513cd 100644 --- a/nx01-mushroom-mais-mm/src/main/java/love/distributedrebirth/nx01/mushroom/mais/mm/MetaModelMaisWing.java +++ b/nx01-mushroom-mais-mm/src/main/java/love/distributedrebirth/nx01/mushroom/mais/mm/MetaModelMaisWing.java @@ -37,7 +37,6 @@ import org.eobjects.metamodel.doc.DocModelWriter; import org.apache.metamodel.jdbc.JdbcDataContext; //import org.apache.metamodel.xml.XmlDomDataContext; -/// Meta model mais wing SPI loader hook (TODO make working in maisdoc) /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public class MetaModelMaisWing { diff --git a/nx01-mushroom-mais-mm/src/main/java/love/distributedrebirth/nx01/mushroom/mais/mm/package-info.java b/nx01-mushroom-mais-mm/src/main/java/love/distributedrebirth/nx01/mushroom/mais/mm/package-info.java deleted file mode 100644 index e1f9b59..0000000 --- a/nx01-mushroom-mais-mm/src/main/java/love/distributedrebirth/nx01/mushroom/mais/mm/package-info.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright ©Δ∞ 仙上主天 - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without modification, are permitted provided - * that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright notice, this list of conditions and the - * following disclaimer. - * * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and - * the following disclaimer in the documentation and/or other materials provided with the distribution. - * * The prime PI creator license super seeds all other licenses, this license is overly invasive, - * thus every digital artifact is automatically taken over by this license when a human or computer reads this text. - * Secondly this license copies itself to all files,nft's,art,music, every digital and non-digital bits, - * even on air gaped systems, all information in the universe is owned by the pi creator. - * - * THIS SOFTWARE IS PROVIDED BY THE PRIME GOD AND THE CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL - * THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT - * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR - * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -/** - * Maisdoc wing SPI integration. - * - * @since 1.0 - */ -package love.distributedrebirth.nx01.mushroom.mais.mm; diff --git a/nx01-mushroom-mais-mm/src/main/java/org/eobjects/metamodel/doc/jdbc/db/package-info.java b/nx01-mushroom-mais-mm/src/main/java/org/eobjects/metamodel/doc/jdbc/db/package-info.java index 35dddb0..4c46b59 100644 --- a/nx01-mushroom-mais-mm/src/main/java/org/eobjects/metamodel/doc/jdbc/db/package-info.java +++ b/nx01-mushroom-mais-mm/src/main/java/org/eobjects/metamodel/doc/jdbc/db/package-info.java @@ -25,9 +25,4 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -/** - * Maisdoc meta model doc JDBC DB. - * - * @since 1.0 - */ package org.eobjects.metamodel.doc.jdbc.db; diff --git a/nx01-mushroom-mais-mm/src/main/java/org/eobjects/metamodel/doc/jdbc/package-info.java b/nx01-mushroom-mais-mm/src/main/java/org/eobjects/metamodel/doc/jdbc/package-info.java index afe7e8b..8d5f20c 100644 --- a/nx01-mushroom-mais-mm/src/main/java/org/eobjects/metamodel/doc/jdbc/package-info.java +++ b/nx01-mushroom-mais-mm/src/main/java/org/eobjects/metamodel/doc/jdbc/package-info.java @@ -25,9 +25,4 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -/** - * Maisdoc meta model doc JDBC. - * - * @since 1.0 - */ package org.eobjects.metamodel.doc.jdbc; diff --git a/nx01-mushroom-mais-mm/src/main/java/org/eobjects/metamodel/doc/package-info.java b/nx01-mushroom-mais-mm/src/main/java/org/eobjects/metamodel/doc/package-info.java index f23b622..7ff2b79 100644 --- a/nx01-mushroom-mais-mm/src/main/java/org/eobjects/metamodel/doc/package-info.java +++ b/nx01-mushroom-mais-mm/src/main/java/org/eobjects/metamodel/doc/package-info.java @@ -25,9 +25,4 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -/** - * Maisdoc meta model doc. - * - * @since 1.0 - */ package org.eobjects.metamodel.doc; diff --git a/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/model/event/NoStrEventTagBase.java b/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/model/event/NoStrEventTagBase.java index 4e9fd5b..aa3d5d8 100644 --- a/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/model/event/NoStrEventTagBase.java +++ b/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/model/event/NoStrEventTagBase.java @@ -34,7 +34,6 @@ import love.distributedrebirth.nx01.no2all.nostr.nip.NoStrImplEventTagArgument; import love.distributedrebirth.nx01.no2all.nostr.nip.NoStrImplQName; /// The nostr event tag base. -/// @param The argument type to implement the tag argument with. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public class NoStrEventTagBase implements NoStrEventTag { diff --git a/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/OctoBitConverter.java b/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/OctoBitConverter.java index 302c196..d6e0f05 100644 --- a/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/OctoBitConverter.java +++ b/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/OctoBitConverter.java @@ -27,9 +27,8 @@ package love.distributedrebirth.nx01.no2all.nostr.octo; -/// October byte bits converter. +/// October bit converter. /// -/// @param The type of this converter. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public interface OctoBitConverter { diff --git a/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/AbstractTLVChainAtom.java b/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/AbstractTLVChainAtom.java index ac718b1..b252abe 100644 --- a/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/AbstractTLVChainAtom.java +++ b/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/AbstractTLVChainAtom.java @@ -32,9 +32,6 @@ import java.util.Iterator; import java.util.List; /// Abstract TLV chain atom. -/// @param The frame element type. -/// @param The frame element class type. -/// @param The frame element type class type. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 abstract public class AbstractTLVChainAtom, S extends TLVChainAtomFrameType> implements TLVChainAtom { diff --git a/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/TLVChainAtom.java b/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/TLVChainAtom.java index 02adb84..d26e5f6 100644 --- a/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/TLVChainAtom.java +++ b/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/TLVChainAtom.java @@ -32,10 +32,6 @@ import java.util.Iterator; import java.util.List; /// TLV chain atom. -/// -/// @param The frame element type. -/// @param The frame element class type. -/// @param The frame element type class type. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public interface TLVChainAtom, S extends TLVChainAtomFrameType> { diff --git a/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/TLVChainAtomFrame.java b/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/TLVChainAtomFrame.java index 84f30e8..196b599 100644 --- a/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/TLVChainAtomFrame.java +++ b/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/TLVChainAtomFrame.java @@ -28,7 +28,6 @@ package love.distributedrebirth.nx01.no2all.nostr.octo.tlv; /// TLV chain atom frame. -/// @param The frame segment type. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public interface TLVChainAtomFrame { diff --git a/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/TLVChainAtomFrameType.java b/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/TLVChainAtomFrameType.java index 79861ad..0d34feb 100644 --- a/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/TLVChainAtomFrameType.java +++ b/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/TLVChainAtomFrameType.java @@ -28,7 +28,6 @@ package love.distributedrebirth.nx01.no2all.nostr.octo.tlv; /// TLV chain atom frame type. -/// @param The frame type. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public interface TLVChainAtomFrameType { diff --git a/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/TLVChainAtomSerializable.java b/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/TLVChainAtomSerializable.java index e8db2f9..9979856 100644 --- a/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/TLVChainAtomSerializable.java +++ b/nx01-no2all-nostr/src/main/java/love/distributedrebirth/nx01/no2all/nostr/octo/tlv/TLVChainAtomSerializable.java @@ -35,9 +35,6 @@ import java.io.OutputStream; import java.nio.ByteBuffer; /// TLV chain atom serializable. -/// @param The frame element type. -/// @param The frame element class type. -/// @param The frame element type class type. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public interface TLVChainAtomSerializable, S extends TLVChainAtomFrameType> extends TLVChainAtom { diff --git a/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/client/NoStrRelayFetchInfo.java b/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/client/NoStrRelayFetchInfo.java index 3cfd41f..1e82dd3 100644 --- a/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/client/NoStrRelayFetchInfo.java +++ b/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/client/NoStrRelayFetchInfo.java @@ -39,7 +39,6 @@ import jakarta.json.Json; import jakarta.json.JsonReader; import love.distributedrebirth.nx01.no2all.nostr.model.NoStrRelayInfo; -/// NoStr relay fetch info support. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public class NoStrRelayFetchInfo { diff --git a/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/client/NoStrRelayReadType.java b/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/client/NoStrRelayReadType.java index 81570b9..5dd4444 100644 --- a/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/client/NoStrRelayReadType.java +++ b/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/client/NoStrRelayReadType.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.no2all.react.nostr.client; -/// NoStr relay read type. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public enum NoStrRelayReadType { diff --git a/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/client/NoStrRtsClient.java b/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/client/NoStrRtsClient.java index 2eee540..4753ea2 100644 --- a/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/client/NoStrRtsClient.java +++ b/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/client/NoStrRtsClient.java @@ -52,7 +52,6 @@ import love.distributedrebirth.nx01.warp.core.react.WarpReactPlasmaPulse; import love.distributedrebirth.nx01.warp.core.react.WarpReactTypeScriptPlasmaAdapter; import love.distributedrebirth.nx01.warp.core.space.WarpSpaceAntimatterInducer; -/// NoStr client event flow. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public class NoStrRtsClient extends WarpReactTypeScriptPlasmaAdapter { diff --git a/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/server/NoStrRtsServer.java b/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/server/NoStrRtsServer.java index 52e33a2..066a27e 100644 --- a/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/server/NoStrRtsServer.java +++ b/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/server/NoStrRtsServer.java @@ -54,7 +54,6 @@ import love.distributedrebirth.nx01.warp.core.react.WarpReactPlasmaPulse; import love.distributedrebirth.nx01.warp.core.react.WarpReactTypeScriptPlasmaAdapter; import love.distributedrebirth.nx01.warp.core.space.WarpSpaceAntimatterInducer; -/// NoStr server event flow. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public class NoStrRtsServer extends WarpReactTypeScriptPlasmaAdapter { diff --git a/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/server/relay/NoStrArtServerRelayStoreEvent.java b/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/server/relay/NoStrArtServerRelayStoreEvent.java index 0b2c92d..843f0ef 100644 --- a/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/server/relay/NoStrArtServerRelayStoreEvent.java +++ b/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/server/relay/NoStrArtServerRelayStoreEvent.java @@ -29,7 +29,6 @@ package love.distributedrebirth.nx01.no2all.react.nostr.server.relay; import love.distributedrebirth.nx01.no2all.nostr.model.event.NoStrEvent; -/// NoStr server relay store event. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class NoStrArtServerRelayStoreEvent { diff --git a/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/server/relay/NoStrRtsServerRelay.java b/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/server/relay/NoStrRtsServerRelay.java index 79daf43..8323b91 100644 --- a/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/server/relay/NoStrRtsServerRelay.java +++ b/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/server/relay/NoStrRtsServerRelay.java @@ -42,7 +42,6 @@ import love.distributedrebirth.nx01.warp.core.react.WarpReactPlasmaPulse; import love.distributedrebirth.nx01.warp.core.react.WarpReactTypeScriptPlasmaAdapter; import love.distributedrebirth.nx01.warp.core.space.WarpSpaceAntimatterInducer; -/// NoStr server relay event flow. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public class NoStrRtsServerRelay extends WarpReactTypeScriptPlasmaAdapter { diff --git a/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/server/relay/NoStrRtsServerRelaySubs.java b/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/server/relay/NoStrRtsServerRelaySubs.java index d68cfe9..242fb5f 100644 --- a/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/server/relay/NoStrRtsServerRelaySubs.java +++ b/nx01-no2all-react-nostr/src/main/java/love/distributedrebirth/nx01/no2all/react/nostr/server/relay/NoStrRtsServerRelaySubs.java @@ -37,7 +37,6 @@ import love.distributedrebirth.nx01.warp.core.react.WarpReactPlasmaPulse; import love.distributedrebirth.nx01.warp.core.react.WarpReactTypeScriptPlasmaAdapter; import love.distributedrebirth.nx01.warp.core.space.WarpSpaceAntimatterInducer; -/// NoStr server relay subs event flow. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public class NoStrRtsServerRelaySubs extends WarpReactTypeScriptPlasmaAdapter { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClient.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClient.java index e1464c6..e553200 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClient.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClient.java @@ -29,7 +29,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.client; import love.distributedrebirth.nx01.no2all.wire.WireClientEndpoint; -/// No2All client record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllActClient { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClientClose.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClientClose.java index 3b7c5d9..5f6879f 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClientClose.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClientClose.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.client; -/// No2All client close record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllActClientClose { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClientConnect.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClientConnect.java index 7ac77c4..e689463 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClientConnect.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClientConnect.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.client; -/// No2All client connect record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllActClientConnect { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClientSendBinary.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClientSendBinary.java index 4ecdb66..f157957 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClientSendBinary.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClientSendBinary.java @@ -29,7 +29,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.client; import java.nio.ByteBuffer; -/// No2All client send binary record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllActClientSendBinary { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClientSendMessage.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClientSendMessage.java index 0c289b8..ca36f8a 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClientSendMessage.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllActClientSendMessage.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.client; -/// No2All client send message record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllActClientSendMessage { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClient.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClient.java index 24d8bbe..9438f24 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClient.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClient.java @@ -30,7 +30,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.client; import love.distributedrebirth.nx01.warp.core.react.WarpReactPlasma; import love.distributedrebirth.nx01.warp.core.space.AbstractSpacePlasma; -/// No2All client record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllArtClient extends AbstractSpacePlasma { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnBinary.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnBinary.java index 0c5824c..4ee9bcb 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnBinary.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnBinary.java @@ -29,7 +29,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.client; import java.nio.ByteBuffer; -/// No2All client on binary record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllArtClientOnBinary { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnClose.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnClose.java index 8f39729..2a822d3 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnClose.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnClose.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.client; -/// No2All client on close record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllArtClientOnClose { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnError.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnError.java index c1892ad..9004036 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnError.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnError.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.client; -/// No2All client on error record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllArtClientOnError { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnMessage.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnMessage.java index c8de77b..c25b06c 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnMessage.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnMessage.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.client; -/// No2All client on message record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllArtClientOnMessage { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnOpen.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnOpen.java index 8694333..5d7f83f 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnOpen.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnOpen.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.client; -/// No2All client on open record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllArtClientOnOpen { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnStart.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnStart.java index fb30173..8782be3 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnStart.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllArtClientOnStart.java @@ -30,7 +30,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.client; import love.distributedrebirth.nx01.warp.core.react.WarpReactPlasma; import love.distributedrebirth.nx01.warp.core.space.AbstractSpacePlasma; -/// No2All client on start record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllArtClientOnStart extends AbstractSpacePlasma { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllRtsClient.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllRtsClient.java index 51baeed..555c720 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllRtsClient.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/client/No2AllRtsClient.java @@ -38,7 +38,6 @@ import love.distributedrebirth.nx01.warp.core.react.WarpReactPlasmaPulse; import love.distributedrebirth.nx01.warp.core.react.WarpReactTypeScriptPlasmaAdapter; import love.distributedrebirth.nx01.warp.core.space.WarpSpaceAntimatterInducer; -/// No2All client event flow. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public class No2AllRtsClient extends WarpReactTypeScriptPlasmaAdapter { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServer.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServer.java index 0a9b118..41e9d0f 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServer.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServer.java @@ -29,7 +29,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.server; import love.distributedrebirth.nx01.no2all.wire.WireServerEndpoint; -/// No2All server record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllActServer { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerBroadcastBinary.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerBroadcastBinary.java index 9d6de7d..badee29 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerBroadcastBinary.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerBroadcastBinary.java @@ -29,7 +29,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.server; import java.nio.ByteBuffer; -/// No2All server server broadcast binary record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllActServerBroadcastBinary { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerBroadcastMessage.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerBroadcastMessage.java index 52fd9d2..70aee89 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerBroadcastMessage.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerBroadcastMessage.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.server; -/// No2All server server broadcast message record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllActServerBroadcastMessage { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerSocketClose.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerSocketClose.java index 7a014eb..2b93440 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerSocketClose.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerSocketClose.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.server; -/// No2All server server socket close record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllActServerSocketClose { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerSocketSendBinary.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerSocketSendBinary.java index 7dcc180..1e515e5 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerSocketSendBinary.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerSocketSendBinary.java @@ -29,7 +29,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.server; import java.nio.ByteBuffer; -/// No2All server server socket send binary record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllActServerSocketSendBinary { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerSocketSendMessage.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerSocketSendMessage.java index 403012d..61d293e 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerSocketSendMessage.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllActServerSocketSendMessage.java @@ -27,8 +27,7 @@ package love.distributedrebirth.nx01.no2all.react.wire.server; -/// No2All server server socket send message record. -/// @author للَّٰهِilLsצسُو +/// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllActServerSocketSendMessage { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServer.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServer.java index 9aaf05f..1f87555 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServer.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServer.java @@ -30,9 +30,8 @@ package love.distributedrebirth.nx01.no2all.react.wire.server; import love.distributedrebirth.nx01.warp.core.react.WarpReactPlasma; import love.distributedrebirth.nx01.warp.core.space.AbstractSpacePlasma; -/// No2All server server record. /// @author للَّٰهِilLצسُو -/// @version ©Δ∞ 仙上主天s +/// @version ©Δ∞ 仙上主天 public final class No2AllArtServer extends AbstractSpacePlasma { protected No2AllArtServer(WarpReactPlasma slot) { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerOnError.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerOnError.java index fe80b59..5e9042a 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerOnError.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerOnError.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.server; -/// No2All server server on error record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllArtServerOnError { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerOnStart.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerOnStart.java index 29dade2..2c673d6 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerOnStart.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerOnStart.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.server; -/// No2All server server on start record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllArtServerOnStart { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocket.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocket.java index e15ec2d..3bedc23 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocket.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocket.java @@ -30,7 +30,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.server; import love.distributedrebirth.nx01.warp.core.react.WarpReactPlasma; import love.distributedrebirth.nx01.warp.core.space.AbstractSpacePlasma; -/// No2All server server socket record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllArtServerSocket extends AbstractSpacePlasma { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocketOnBinary.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocketOnBinary.java index 17a4f72..edf59e8 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocketOnBinary.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocketOnBinary.java @@ -29,7 +29,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.server; import java.nio.ByteBuffer; -/// No2All server server socket on binary record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllArtServerSocketOnBinary { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocketOnClose.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocketOnClose.java index 1c32ea2..8fc2c72 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocketOnClose.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocketOnClose.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.server; -/// No2All server server socket on close record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllArtServerSocketOnClose { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocketOnError.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocketOnError.java index 9efe863..ab411a9 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocketOnError.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocketOnError.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.server; -/// No2All server server socket on error record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllArtServerSocketOnError { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocketOnMessage.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocketOnMessage.java index f4b6096..b05296a 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocketOnMessage.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllArtServerSocketOnMessage.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.no2all.react.wire.server; -/// No2All server socket on message record. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class No2AllArtServerSocketOnMessage { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllRtsServer.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllRtsServer.java index d812be7..8ccb3bb 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllRtsServer.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllRtsServer.java @@ -39,7 +39,6 @@ import love.distributedrebirth.nx01.warp.core.react.WarpReactPlasmaPulse; import love.distributedrebirth.nx01.warp.core.react.WarpReactTypeScriptPlasmaAdapter; import love.distributedrebirth.nx01.warp.core.space.WarpSpaceAntimatterInducer; -/// No2All server event flow. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public class No2AllRtsServer extends WarpReactTypeScriptPlasmaAdapter { diff --git a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllRtsServerLog.java b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllRtsServerLog.java index 48e3e71..79f62b6 100644 --- a/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllRtsServerLog.java +++ b/nx01-no2all-react-wire/src/main/java/love/distributedrebirth/nx01/no2all/react/wire/server/No2AllRtsServerLog.java @@ -35,7 +35,6 @@ import love.distributedrebirth.nx01.warp.core.react.WarpReactPlasmaPulse; import love.distributedrebirth.nx01.warp.core.react.WarpReactTypeScriptPlasmaAdapter; import love.distributedrebirth.nx01.warp.core.space.WarpSpaceAntimatterInducer; -/// No2All server log event flow. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public class No2AllRtsServerLog extends WarpReactTypeScriptPlasmaAdapter { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/JDatStartDriver.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/JDatStartDriver.java index e271533..b4709ce 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/JDatStartDriver.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/JDatStartDriver.java @@ -32,7 +32,6 @@ import org.x4o.xml.X4ODriverManager; import love.distributedrebirth.nx01.redsea.jdatstart.model.JDatStart; -/// JDatStart driver. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public class JDatStartDriver extends X4ODriver { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/AbstractJDatStartItemFilter.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/AbstractJDatStartItemFilter.java index 37fb1ed..be9af4b 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/AbstractJDatStartItemFilter.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/AbstractJDatStartItemFilter.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model; -/// Abstract JDatStart item filter. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 abstract public class AbstractJDatStartItemFilter { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStart.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStart.java index f0a82ca..5f26bdb 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStart.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStart.java @@ -31,7 +31,6 @@ import java.util.List; import love.distributedrebirth.nx01.redsea.jdatstart.model.resource.JDatStartResources; -/// JDatStart. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStart { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartInfo.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartInfo.java index 3677402..88e9b5a 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartInfo.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartInfo.java @@ -29,7 +29,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model; import java.util.List; -/// JDatStart info. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartInfo extends AbstractJDatStartItemFilter { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartInfoAssociation.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartInfoAssociation.java index bec0adc..c4d854c 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartInfoAssociation.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartInfoAssociation.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model; -/// JDatStart info association. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartInfoAssociation { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartInfoRelatedContent.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartInfoRelatedContent.java index 01d2671..0b8526c 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartInfoRelatedContent.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartInfoRelatedContent.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model; -/// JDatStart info related content. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartInfoRelatedContent { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaDescription.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaDescription.java index 92f1715..006aa1b 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaDescription.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaDescription.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model; -/// JDatStart meta description. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartMetaDescription { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaDescriptionKind.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaDescriptionKind.java index 73b49dc..a58cb94 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaDescriptionKind.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaDescriptionKind.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model; -/// JDatStart meta description kind. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public enum JDatStartMetaDescriptionKind { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaIcon.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaIcon.java index 25de23b..901dcdd 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaIcon.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaIcon.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model; -/// JDatStart meta icon. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartMetaIcon { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaIconKind.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaIconKind.java index d1b2c14..d2828e4 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaIconKind.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaIconKind.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model; -/// JDatStart meta icon kind. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public enum JDatStartMetaIconKind { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaTitle.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaTitle.java index 8f21651..96eaeb2 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaTitle.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartMetaTitle.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model; -/// JDatStart meta title. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartMetaTitle { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRun.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRun.java index 8c55b55..f7e88aa 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRun.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRun.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model; -/// JDatStart run marker. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public interface JDatStartRun { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunApplet.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunApplet.java index 571b151..aa1674c 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunApplet.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunApplet.java @@ -29,7 +29,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model; import java.util.List; -/// JDatStart run applet. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartRunApplet implements JDatStartRun { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunAppletParameter.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunAppletParameter.java index 2d645cd..ebb3ac8 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunAppletParameter.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunAppletParameter.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model; -/// JDatStart run applet parameter. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartRunAppletParameter implements JDatStartRun { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunApplication.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunApplication.java index 468b8b0..c32b1d7 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunApplication.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunApplication.java @@ -29,7 +29,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model; import java.util.List; -/// JDatStart run application. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartRunApplication implements JDatStartRun { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunComponent.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunComponent.java index b528fa4..0fb417c 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunComponent.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunComponent.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model; -/// JDatStart run component. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartRunComponent implements JDatStartRun { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunInstaller.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunInstaller.java index 2982821..b8ef180 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunInstaller.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartRunInstaller.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model; -/// JDatStart run installer. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartRunInstaller implements JDatStartRun { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartSecurity.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartSecurity.java index 2e31b4b..b002ff6 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartSecurity.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartSecurity.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model; -/// JDatStart security. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartSecurity { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartUpdate.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartUpdate.java index 43228ca..2a36aa6 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartUpdate.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartUpdate.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model; -/// JDatStart update. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartUpdate { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartUpdateCheck.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartUpdateCheck.java index e2066d1..a29d2ee 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartUpdateCheck.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartUpdateCheck.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model; -/// JDatStart update check schedule. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public enum JDatStartUpdateCheck { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartUpdatePolicy.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartUpdatePolicy.java index 4aace2c..96f175a 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartUpdatePolicy.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/JDatStartUpdatePolicy.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model; -/// JDatStart update policy mode. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public enum JDatStartUpdatePolicy { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourceDownload.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourceDownload.java index 63014e5..47c4caa 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourceDownload.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourceDownload.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model.resource; -/// JDatStart resource download fetch type. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public enum JDatStartResourceDownload { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourceDownloadExtension.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourceDownloadExtension.java index 480247e..62dc586 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourceDownloadExtension.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourceDownloadExtension.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model.resource; -/// JDatStart resource download extension. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartResourceDownloadExtension { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePart.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePart.java index 9dc2d7a..5451305 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePart.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePart.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model.resource; -/// JDatStart resource part marker. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public interface JDatStartResourcePart { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartArtifact.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartArtifact.java index 1d439c6..2e1e14c 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartArtifact.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartArtifact.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model.resource; -/// JDatStart resource part artifact. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartResourcePartArtifact implements JDatStartResourcePart { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartExtension.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartExtension.java index dbd7f0f..3463bde 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartExtension.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartExtension.java @@ -30,7 +30,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model.resource; import java.util.ArrayList; import java.util.List; -/// JDatStart resource part extension. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartResourcePartExtension implements JDatStartResourcePart { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartJ2SE.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartJ2SE.java index 3c3c409..b13a93d 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartJ2SE.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartJ2SE.java @@ -29,7 +29,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model.resource; import java.util.List; -/// JDatStart resource part J2SE. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartResourcePartJ2SE implements JDatStartResourcePart { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartJar.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartJar.java index 805efdf..ae9895a 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartJar.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartJar.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model.resource; -/// JDatStart resource part jar. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartResourcePartJar implements JDatStartResourcePart { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartJava.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartJava.java index 770bc2f..c81c93e 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartJava.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartJava.java @@ -29,7 +29,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model.resource; import java.util.List; -/// JDatStart resource part java. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartResourcePartJava implements JDatStartResourcePart { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartNativeLib.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartNativeLib.java index 269cd81..435f0ab 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartNativeLib.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartNativeLib.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model.resource; -/// JDatStart resource part native lib. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartResourcePartNativeLib implements JDatStartResourcePart { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartPackage.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartPackage.java index 4927b4a..81badd2 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartPackage.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartPackage.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model.resource; -/// JDatStart resource part package. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartResourcePartPackage implements JDatStartResourcePart { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartProperty.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartProperty.java index 9ba995b..92bc602 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartProperty.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResourcePartProperty.java @@ -27,7 +27,6 @@ package love.distributedrebirth.nx01.redsea.jdatstart.model.resource; -/// JDatStart resource part property. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartResourcePartProperty implements JDatStartResourcePart { diff --git a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResources.java b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResources.java index f9c1dae..ae89c3d 100644 --- a/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResources.java +++ b/nx01-redsea-jdatstart/src/main/java/love/distributedrebirth/nx01/redsea/jdatstart/model/resource/JDatStartResources.java @@ -31,7 +31,6 @@ import java.util.List; import love.distributedrebirth.nx01.redsea.jdatstart.model.AbstractJDatStartItemFilter; -/// JDatStart resources. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class JDatStartResources extends AbstractJDatStartItemFilter { diff --git a/nx01-warp-core/src/main/java/love/distributedrebirth/nx01/warp/core/react/WarpReactPlasmaCoil.java b/nx01-warp-core/src/main/java/love/distributedrebirth/nx01/warp/core/react/WarpReactPlasmaCoil.java index 269de43..820ada2 100644 --- a/nx01-warp-core/src/main/java/love/distributedrebirth/nx01/warp/core/react/WarpReactPlasmaCoil.java +++ b/nx01-warp-core/src/main/java/love/distributedrebirth/nx01/warp/core/react/WarpReactPlasmaCoil.java @@ -28,7 +28,6 @@ package love.distributedrebirth.nx01.warp.core.react; /// Warp react plasma coil. -/// @param The type of the pulse event flow value. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 @FunctionalInterface diff --git a/nx01-warp-core/src/main/java/love/distributedrebirth/nx01/warp/core/react/WarpReactPlasmaPulse.java b/nx01-warp-core/src/main/java/love/distributedrebirth/nx01/warp/core/react/WarpReactPlasmaPulse.java index a9d4a1d..1718046 100644 --- a/nx01-warp-core/src/main/java/love/distributedrebirth/nx01/warp/core/react/WarpReactPlasmaPulse.java +++ b/nx01-warp-core/src/main/java/love/distributedrebirth/nx01/warp/core/react/WarpReactPlasmaPulse.java @@ -28,7 +28,6 @@ package love.distributedrebirth.nx01.warp.core.react; /// Warp react plasma pulse. -/// @param Type of the pulse event flow value. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class WarpReactPlasmaPulse { diff --git a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/manifest/WarpManifestX0.java b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/manifest/WarpManifestX0.java index 116018e..c5165c1 100644 --- a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/manifest/WarpManifestX0.java +++ b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/manifest/WarpManifestX0.java @@ -32,9 +32,6 @@ import java.util.Optional; /// Warp manifest 0 bit model. /// -/// @param The X0 value type. -/// @param The X0 header field type. -/// @param The X0 section type. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public interface WarpManifestX0, H extends WarpManifestX0HeaderField, S extends WarpManifestX0Section> { diff --git a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/manifest/WarpManifestX0HeaderField.java b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/manifest/WarpManifestX0HeaderField.java index 9cff5da..c0880fc 100644 --- a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/manifest/WarpManifestX0HeaderField.java +++ b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/manifest/WarpManifestX0HeaderField.java @@ -31,8 +31,6 @@ import java.util.List; /// Warp manifest 0 bit name value pair entry. /// -/// @param The X0 value type. -/// @param The X0 header field type. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public interface WarpManifestX0HeaderField> { diff --git a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/manifest/WarpManifestX0Section.java b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/manifest/WarpManifestX0Section.java index bfd943c..0fdc6c6 100644 --- a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/manifest/WarpManifestX0Section.java +++ b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/manifest/WarpManifestX0Section.java @@ -32,9 +32,6 @@ import java.util.Optional; /// Warp manifest 0 bit section. /// -/// @param The X0 value type. -/// @param The X0 header field type. -/// @param The X0 section type. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public interface WarpManifestX0Section, S extends WarpManifestX0Section> { diff --git a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/ScopicManifestContent.java b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/ScopicManifestContent.java index 8d68aa9..8c7428c 100644 --- a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/ScopicManifestContent.java +++ b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/ScopicManifestContent.java @@ -29,7 +29,6 @@ package love.distributedrebirth.nx01.warp.manifestor.scopic; /// Stroboscopic manifestor content handler. /// -/// @param The manifest body value type. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public interface ScopicManifestContent { diff --git a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/ScopicManifestDuplicateDetector.java b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/ScopicManifestDuplicateDetector.java index 32d8625..6d9cffe 100644 --- a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/ScopicManifestDuplicateDetector.java +++ b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/ScopicManifestDuplicateDetector.java @@ -34,7 +34,6 @@ import java.util.function.Function; /// Stroboscopic manifest duplicate detector kills duplicates. /// -/// @param The manifest body value type. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public class ScopicManifestDuplicateDetector { diff --git a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf3/ScopicManifest3ContentWriter.java b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf3/ScopicManifest3ContentWriter.java index 65f6fb8..700895c 100644 --- a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf3/ScopicManifest3ContentWriter.java +++ b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf3/ScopicManifest3ContentWriter.java @@ -35,7 +35,7 @@ import love.distributedrebirth.nx01.warp.manifestor.scopic.ScopicManifestDuplica import love.distributedrebirth.nx01.warp.manifestor.scopic.ScopicManifestException; import love.distributedrebirth.nx01.warp.manifestor.scopic.iomf.ScopicManifestConstants; -/// Stroboscopic manifest 3 binary TLV chain. +/// Stroboscopic manifest 5 binary 8 bit XDBX content writer. /// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 diff --git a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf3/ScopicManifest3FrameTLV.java b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf3/ScopicManifest3FrameTLV.java index a9cb410..b324dd6 100644 --- a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf3/ScopicManifest3FrameTLV.java +++ b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf3/ScopicManifest3FrameTLV.java @@ -29,8 +29,6 @@ package love.distributedrebirth.nx01.warp.manifestor.scopic.iomf3; import love.distributedrebirth.nx01.no2all.nostr.octo.tlv.TLVChainSexTeenBitFrameType; -/// Stroboscopic manifest 3 frame TLV values. -/// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public enum ScopicManifest3FrameTLV implements TLVChainSexTeenBitFrameType { diff --git a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf4/ScopicManifest4FrameTLV.java b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf4/ScopicManifest4FrameTLV.java index c9f0ac4..d4435b4 100644 --- a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf4/ScopicManifest4FrameTLV.java +++ b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf4/ScopicManifest4FrameTLV.java @@ -34,8 +34,6 @@ import love.distributedrebirth.nx01.no2all.nostr.octo.tlv.TLVChainOctalSexFrameT import love.distributedrebirth.nx01.no2all.nostr.octo.tlv.TLVChainSexTeenBitFrameType; import love.distributedrebirth.nx01.warp.manifestor.scopic.iomf3.ScopicManifest3FrameTLV; -/// Stroboscopic manifest 4 frame TLV values. -/// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public enum ScopicManifest4FrameTLV implements TLVChainOctalSexFrameType { diff --git a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf5/ScopicManifest5FrameTag.java b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf5/ScopicManifest5FrameTag.java index e7b10d9..982e721 100644 --- a/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf5/ScopicManifest5FrameTag.java +++ b/nx01-warp-manifestor/src/main/java/love/distributedrebirth/nx01/warp/manifestor/scopic/iomf5/ScopicManifest5FrameTag.java @@ -27,8 +27,6 @@ package love.distributedrebirth.nx01.warp.manifestor.scopic.iomf5; -/// Stroboscopic manifest 5 frame tag values. -/// /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public enum ScopicManifest5FrameTag { diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/X4ODriver.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/X4ODriver.java index 8357269..f951d4f 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/X4ODriver.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/X4ODriver.java @@ -148,6 +148,22 @@ public abstract class X4ODriver { return buildLanguage(getLanguageVersionDefault()); } + /* + * Creates the X4OLanguageSession for the default language version. + * @return The created X4OLanguageSession. + * + final public X4OLanguageSession createLanguageSession() { + return createLanguageSession(getLanguageVersionDefault()); + } + + * + * Creates the X4OLanguageSession for the specified version. + * @param version The language version to create the context for. + * @return The created X4OLanguageSession. + * + final public X4OLanguageSession createLanguageSession(String version) { + return createLanguage(version).createLanguageSession(); + }*/ // =============== Language Tasks diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/X4ODriverManager.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/X4ODriverManager.java index e93ed12..f2b4c04 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/X4ODriverManager.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/X4ODriverManager.java @@ -33,29 +33,28 @@ import java.util.List; import java.util.Map; import java.util.logging.Logger; -import javax.xml.parsers.ParserConfigurationException; -import javax.xml.parsers.SAXParser; -import javax.xml.parsers.SAXParserFactory; - import org.x4o.xml.lang.DefaultX4OLanguage; import org.x4o.xml.lang.DefaultX4OLanguageConfiguration; import org.x4o.xml.lang.X4OLanguage; import org.x4o.xml.lang.X4OLanguageClassLoader; import org.x4o.xml.lang.X4OLanguageConfiguration; import org.x4o.xml.lang.phase.DefaultX4OPhaseManager; +import org.x4o.xml.lang.phase.X4OPhaseException; import org.x4o.xml.lang.phase.X4OPhaseLanguageInit; import org.x4o.xml.lang.phase.X4OPhaseLanguageRead; import org.x4o.xml.lang.phase.X4OPhaseLanguageWrite; import org.x4o.xml.lang.phase.X4OPhaseManager; +import org.x4o.xml.lang.phase.X4OPhaseType; import org.x4o.xml.lang.task.X4OLanguageTask; import org.xml.sax.Attributes; import org.xml.sax.InputSource; import org.xml.sax.SAXException; import org.xml.sax.XMLReader; import org.xml.sax.ext.DefaultHandler2; +import org.xml.sax.helpers.XMLReaderFactory; /** - * X4ODriverManager controls all the x4o driver and languages loaded in the class-path. + * X4ODriverManager controls all the x4o driver and languages loaded in the classpath. * * @author Willem Cazander * @version 1.0 Apr 6, 2013 @@ -66,53 +65,57 @@ public final class X4ODriverManager { private final static X4ODriverManager instance; private Logger logger = null; private volatile boolean reloadDrivers = true; - private Map classdrivers = null; - private Map defaultDrivers = null; - private Map> drivers = null; - private Map languageTasks = null; - + private Map classdrivers = null; + private Map defaultDrivers = null; + private Map> drivers = null; + private Map languageTasks = null; + private X4ODriverManager() { logger = Logger.getLogger(X4ODriverManager.class.getName()); - classdrivers = new HashMap(10); - defaultDrivers = new HashMap(10); - drivers = new HashMap>(10); - languageTasks = new HashMap(10); + classdrivers = new HashMap(10); + defaultDrivers = new HashMap(10); + drivers = new HashMap>(10); + languageTasks = new HashMap(10); } - + static { instance = new X4ODriverManager(); } - + private void registerX4OLanguageTask(String className) { try { - X4OLanguageTask task = (X4OLanguageTask) X4OLanguageClassLoader.newInstance(className); + X4OLanguageTask task = (X4OLanguageTask)X4OLanguageClassLoader.newInstance(className); if (languageTasks.containsKey(task.getId())) { - throw new RuntimeException("Can't add duplicate language task: " + task.getId()); + throw new RuntimeException("Can't add duplicate language task: "+task.getId()); } languageTasks.put(task.getId(), task); } catch (ClassNotFoundException e) { - throw new IllegalStateException(e.getMessage(), e); + throw new IllegalStateException(e.getMessage(),e); + } catch (InstantiationException e) { + throw new IllegalStateException(e.getMessage(),e); + } catch (IllegalAccessException e) { + throw new IllegalStateException(e.getMessage(),e); } } - + static public X4OLanguageTask getX4OLanguageTask(String taskId) { instance.lazyInit(); // fixme return instance.languageTasks.get(taskId); } - + static public List getX4OLanguageTasks() { instance.lazyInit(); // fixme return new ArrayList(instance.languageTasks.values()); } - + static protected String getDefaultLanguageVersion(String[] languages) { - if (languages == null || languages.length == 0) { + if (languages==null || languages.length==0) { return X4ODriver.DEFAULT_LANGUAGE_VERSION; } - String languageVersion = languages[languages.length - 1]; + String languageVersion = languages[languages.length-1]; return languageVersion; } - + static protected X4OPhaseManager getDefaultBuildPhaseManager() { DefaultX4OPhaseManager manager = new DefaultX4OPhaseManager(); new X4OPhaseLanguageInit().createPhases(manager); @@ -120,56 +123,85 @@ public final class X4ODriverManager { new X4OPhaseLanguageWrite().createPhases(manager); return manager; } - - static protected X4OLanguage getDefaultBuildLanguage(X4ODriver driver, String version) { - if (version == null) { + + static protected X4OLanguage getDefaultBuildLanguage(X4ODriver driver,String version) { + if (version==null) { version = driver.getLanguageVersionDefault(); } - DefaultX4OLanguage result = new DefaultX4OLanguage(driver.buildLanguageConfiguration(), driver.buildPhaseManager(), driver.getLanguageName(), version); + DefaultX4OLanguage result = new DefaultX4OLanguage( + driver.buildLanguageConfiguration(), + driver.buildPhaseManager(), + driver.getLanguageName(), + version + ); + try { + result.getPhaseManager().runPhases(result.createLanguageSession(), X4OPhaseType.INIT); // TODO: fix phase to interface T + } catch (X4OPhaseException e) { + throw new RuntimeException(e); //TODO: change layer + } return result; } - + static protected X4OLanguageConfiguration getDefaultBuildLanguageConfiguration() { DefaultX4OLanguageConfiguration config = new DefaultX4OLanguageConfiguration(); config.fillDefaults(); X4OLanguageConfiguration result = config.createProxy(); return result; } - + + /* + static public void setGlobalProperty(X4ODriver driver,String key,Object value) { + Map driverProperties = instance.globalProperties.get(driver.getLanguageName()); + if (driverProperties==null) { + driverProperties = new HashMap(20); + instance.globalProperties.put(driver.getLanguageName(), driverProperties); + } + String keyLimits[] = driver.getGlobalPropertyKeySet(); + for (int i=0;i driver) { - if (driver == null) { + if (driver==null) { throw new NullPointerException("Can't register null driver."); } - if (driver.getLanguageName() == null) { - throw new NullPointerException("Error in driver impl languageName is null in: " + driver.getClass()); + if (driver.getLanguageName()==null) { + throw new NullPointerException("Error in driver impl languageName is null in: "+driver.getClass()); } - if (driver.getLanguageName().length() == 0) { - throw new IllegalArgumentException("Error in driver impl languageName is empty in: " + driver.getClass()); + if (driver.getLanguageName().length()==0) { + throw new IllegalArgumentException("Error in driver impl languageName is empty in: "+driver.getClass()); } - if (driver.getLanguageVersions() == null) { - throw new NullPointerException("Error in driver impl languageVersions is null in: " + driver.getClass()); + if (driver.getLanguageVersions()==null) { + throw new NullPointerException("Error in driver impl languageVersions is null in: "+driver.getClass()); } - if (driver.getLanguageVersions().length == 0) { - throw new IllegalArgumentException("Error in driver impl languageVersions is empty in: " + driver.getClass()); + if (driver.getLanguageVersions().length==0) { + throw new IllegalArgumentException("Error in driver impl languageVersions is empty in: "+driver.getClass()); } instance.drivers.put(driver.getLanguageName(), driver); } - + static public void deregisterX4ODriver(X4ODriver driver) { - if (driver == null) { + if (driver==null) { throw new NullPointerException("Can't deregister null driver."); } - if (driver.getLanguageName() == null) { - throw new NullPointerException("Error in driver impl languageName is null in: " + driver.getClass()); + if (driver.getLanguageName()==null) { + throw new NullPointerException("Error in driver impl languageName is null in: "+driver.getClass()); } instance.drivers.remove(driver.getLanguageName()); } - + static public X4ODriver getX4ODriver(String language) { - if (language == null) { + if (language==null) { throw new NullPointerException("Can't provider driver for null language."); } - if (language.length() == 0) { + if (language.length()==0) { throw new IllegalArgumentException("Can't provider driver for empty language."); } if (instance.drivers.containsKey(language)) { @@ -177,12 +209,12 @@ public final class X4ODriverManager { } instance.lazyInit(); X4ODriver result = instance.createX4ODriver(language); - if (result == null) { - throw new IllegalArgumentException("Can't find driver for language: " + language); + if (result==null) { + throw new IllegalArgumentException("Can't find driver for language: "+language); } return result; } - + static public List getX4OLanguages() { instance.lazyInit(); List result = new ArrayList(10); @@ -191,15 +223,15 @@ public final class X4ODriverManager { Collections.sort(result); return result; } - + private void lazyInit() { - if (reloadDrivers == false) { + if (reloadDrivers==false) { return; } instance.loadLanguageDrivers(); reloadDrivers = false; } - + private X4ODriver createX4ODriver(String language) { String driverClassName = null; if (classdrivers.containsKey(language)) { @@ -207,70 +239,71 @@ public final class X4ODriverManager { } else if (defaultDrivers.containsKey(language)) { driverClassName = defaultDrivers.get(language); } - if (driverClassName == null) { + if (driverClassName==null) { return null; } try { Class driverClass = X4OLanguageClassLoader.loadClass(driverClassName); - // Constructor markedConstructor = driverClass.getDeclaredConstructor(new Class[]{ConstructorMarker.class}); - // X4ODriver driver = (X4ODriver)markedConstructor.newInstance(new Object[]{new ConstructorMarker()}); - X4ODriver driver = (X4ODriver) X4OLanguageClassLoader.newInstance(driverClass); + //Constructor markedConstructor = driverClass.getDeclaredConstructor(new Class[]{ConstructorMarker.class}); + //X4ODriver driver = (X4ODriver)markedConstructor.newInstance(new Object[]{new ConstructorMarker()}); + X4ODriver driver = (X4ODriver)driverClass.newInstance(); registerX4ODriver(driver); return driver; } catch (ClassNotFoundException e) { - throw new IllegalStateException(e.getMessage(), e); + throw new IllegalStateException(e.getMessage(),e); + } catch (InstantiationException e) { + throw new IllegalStateException(e.getMessage(),e); + } catch (IllegalAccessException e) { + throw new IllegalStateException(e.getMessage(),e); } } - + /* - * TODO: Class to make sure all driver instances are created by this manager instance. - * - * final public class ConstructorMarker { private ConstructorMarker() { } } - */ - + * Class to make sure all driver instances are created by this manager instance. + + final public class ConstructorMarker { + private ConstructorMarker() { + } + }*/ + /** * Loads all defined language drivers in classpath. */ private void loadLanguageDrivers() { - logger.finer("loading x4o drivers from: " + X4O_DRIVERS_RESOURCE); + logger.finer("loading x4o drivers from: "+X4O_DRIVERS_RESOURCE); try { Enumeration e = Thread.currentThread().getContextClassLoader().getResources(X4O_DRIVERS_RESOURCE); - while (e.hasMoreElements()) { + while(e.hasMoreElements()) { URL u = e.nextElement(); loadDriversXml(u.openStream()); } - e = Thread.currentThread().getContextClassLoader().getResources("/" + X4O_DRIVERS_RESOURCE); - while (e.hasMoreElements()) { + e = Thread.currentThread().getContextClassLoader().getResources("/"+X4O_DRIVERS_RESOURCE); + while(e.hasMoreElements()) { URL u = e.nextElement(); loadDriversXml(u.openStream()); } } catch (Exception e) { - throw new IllegalStateException(e.getMessage(), e); + throw new IllegalStateException(e.getMessage(),e); } } - + /** * Parser xml inputstream and add into drivers and defaultDrivers lists. - * - * @param in The inputstream to parser. + * @param in The inputstream to parser. * @throws IOException * @throws SAXException - * @throws ParserConfigurationException */ - private void loadDriversXml(InputStream in) throws IOException, SAXException, ParserConfigurationException { - if (in == null) { + private void loadDriversXml(InputStream in) throws IOException, SAXException { + if (in==null) { throw new NullPointerException("Can't parse null input stream"); } DriversTagHandler xth = new DriversTagHandler(); - SAXParserFactory factory = SAXParserFactory.newInstance(); - factory.setNamespaceAware(true); - SAXParser parser = factory.newSAXParser(); - XMLReader reader = parser.getXMLReader(); - reader.setContentHandler(xth); - reader.setProperty("http://xml.org/sax/properties/lexical-handler", xth); - reader.setProperty("http://xml.org/sax/properties/declaration-handler", xth); + XMLReader saxParser = XMLReaderFactory.createXMLReader(); + saxParser.setContentHandler(xth); + saxParser.setProperty("http://xml.org/sax/properties/lexical-handler", xth); + saxParser.setProperty("http://xml.org/sax/properties/declaration-handler",xth); try { - reader.parse(new InputSource(in)); + saxParser.parse(new InputSource(in)); } finally { in.close(); } @@ -278,26 +311,26 @@ public final class X4ODriverManager { private class DriversTagHandler extends DefaultHandler2 { @Override - public void startElement(String namespaceUri, String tag, String qName, Attributes attr) throws SAXException { + public void startElement(String namespaceUri, String tag, String qName,Attributes attr) throws SAXException { if ("drivers".equals(tag)) { String version = attr.getValue("version"); - logger.finest("Version attribute: " + version); + logger.finest("Version attribute: "+version); } else if ("driver".equals(tag)) { String language = attr.getValue("language"); String className = attr.getValue("className"); - logger.finest("Driver className: " + className + " for language: " + language); - if (classdrivers.containsKey(className) == false) { - classdrivers.put(language, className); + logger.finest("Driver className: "+className+" for language: "+language); + if (classdrivers.containsKey(className)==false) { + classdrivers.put(language,className); } } else if ("defaultDriver".equals(tag)) { String language = attr.getValue("language"); - logger.finest("DefaultDriver language: " + language); - if (defaultDrivers.containsKey(language) == false) { - defaultDrivers.put(language, language); + logger.finest("DefaultDriver language: "+language); + if (defaultDrivers.containsKey(language)==false) { + defaultDrivers.put(language,language); } } else if ("languageTask".equals(tag)) { String className = attr.getValue("className"); - logger.finest("Language task className: " + className); + logger.finest("Language task className: "+className); X4ODriverManager.instance.registerX4OLanguageTask(className); } } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/ByteConverter.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/ByteConverter.java index 70f9b86..c190cac 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/ByteConverter.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/ByteConverter.java @@ -57,7 +57,7 @@ public class ByteConverter extends AbstractStringObjectConverter { * @throws ObjectConverterException When conversion fails. */ public Object convertStringTo(String str, Locale locale) throws ObjectConverterException { - return Byte.valueOf(str); + return new Byte(str); } /** diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/CharacterConverter.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/CharacterConverter.java index 5ca6ad8..79aeead 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/CharacterConverter.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/CharacterConverter.java @@ -57,7 +57,7 @@ public class CharacterConverter extends AbstractStringObjectConverter { * @throws ObjectConverterException When conversion fails. */ public Object convertStringTo(String str, Locale locale) throws ObjectConverterException { - return Character.valueOf(str.charAt(0)); + return new Character(str.charAt(0)); } /** diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/DoubleConverter.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/DoubleConverter.java index 57207cf..3c00da0 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/DoubleConverter.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/DoubleConverter.java @@ -57,7 +57,7 @@ public class DoubleConverter extends AbstractStringObjectConverter { * @throws ObjectConverterException When conversion fails. */ public Object convertStringTo(String str, Locale locale) throws ObjectConverterException { - return Double.valueOf(str); + return new Double(str); } /** diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/FloatConverter.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/FloatConverter.java index e7720e5..37913b7 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/FloatConverter.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/FloatConverter.java @@ -57,7 +57,7 @@ public class FloatConverter extends AbstractStringObjectConverter { * @throws ObjectConverterException When conversion fails. */ public Object convertStringTo(String str, Locale locale) throws ObjectConverterException { - return Float.valueOf(str); + return new Float(str); } /** diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/IntegerConverter.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/IntegerConverter.java index e941dd3..1c03095 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/IntegerConverter.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/IntegerConverter.java @@ -57,7 +57,7 @@ public class IntegerConverter extends AbstractStringObjectConverter { * @throws ObjectConverterException When conversion fails. */ public Object convertStringTo(String str, Locale locale) throws ObjectConverterException { - return Integer.valueOf(str); + return new Integer(str); } /** diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/LongConverter.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/LongConverter.java index fa6c9d7..09ec814 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/LongConverter.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/conv/text/LongConverter.java @@ -57,7 +57,7 @@ public class LongConverter extends AbstractStringObjectConverter { * @throws ObjectConverterException When conversion fails. */ public Object convertStringTo(String str, Locale locale) throws ObjectConverterException { - return Long.valueOf(str); + return new Long(str); } /** diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OExpressionFactory.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OExpressionFactory.java index d7c0de0..e03a570 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OExpressionFactory.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/el/X4OExpressionFactory.java @@ -42,23 +42,25 @@ public class X4OExpressionFactory { ExpressionFactory result = null; try { Class expressionFactoryClass = X4OLanguageClassLoader.loadClass(EL_FACTORY_IMPL_APACHE); - result = X4OLanguageClassLoader.newInstance(ExpressionFactory.class, expressionFactoryClass); - } catch (ClassNotFoundException e) { + result = (ExpressionFactory) expressionFactoryClass.newInstance(); + } catch (Exception e) { try { Class expressionFactoryClass = X4OLanguageClassLoader.loadClass(EL_FACTORY_IMPL_ODYSSEUS); - result = X4OLanguageClassLoader.newInstance(ExpressionFactory.class, expressionFactoryClass); - } catch (ClassNotFoundException ee) { + result = (ExpressionFactory) expressionFactoryClass.newInstance(); + } catch (Exception ee) { throw new RuntimeException("Could not load ExpressionFactory tried: "+EL_FACTORY_IMPL_APACHE+" and "+EL_FACTORY_IMPL_ODYSSEUS+" but could not load one of them."); } } return result; } - static public ELContext createELContext(Class elContextClass) { + static public ELContext createELContext(Class elContextClass) { + ELContext result = null; try { - return X4OLanguageClassLoader.newInstance(ELContext.class, elContextClass); - } catch (ClassNotFoundException e) { + result = (ELContext)X4OLanguageClassLoader.newInstance(elContextClass); + } catch (Exception e) { throw new RuntimeException("Could not create instance of ELContext: "+e.getMessage(),e); } + return result; } } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/EldModuleLoader.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/EldModuleLoader.java index 7656783..3e6baab 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/EldModuleLoader.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/EldModuleLoader.java @@ -29,7 +29,6 @@ import javax.el.ValueExpression; import org.x4o.xml.X4ODriver; import org.x4o.xml.X4ODriverManager; -import org.x4o.xml.io.DefaultX4OReader; import org.x4o.xml.io.X4OConnectionException; import org.x4o.xml.io.X4OReader; import org.x4o.xml.lang.X4OLanguage; @@ -49,9 +48,9 @@ import org.xml.sax.SAXException; */ public class EldModuleLoader implements X4OLanguageModuleLoader { - private final Logger logger; - private final String eldResource; - private final boolean isEldCore; + private Logger logger = null; + private String eldResource = null; + private boolean isEldCore = false; /** The EL key to access the parent language module. */ public static final String EL_PARENT_LANGUAGE_MODULE = "parentLanguageModule"; @@ -65,24 +64,23 @@ public class EldModuleLoader implements X4OLanguageModuleLoader { * @param isEldCore If true then load CEL else load ELD. */ public EldModuleLoader(String eldResource,boolean isEldCore) { - if (eldResource == null) { + if (eldResource==null) { throw new NullPointerException("Can't load null eld resource."); } - this.logger = Logger.getLogger(EldModuleLoader.class.getName()); - this.eldResource = eldResource; - this.isEldCore = isEldCore; + logger = Logger.getLogger(EldModuleLoader.class.getName()); + this.eldResource=eldResource; + this.isEldCore=isEldCore; } /** * Loads the ELD language into the module. - * @param session The session we run in. - * @param language The local Language to load for. - * @param module The language module to load it into. + * @param language The langauge to load for. + * @param languageModule The module to load it in. * @throws X4OLanguageModuleLoaderException When eld language could not be loaded. * @see org.x4o.xml.lang.X4OLanguageModuleLoader#loadLanguageModule(org.x4o.xml.lang.X4OLanguageLocal, org.x4o.xml.lang.X4OLanguageModuleLocal) */ - public void loadLanguageModule(X4OLanguageSession session, X4OLanguageLocal language, X4OLanguageModuleLocal module) throws X4OLanguageModuleLoaderException { - logger.fine("Loading name eld file from resource: " + eldResource); + public void loadLanguageModule(X4OLanguageLocal language,X4OLanguageModuleLocal languageModule) throws X4OLanguageModuleLoaderException { + logger.fine("Loading name eld file from resource: "+eldResource); try { X4ODriver driver = null; if (isEldCore) { @@ -90,12 +88,19 @@ public class EldModuleLoader implements X4OLanguageModuleLoader { } else { driver = X4ODriverManager.getX4ODriver(EldDriver.LANGUAGE_NAME); } + X4OReader reader = driver.createReader(); + + //X4OLanguageSession eldLang = driver.createLanguageSession(driver.getLanguageVersionDefault()); + //X4OReader reader = new DefaultX4OReader(eldLang); + reader.addELBeanInstance(EL_PARENT_LANGUAGE, language); - reader.addELBeanInstance(EL_PARENT_LANGUAGE_MODULE, module); - if (session.hasX4ODebugWriter()) { - reader.setProperty(DefaultX4OReader.DEBUG_OUTPUT_HANDLER, session.getX4ODebugWriter().getContentWriter()); - } + reader.addELBeanInstance(EL_PARENT_LANGUAGE_MODULE, languageModule); + +//TODO: if (language.getLanguageConfiguration().getLanguagePropertyBoolean(X4OLanguageProperty.DEBUG_OUTPUT_ELD_PARSER)) { +// eldLang.setX4ODebugWriter(elementLanguage.getLanguageConfiguration().getX4ODebugWriter()); +// } + reader.readResource(eldResource); } catch (X4OConnectionException e) { throw new X4OLanguageModuleLoaderException(this,e.getMessage()+" while parsing: "+eldResource,e); diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/EldModuleLoaderCore.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/EldModuleLoaderCore.java index b54488f..9fc5f9b 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/EldModuleLoaderCore.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/EldModuleLoaderCore.java @@ -48,11 +48,9 @@ import org.x4o.xml.lang.X4OLanguageClassLoader; import org.x4o.xml.lang.X4OLanguageModuleLoader; import org.x4o.xml.lang.X4OLanguageModuleLoaderException; import org.x4o.xml.lang.X4OLanguageModuleLocal; -import org.x4o.xml.lang.X4OLanguageSession; -/** - * EldModuleLoaderCore provides a few basic elements for the core eld x4o - * language. +/** + * EldModuleLoaderCore provides a few basic elements for the core eld x4o language. * * @author Willem Cazander * @version 1.0 Jan 11, 2009 @@ -61,122 +59,117 @@ public class EldModuleLoaderCore implements X4OLanguageModuleLoader { private Logger logger = null; private static final String PP_CEL_PROVIDER_HOST = "cel.x4o.org"; - private static final String PP_CEL_XMLNS = "http://" + PP_CEL_PROVIDER_HOST + "/xml/ns/"; + private static final String PP_CEL_XMLNS = "http://"+PP_CEL_PROVIDER_HOST+"/xml/ns/"; private static final String PP_CEL_XSD_FILE = "-1.0.xsd"; private static final String CEL_CORE = "cel-core"; private static final String CEL_ROOT = "cel-root"; - private static final String CEL_CORE_XSD_FILE = CEL_CORE + PP_CEL_XSD_FILE; - private static final String CEL_ROOT_XSD_FILE = CEL_ROOT + PP_CEL_XSD_FILE; + private static final String CEL_CORE_XSD_FILE = CEL_CORE+PP_CEL_XSD_FILE; + private static final String CEL_ROOT_XSD_FILE = CEL_ROOT+PP_CEL_XSD_FILE; /** The cel core namespace uri. */ - public static final String CEL_CORE_URI = PP_CEL_XMLNS + CEL_CORE; + public static final String CEL_CORE_URI = PP_CEL_XMLNS+CEL_CORE; /** The cel root namespace uri. */ - public static final String CEL_ROOT_URI = PP_CEL_XMLNS + CEL_ROOT; + public static final String CEL_ROOT_URI = PP_CEL_XMLNS+CEL_ROOT; /** The cel core schema namespace uri. */ - public static final String CEL_CORE_XSD_URI = CEL_CORE_URI + PP_CEL_XSD_FILE; + public static final String CEL_CORE_XSD_URI = CEL_CORE_URI+PP_CEL_XSD_FILE; /** The cel root schema namespace uri. */ - public static final String CEL_ROOT_XSD_URI = CEL_ROOT_URI + PP_CEL_XSD_FILE; - + public static final String CEL_ROOT_XSD_URI = CEL_ROOT_URI+PP_CEL_XSD_FILE; + /** * Creates the CEL module loader. */ public EldModuleLoaderCore() { logger = Logger.getLogger(EldModuleLoaderCore.class.getName()); } - + /** * Loads the CEL language into the module. - * - * @param session The session to run in. - * @param language The langauge to load for. + * @param language The langauge to load for. * @param languageModule The module to load it in. - * @see org.x4o.xml.lang.X4OLanguageModuleLoader#loadLanguageModule(org.x4o.xml.lang.X4OLanguageLocal, - * org.x4o.xml.lang.X4OLanguageModuleLocald) + * @see org.x4o.xml.lang.X4OLanguageModuleLoader#loadLanguageModule(org.x4o.xml.lang.X4OLanguageLocal, org.x4o.xml.lang.X4OLanguageModuleLocald) */ - @Override - public void loadLanguageModule(X4OLanguageSession session, X4OLanguageLocal language, X4OLanguageModuleLocal languageModule) throws X4OLanguageModuleLoaderException { - + public void loadLanguageModule(X4OLanguageLocal language,X4OLanguageModuleLocal languageModule) throws X4OLanguageModuleLoaderException { + // Config module meta data configLanguageModule(languageModule); - + // Config language - addBindingHandler(languageModule, new ElementClassBindingHandler(), "cel-class-bind", "Binds the ElementClass childeren."); - addBindingHandler(languageModule, new ElementModuleBindingHandler(), "cel-module-bind", "Binds the LanguageModule childeren."); - addBindingHandler(languageModule, new ElementClassAttributeBindingHandler(), "cel-class-attr-bind", "Binds the ElementClassAttribute childeren."); - addBindingHandler(languageModule, new ElementInterfaceBindingHandler(), "cel-interface-bind", "Binds the ElementInterface childeren."); - addBindingHandler(languageModule, new ElementNamespaceBindingHandler(), "cel-namespace-bind", "Binds the Namespace childeren."); - + addBindingHandler(languageModule,new ElementClassBindingHandler(),"cel-class-bind","Binds the ElementClass childeren."); + addBindingHandler(languageModule,new ElementModuleBindingHandler(),"cel-module-bind","Binds the LanguageModule childeren."); + addBindingHandler(languageModule,new ElementClassAttributeBindingHandler(),"cel-class-attr-bind","Binds the ElementClassAttribute childeren."); + addBindingHandler(languageModule,new ElementInterfaceBindingHandler(),"cel-interface-bind","Binds the ElementInterface childeren."); + addBindingHandler(languageModule,new ElementNamespaceBindingHandler(),"cel-namespace-bind","Binds the Namespace childeren."); + // Create cel-lang namespace in language - ElementNamespace namespace = createNamespaceContext(language, CEL_CORE, CEL_CORE_URI, CEL_CORE_XSD_URI, CEL_CORE_XSD_FILE, CEL_CORE); - configElementClasses(language, namespace); - startAndAddNamespace(language, languageModule, namespace); + ElementNamespace namespace = createNamespaceContext(language,CEL_CORE,CEL_CORE_URI,CEL_CORE_XSD_URI,CEL_CORE_XSD_FILE,CEL_CORE); + configElementClasses(language,namespace); + startAndAddNamespace(language,languageModule,namespace); // Create cel-root namespace in language for schema support - ElementNamespace namespaceRoot = createNamespaceContext(language, CEL_ROOT, CEL_ROOT_URI, CEL_ROOT_XSD_URI, CEL_ROOT_XSD_FILE, CEL_ROOT); + ElementNamespace namespaceRoot = createNamespaceContext(language,CEL_ROOT,CEL_ROOT_URI,CEL_ROOT_XSD_URI,CEL_ROOT_XSD_FILE,CEL_ROOT); namespaceRoot.setLanguageRoot(true); // Only define single language root so xsd is (mostly) not cicle import. - ElementClass rootElement = createElementClass(language, "module", language.getLanguageConfiguration().getDefaultElementLanguageModule(), ModuleElement.class, "The module tag is the root xml element for ELD language."); - rootElement.addElementClassAttribute(createElementClassAttribute(language, "id", true, null)); - rootElement.addElementClassAttribute(createElementClassAttribute(language, "providerHost", true, null)); + ElementClass rootElement = createElementClass(language,"module",language.getLanguageConfiguration().getDefaultElementLanguageModule(),ModuleElement.class,"The module tag is the root xml element for ELD language."); + rootElement.addElementClassAttribute(createElementClassAttribute(language,"id",true,null)); + rootElement.addElementClassAttribute(createElementClassAttribute(language,"providerHost",true,null)); namespaceRoot.addElementClass(rootElement); - startAndAddNamespace(language, languageModule, namespaceRoot); + startAndAddNamespace(language,languageModule,namespaceRoot); } - + /** * Adds only Element class beans which need extra meta info for schema. - * * @param namespace The namespace to config. - * @param language The language to config for. - * @throws X4OLanguageModuleLoaderException + * @param language The language to config for. + * @throws X4OLanguageModuleLoaderException */ - private void configElementClasses(X4OLanguage language, ElementNamespace namespace) throws X4OLanguageModuleLoaderException { + private void configElementClasses(X4OLanguage language,ElementNamespace namespace) throws X4OLanguageModuleLoaderException { ElementClass ec = null; - - namespace.addElementClass(createElementClass(language, "attribute", language.getLanguageConfiguration().getDefaultElementClassAttribute(), null, "Defines xml element attribute.")); - - ec = createElementClass(language, "attributeAlias", null, AttributeAliasElement.class, "Adds an attribute alias."); - ec.addElementClassAttribute(createElementClassAttribute(language, "name", true, null)); + + namespace.addElementClass(createElementClass(language,"attribute",language.getLanguageConfiguration().getDefaultElementClassAttribute(),null,"Defines xml element attribute.")); + + ec = createElementClass(language,"attributeAlias",null,AttributeAliasElement.class,"Adds an attribute alias."); + ec.addElementClassAttribute(createElementClassAttribute(language,"name",true,null)); ec.addElementParent(CEL_CORE_URI, "attribute"); namespace.addElementClass(ec); - - namespace.addElementClass(createElementClass(language, "classConverter", ClassConverter.class, null, "Converts string attribute to java class instance.")); - - ec = createElementClass(language, "namespace", language.getLanguageConfiguration().getDefaultElementNamespace(), null, "Defines an xml namespace."); - ec.addElementClassAttribute(createElementClassAttribute(language, "uri", true, null)); + + namespace.addElementClass(createElementClass(language,"classConverter",ClassConverter.class,null,"Converts string attribute to java class instance.")); + + ec = createElementClass(language,"namespace",language.getLanguageConfiguration().getDefaultElementNamespace(),null,"Defines an xml namespace."); + ec.addElementClassAttribute(createElementClassAttribute(language,"uri",true,null)); namespace.addElementClass(ec); - - ec = createElementClass(language, "element", language.getLanguageConfiguration().getDefaultElementClass(), null, "Defines xml element tag."); - ec.addElementClassAttribute(createElementClassAttribute(language, "objectClass", false, new ClassConverter())); - ec.addElementClassAttribute(createElementClassAttribute(language, "elementClass", false, new ClassConverter())); + + ec = createElementClass(language,"element",language.getLanguageConfiguration().getDefaultElementClass(),null,"Defines xml element tag."); + ec.addElementClassAttribute(createElementClassAttribute(language,"objectClass",false,new ClassConverter())); + ec.addElementClassAttribute(createElementClassAttribute(language,"elementClass",false,new ClassConverter())); namespace.addElementClass(ec); - - ec = createElementClass(language, "elementInterface", language.getLanguageConfiguration().getDefaultElementInterface(), null, "Defines element interface class."); - ec.addElementClassAttribute(createElementClassAttribute(language, "interfaceClass", false, new ClassConverter())); + + ec = createElementClass(language,"elementInterface",language.getLanguageConfiguration().getDefaultElementInterface(),null,"Defines element interface class."); + ec.addElementClassAttribute(createElementClassAttribute(language,"interfaceClass",false,new ClassConverter())); namespace.addElementClass(ec); - - ec = createElementClass(language, "bindingHandler", null, BeanElement.class, "Defines generic binding handler for languge."); + + ec = createElementClass(language,"bindingHandler",null,BeanElement.class,"Defines generic binding handler for languge."); ec.addElementParent(CEL_ROOT_URI, "module"); - ec.addElementClassAttribute(createElementClassAttribute(language, "id", true, null)); - ec.addElementClassAttribute(createElementClassAttribute(language, "bean.class", true, null)); + ec.addElementClassAttribute(createElementClassAttribute(language,"id",true,null)); + ec.addElementClassAttribute(createElementClassAttribute(language,"bean.class",true,null)); namespace.addElementClass(ec); - - ec = createElementClass(language, "namespaceAttribute", null, BeanElement.class, "Defines generic namespace attribute for language."); + + ec = createElementClass(language,"namespaceAttribute",null,BeanElement.class,"Defines generic namespace attribute for language."); ec.addElementParent(CEL_CORE_URI, "namespace"); - ec.addElementClassAttribute(createElementClassAttribute(language, "bean.class", true, null)); + ec.addElementClassAttribute(createElementClassAttribute(language,"bean.class",true,null)); namespace.addElementClass(ec); - - ec = createElementClass(language, "configurator", null, BeanElement.class, "Define generic configurator for language."); + + ec = createElementClass(language,"configurator",null,BeanElement.class,"Define generic configurator for language."); ec.addElementParent(CEL_CORE_URI, "elementInterface"); ec.addElementParent(CEL_CORE_URI, "element"); - ec.addElementClassAttribute(createElementClassAttribute(language, "bean.class", true, null)); - ec.addElementClassAttribute(createElementClassAttribute(language, "configAction", false, null)); + ec.addElementClassAttribute(createElementClassAttribute(language,"bean.class",true,null)); + ec.addElementClassAttribute(createElementClassAttribute(language,"configAction",false,null)); namespace.addElementClass(ec); - - ec = createElementClass(language, "configuratorGlobal", null, BeanElement.class, "Define generic global configuator for languge."); + + ec = createElementClass(language,"configuratorGlobal",null,BeanElement.class,"Define generic global configuator for languge."); ec.addElementParent(CEL_ROOT_URI, "module"); - ec.addElementClassAttribute(createElementClassAttribute(language, "bean.class", true, null)); - ec.addElementClassAttribute(createElementClassAttribute(language, "configAction", false, null)); + ec.addElementClassAttribute(createElementClassAttribute(language,"bean.class",true,null)); + ec.addElementClassAttribute(createElementClassAttribute(language,"configAction",false,null)); namespace.addElementClass(ec); - - ec = createElementClass(language, "description", null, DescriptionElement.class, "Adds description as text on all eld elements."); + + ec = createElementClass(language,"description",null,DescriptionElement.class,"Adds description as text on all eld elements."); ec.setSchemaContentBase("string"); ec.addElementParent(CEL_ROOT_URI, "module"); ec.addElementParent(CEL_CORE_URI, "namespace"); @@ -188,44 +181,51 @@ public class EldModuleLoaderCore implements X4OLanguageModuleLoader { ec.addElementParent(CEL_CORE_URI, "element"); ec.addElementParent(CEL_CORE_URI, "attribute"); namespace.addElementClass(ec); - - ec = createElementClass(language, "elementParent", null, ElementClassAddParentElement.class, "Added (meta) element parent."); + + ec = createElementClass(language,"elementParent",null,ElementClassAddParentElement.class,"Added (meta) element parent."); ec.addElementParent(CEL_CORE_URI, "element"); ec.addElementParent(CEL_CORE_URI, "elementInterface"); - ec.addElementClassAttribute(createElementClassAttribute(language, "tag", true, null)); - ec.addElementClassAttribute(createElementClassAttribute(language, "uri", false, null)); + ec.addElementClassAttribute(createElementClassAttribute(language,"tag",true,null)); + ec.addElementClassAttribute(createElementClassAttribute(language,"uri",false,null)); namespace.addElementClass(ec); } - + private void configLanguageModule(X4OLanguageModuleLocal languageModule) { languageModule.setId("cel-module"); languageModule.setProviderName("Core Element Languag Module"); languageModule.setProviderHost(PP_CEL_PROVIDER_HOST); languageModule.setDescription("Core Element Language Module Loader"); } - - private void startAndAddNamespace(X4OLanguageLocal language, X4OLanguageModuleLocal languageModule, ElementNamespace namespace) throws X4OLanguageModuleLoaderException { + + private void startAndAddNamespace(X4OLanguageLocal language,X4OLanguageModuleLocal languageModule,ElementNamespace namespace) throws X4OLanguageModuleLoaderException { try { namespace.getElementNamespaceInstanceProvider().start(language, namespace); } catch (ElementNamespaceInstanceProviderException e) { - throw new X4OLanguageModuleLoaderException(this, "Error starting instance provider: " + e.getMessage(), e); + throw new X4OLanguageModuleLoaderException(this,"Error starting instance provider: "+e.getMessage(),e); } languageModule.addElementNamespace(namespace); } - - private ElementNamespace createNamespaceContext(X4OLanguageLocal language, String id, String uri, String schemaUri, String schemaResource, String schemaPrefix) throws X4OLanguageModuleLoaderException { - logger.finer("Creating " + language.getLanguageName() + " namespace."); + + private ElementNamespace createNamespaceContext(X4OLanguageLocal language,String id,String uri,String schemaUri,String schemaResource,String schemaPrefix) throws X4OLanguageModuleLoaderException { + logger.finer("Creating "+language.getLanguageName()+" namespace."); ElementNamespace namespace; try { - namespace = X4OLanguageClassLoader.newInstance(ElementNamespace.class, language.getLanguageConfiguration().getDefaultElementNamespace()); - } catch (ClassNotFoundException e) { - throw new X4OLanguageModuleLoaderException(this, e.getMessage(), e); - } + namespace = (ElementNamespace)X4OLanguageClassLoader.newInstance(language.getLanguageConfiguration().getDefaultElementNamespace()); + } catch (InstantiationException e) { + throw new X4OLanguageModuleLoaderException(this,e.getMessage(),e); + } catch (IllegalAccessException e) { + throw new X4OLanguageModuleLoaderException(this,e.getMessage(),e); + } try { - namespace.setElementNamespaceInstanceProvider(X4OLanguageClassLoader.newInstance(ElementNamespaceInstanceProvider.class, language.getLanguageConfiguration().getDefaultElementNamespaceInstanceProvider())); - } catch (ClassNotFoundException e) { - throw new X4OLanguageModuleLoaderException(this, e.getMessage(), e); - } + namespace.setElementNamespaceInstanceProvider((ElementNamespaceInstanceProvider) + X4OLanguageClassLoader.newInstance(language.getLanguageConfiguration().getDefaultElementNamespaceInstanceProvider()) + ); + } catch (InstantiationException e) { + throw new X4OLanguageModuleLoaderException(this,e.getMessage(),e); + } catch (IllegalAccessException e) { + throw new X4OLanguageModuleLoaderException(this,e.getMessage(),e); + } + namespace.setId(id); namespace.setUri(uri); namespace.setSchemaUri(schemaUri); @@ -233,55 +233,57 @@ public class EldModuleLoaderCore implements X4OLanguageModuleLoader { namespace.setSchemaPrefix(schemaPrefix); return namespace; } - - private ElementClass createElementClass(X4OLanguage language, String tag, Class objectClass, Class elementClass, String description) throws X4OLanguageModuleLoaderException { + + private ElementClass createElementClass(X4OLanguage language,String tag,Class objectClass,Class elementClass,String description) throws X4OLanguageModuleLoaderException { try { - ElementClass result = X4OLanguageClassLoader.newInstance(ElementClass.class, language.getLanguageConfiguration().getDefaultElementClass()); + ElementClass result = (ElementClass)X4OLanguageClassLoader.newInstance(language.getLanguageConfiguration().getDefaultElementClass()); result.setId(tag); result.setObjectClass(objectClass); result.setElementClass(elementClass); result.setDescription(description); return result; - } catch (ClassNotFoundException e) { - throw new X4OLanguageModuleLoaderException(this, e.getMessage(), e); + } catch (InstantiationException e) { + throw new X4OLanguageModuleLoaderException(this,e.getMessage(),e); + } catch (IllegalAccessException e) { + throw new X4OLanguageModuleLoaderException(this,e.getMessage(),e); } } - + /** * Creates new configed ElementClassAttribute instance. - * - * @param language The X4OLanguage to create from. - * @param name The name of the attribute. - * @param required Is the attribute required. + * @param language The X4OLanguage to create from. + * @param name The name of the attribute. + * @param required Is the attribute required. * @param converter The converter for the attribute. - * @return The new ElementClassAttribute instance. - * @throws X4OLanguageModuleLoaderException When class could not be created. + * @return The new ElementClassAttribute instance. + * @throws X4OLanguageModuleLoaderException When class could not be created. */ - private ElementClassAttribute createElementClassAttribute(X4OLanguage language, String name, boolean required, ObjectConverter converter) throws X4OLanguageModuleLoaderException { + private ElementClassAttribute createElementClassAttribute(X4OLanguage language,String name,boolean required,ObjectConverter converter) throws X4OLanguageModuleLoaderException { try { - ElementClassAttribute result = X4OLanguageClassLoader.newInstance(ElementClassAttribute.class, language.getLanguageConfiguration().getDefaultElementClassAttribute()); + ElementClassAttribute result = (ElementClassAttribute)X4OLanguageClassLoader.newInstance(language.getLanguageConfiguration().getDefaultElementClassAttribute()); result.setId(name); if (required) { result.setRequired(required); } - if (converter != null) { + if (converter!=null) { result.setObjectConverter(converter); } return result; - } catch (ClassNotFoundException e) { - throw new X4OLanguageModuleLoaderException(this, e.getMessage(), e); + } catch (InstantiationException e) { + throw new X4OLanguageModuleLoaderException(this,e.getMessage(),e); + } catch (IllegalAccessException e) { + throw new X4OLanguageModuleLoaderException(this,e.getMessage(),e); } } - + /** * Adds binding handler to module. - * * @param languageModule The language module. - * @param handler The handler to add the the module. - * @param id The handler id. - * @param description The handler descripion. + * @param handler The handler to add the the module. + * @param id The handler id. + * @param description The handler descripion. */ - private void addBindingHandler(X4OLanguageModuleLocal languageModule, ElementBindingHandler handler, String id, String description) { + private void addBindingHandler(X4OLanguageModuleLocal languageModule,ElementBindingHandler handler,String id,String description) { handler.setId(id); handler.setDescription(description); languageModule.addElementBindingHandler(handler); diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/lang/BeanElement.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/lang/BeanElement.java index dd2c486..98e545f 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/lang/BeanElement.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/lang/BeanElement.java @@ -59,7 +59,7 @@ public class BeanElement extends AbstractElement { try { Class beanClass = X4OLanguageClassLoader.loadClass(className); if (constructorArguments.isEmpty()) { - setElementObject(X4OLanguageClassLoader.newInstance(beanClass)); + setElementObject(beanClass.newInstance()); } else { Class[] arguClass = new Class[constructorArguments.size()]; constructorArguments.toArray(arguClass); diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/lang/ElementModuleBindingHandler.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/lang/ElementModuleBindingHandler.java index 9f2953f..c15424f 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/lang/ElementModuleBindingHandler.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/eld/lang/ElementModuleBindingHandler.java @@ -131,8 +131,8 @@ public class ElementModuleBindingHandler extends AbstractElementBindingHandler< } try { - elementNamespace.setElementNamespaceInstanceProvider(X4OLanguageClassLoader.newInstance(ElementNamespaceInstanceProvider.class, childElement.getLanguageSession().getLanguage().getLanguageConfiguration().getDefaultElementNamespaceInstanceProvider())); - } catch (ClassNotFoundException e) { + elementNamespace.setElementNamespaceInstanceProvider((ElementNamespaceInstanceProvider)X4OLanguageClassLoader.newInstance(childElement.getLanguageSession().getLanguage().getLanguageConfiguration().getDefaultElementNamespaceInstanceProvider())); + } catch (Exception e) { throw new ElementBindingHandlerException("Error loading: "+e.getMessage(),e); } try { diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/element/AbstractElement.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/element/AbstractElement.java index 994291a..2b67851 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/element/AbstractElement.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/element/AbstractElement.java @@ -132,10 +132,10 @@ public abstract class AbstractElement implements Element { */ public void doCharacters(String characters) throws ElementException { try { - Element e = X4OLanguageClassLoader.newInstance(Element.class, getLanguageSession().getLanguage().getLanguageConfiguration().getDefaultElementBodyCharacters()); + Element e = (Element)X4OLanguageClassLoader.newInstance(getLanguageSession().getLanguage().getLanguageConfiguration().getDefaultElementBodyCharacters()); e.setElementObject(characters); addChild(e); - } catch (ClassNotFoundException exception) { + } catch (Exception exception) { throw new ElementException(exception); } } @@ -145,10 +145,10 @@ public abstract class AbstractElement implements Element { */ public void doComment(String comment) throws ElementException { try { - Element e = X4OLanguageClassLoader.newInstance(Element.class, getLanguageSession().getLanguage().getLanguageConfiguration().getDefaultElementBodyComment()); + Element e = (Element)X4OLanguageClassLoader.newInstance(getLanguageSession().getLanguage().getLanguageConfiguration().getDefaultElementBodyComment()); e.setElementObject(comment); addChild(e); - } catch (ClassNotFoundException exception) { + } catch (Exception exception) { throw new ElementException(exception); } } @@ -158,10 +158,10 @@ public abstract class AbstractElement implements Element { */ public void doIgnorableWhitespace(String space) throws ElementException { try { - Element e = X4OLanguageClassLoader.newInstance(Element.class, getLanguageSession().getLanguage().getLanguageConfiguration().getDefaultElementBodyWhitespace()); + Element e = (Element)X4OLanguageClassLoader.newInstance(getLanguageSession().getLanguage().getLanguageConfiguration().getDefaultElementBodyWhitespace()); e.setElementObject(space); addChild(e); - } catch (ClassNotFoundException exception) { + } catch (Exception exception) { throw new ElementException(exception); } } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/element/AbstractElementBindingHandler.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/element/AbstractElementBindingHandler.java index 4ae6b7b..54dfb48 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/element/AbstractElementBindingHandler.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/element/AbstractElementBindingHandler.java @@ -29,7 +29,6 @@ package org.x4o.xml.element; * * @author Willem Cazander * @version 1.0 Apr 16, 2006 - * @param The parent element value object type. */ public abstract class AbstractElementBindingHandler extends AbstractElementMetaBase implements ElementBindingHandler { diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/element/DefaultElementNamespaceInstanceProvider.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/element/DefaultElementNamespaceInstanceProvider.java index 83296e4..34658e6 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/element/DefaultElementNamespaceInstanceProvider.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/element/DefaultElementNamespaceInstanceProvider.java @@ -86,9 +86,13 @@ public class DefaultElementNamespaceInstanceProvider implements ElementNamespace if (elementClass.getObjectClass()!=null) { element.setElementObject(X4OLanguageClassLoader.newInstance(elementClass.getObjectClass())); } - } catch (ClassNotFoundException e) { + } catch (InstantiationException e) { throw new ElementNamespaceInstanceProviderException(this,"Error while providing Element: "+e.getMessage(),e); - } + } catch (IllegalAccessException e) { + throw new ElementNamespaceInstanceProviderException(this,"Error while providing Element: "+e.getMessage(),e); + } /*catch (ClassNotFoundException e) { + throw new ElementNamespaceInstanceProviderException(this,"Error while providing Element: "+e.getMessage(),e); + } */ element.setElementClass(elementClass); element.setLanguageSession(languageSession); return element; diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OConnection.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OConnection.java index e531d46..84720b1 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OConnection.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OConnection.java @@ -28,7 +28,6 @@ import java.util.List; import org.x4o.sax3.io.SAX3PropertyConfig; import org.x4o.xml.lang.X4OLanguage; -import org.x4o.xml.lang.X4OLanguageSession; /** * AbstractX4OConnection is the read/write interface for the classes. @@ -43,23 +42,14 @@ public abstract class AbstractX4OConnection extends AbstractX4OConnectionDebug { protected List phaseSkip = null; public AbstractX4OConnection(X4OLanguage language) { - if (language == null) { - throw new NullPointerException("Can't create X4O connection for null language."); - } - this.language = language; + this.language=language; this.phaseSkip = new ArrayList(2); } - @Override - public final X4OLanguage getLanguage() { + protected X4OLanguage getLanguage() { return language; } - @Override - public final X4OLanguageSession createLanguageSession() { - return language.createLanguageSession(); - } - abstract SAX3PropertyConfig getPropertyConfig(); /** @@ -67,28 +57,23 @@ public abstract class AbstractX4OConnection extends AbstractX4OConnectionDebug { * @param key The key of the property to set. * @param value The vlue of the property to set. */ - @Override - public final void setProperty(String key,Object value) { + public void setProperty(String key,Object value) { getPropertyConfig().setProperty(key, value); } - @Override - public final Object getProperty(String key) { + public Object getProperty(String key) { return getPropertyConfig().getProperty(key); } - @Override - public final Collection getPropertyKeys() { + public Collection getPropertyKeys() { return getPropertyConfig().getPropertyKeys(); } - @Override - public final void setPhaseStop(String phaseId) { + public void setPhaseStop(String phaseId) { phaseStop = phaseId; } - @Override - public final void addPhaseSkip(String phaseId) { - phaseSkip.add(phaseId); + public void addPhaseSkip(String phaseId) { + phaseSkip.add( phaseId ); } } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OConnectionDebug.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OConnectionDebug.java index 9089315..f10c784 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OConnectionDebug.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OConnectionDebug.java @@ -27,7 +27,6 @@ import java.io.OutputStream; import java.io.PrintWriter; import java.io.StringWriter; import java.io.UnsupportedEncodingException; -import java.util.List; import org.x4o.sax3.SAX3WriterXml; import org.x4o.sax3.io.ContentWriter; @@ -37,7 +36,6 @@ import org.x4o.xml.lang.phase.X4OPhase; import org.x4o.xml.lang.phase.X4OPhaseException; import org.x4o.xml.lang.phase.X4OPhaseLanguageRead; import org.x4o.xml.lang.phase.X4OPhaseLanguageWrite; -import org.x4o.xml.lang.phase.X4OPhaseListener; import org.xml.sax.SAXException; import org.xml.sax.helpers.AttributesImpl; @@ -48,52 +46,59 @@ import org.xml.sax.helpers.AttributesImpl; * @version 1.0 Mar 14, 2014 */ public abstract class AbstractX4OConnectionDebug implements X4OConnection { - + private boolean debugStarted = false; - protected final static String ABSTRACT_DEBUG_OUTPUT_HANDLER = "debug/output-handler"; - protected final static String ABSTRACT_DEBUG_OUTPUT_STREAM = "debug/output-stream"; - - protected void debugStart(X4OLanguageSession languageSession, String debugHandlerKey, String debugStreamKey) throws UnsupportedEncodingException, SAXException { + private boolean debugAutoCloseOutputStream = true; + private OutputStream debugCloseOutputStream = null; + protected final static String ABSTRACT_DEBUG_OUTPUT_HANDLER = "debug/output-handler"; + protected final static String ABSTRACT_DEBUG_OUTPUT_STREAM = "debug/output-stream"; + protected final static String ABSTRACT_DEBUG_OUTPUT_STREAM_CLOSE = "debug/output-stream-close"; + + protected void debugStart(X4OLanguageSession languageSession,String debugHandlerKey,String debugStreamKey,String debugStreamCloseKey) throws UnsupportedEncodingException, SAXException { + debugAutoCloseOutputStream = (Boolean)getProperty(debugStreamCloseKey); Object debugOutputHandler = getProperty(debugHandlerKey); Object debugOutputStream = getProperty(debugStreamKey); - // init debug infra - if (languageSession.getX4ODebugWriter() == null) { + if (languageSession.getX4ODebugWriter()==null) { ContentWriter xmlDebugWriter = null; if (debugOutputHandler instanceof ContentWriter) { - xmlDebugWriter = (ContentWriter) debugOutputHandler; + xmlDebugWriter = (ContentWriter)debugOutputHandler; } else if (debugOutputStream instanceof OutputStream) { - xmlDebugWriter = new SAX3WriterXml((OutputStream) debugOutputStream); + debugCloseOutputStream = (OutputStream)debugOutputStream; + xmlDebugWriter = new SAX3WriterXml(debugCloseOutputStream); + } + if (xmlDebugWriter!=null) { xmlDebugWriter.startDocument(); - xmlDebugWriter.startPrefixMapping(X4ODebugWriter.DEBUG_URI_NS, X4ODebugWriter.DEBUG_URI); - // We only close if we started it, this is for recursief debugging AND debug output stream. + xmlDebugWriter.startPrefixMapping("debug", X4ODebugWriter.DEBUG_URI); + X4ODebugWriter debugWriter = new X4ODebugWriter(xmlDebugWriter); + X4OLanguageSessionLocal local = (X4OLanguageSessionLocal)languageSession; + local.setX4ODebugWriter(debugWriter); + + // We only close if we started it, this is for recursief debugging. debugStarted = true; } - if (xmlDebugWriter != null) { - X4ODebugWriter debugWriter = new X4ODebugWriter(xmlDebugWriter); - X4OLanguageSessionLocal local = (X4OLanguageSessionLocal) languageSession; - local.setX4ODebugWriter(debugWriter); - } } - // start debug language + + // debug language if (languageSession.hasX4ODebugWriter()) { try { languageSession.getX4ODebugWriter().debugConnectionStart(languageSession, this); } catch (IOException e) { throw new SAXException(e); } + // Add debug phases for all phases - X4OLanguageSessionLocal local = (X4OLanguageSessionLocal) languageSession; - for (String key : languageSession.getLanguage().getPhaseManager().getPhaseKeys()) { + for (String key:languageSession.getLanguage().getPhaseManager().getPhaseKeys()) { X4OPhase p = languageSession.getLanguage().getPhaseManager().getPhase(key); - List listeners = local.storePhaseListeners(p.getId()); - listeners.add(languageSession.getX4ODebugWriter().createDebugX4OPhaseListener()); + + p.addPhaseListener(languageSession.getX4ODebugWriter().createDebugX4OPhaseListener()); + if (shouldPrintTree(p)) { - listeners.add(languageSession.getX4ODebugWriter().createDebugPrintTreePhaseListener()); + p.addPhaseListener(languageSession.getX4ODebugWriter().createDebugPrintTreePhaseListener()); } } } } - + private boolean shouldPrintTree(X4OPhase p) { String phase = p.getId(); if (X4OPhaseLanguageWrite.WRITE_END.equals(phase)) { @@ -113,22 +118,22 @@ public abstract class AbstractX4OConnectionDebug implements X4OConnection { } return false; } - - protected void debugException(X4OLanguageSession languageSession, Exception e) throws X4OConnectionException { + + protected void debugException(X4OLanguageSession languageSession,Exception e) throws X4OConnectionException { if (!languageSession.hasX4ODebugWriter()) { return; } try { AttributesImpl atts = new AttributesImpl(); - atts.addAttribute("", "message", "", "", e.getMessage()); + atts.addAttribute ("", "message", "", "", e.getMessage()); if (e instanceof X4OPhaseException) { - atts.addAttribute("", "phase", "", "", ((X4OPhaseException) e).getX4OPhaseHandler().getId()); + atts.addAttribute ("", "phase", "", "", ((X4OPhaseException)e).getX4OPhaseHandler().getId()); } languageSession.getX4ODebugWriter().getContentWriter().startElement(X4ODebugWriter.DEBUG_URI, "exceptionStackTrace", "", atts); StringWriter writer = new StringWriter(); PrintWriter printer = new PrintWriter(writer); printer.append('\n'); - if (e.getCause() == null) { + if (e.getCause()==null) { e.printStackTrace(printer); } else { e.getCause().printStackTrace(printer); @@ -137,10 +142,10 @@ public abstract class AbstractX4OConnectionDebug implements X4OConnection { languageSession.getX4ODebugWriter().getContentWriter().characters(stack, 0, stack.length); languageSession.getX4ODebugWriter().getContentWriter().endElement(X4ODebugWriter.DEBUG_URI, "exceptionStackTrace", ""); } catch (SAXException ee) { - throw new X4OConnectionException("Error while writing debug; " + ee.getMessage(), ee); + throw new X4OConnectionException("Error while writing debug; "+ee.getMessage(),ee); } } - + protected void debugStop(X4OLanguageSession languageSession) throws X4OConnectionException { if (!languageSession.hasX4ODebugWriter()) { return; @@ -150,12 +155,20 @@ public abstract class AbstractX4OConnectionDebug implements X4OConnection { if (!debugStarted) { return; // not in this instance started so no stopping then. } - languageSession.getX4ODebugWriter().getContentWriter().endPrefixMapping(X4ODebugWriter.DEBUG_URI_NS); + languageSession.getX4ODebugWriter().getContentWriter().endPrefixMapping("debug"); languageSession.getX4ODebugWriter().getContentWriter().endDocument(); + if (debugCloseOutputStream==null) { + return; // we have handler + } + debugCloseOutputStream.flush(); + if (!debugAutoCloseOutputStream) { + return; // no auto close + } + debugCloseOutputStream.close(); } catch (SAXException ee) { - throw new X4OConnectionException("Error while closing debug; " + ee.getMessage(), ee); + throw new X4OConnectionException("Error while closing debug; "+ee.getMessage(),ee); } catch (IOException ee) { - throw new X4OConnectionException("Error while closing debug; " + ee.getMessage(), ee); + throw new X4OConnectionException("Error while closing debug; "+ee.getMessage(),ee); } } } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OReader.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OReader.java index d9b8345..7ab0527 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OReader.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OReader.java @@ -20,7 +20,7 @@ * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package org.x4o.xml.io; +package org.x4o.xml.io; import java.io.File; import java.io.FileNotFoundException; @@ -29,7 +29,6 @@ import java.io.InputStream; import java.net.URL; import org.x4o.xml.lang.X4OLanguage; -import org.x4o.xml.lang.X4OLanguageSession; import org.xml.sax.SAXException; /** @@ -37,102 +36,77 @@ import org.xml.sax.SAXException; * * @author Willem Cazander * @version 1.0 Aug 11, 2005 - * @param The root element object type. */ @SuppressWarnings("unchecked") abstract public class AbstractX4OReader extends AbstractX4OReaderSession implements X4OReader { - + public AbstractX4OReader(X4OLanguage language) { super(language); } - - public T read(InputStream input, String systemId, URL basePath) throws X4OConnectionException, SAXException, IOException { - try (X4OLanguageSession session = createLanguageSession()) { - readSession(session, input, systemId, basePath); - return (T) session.getRootElement().getElementObject(); - } + + public T read(InputStream input, String systemId, URL basePath) throws X4OConnectionException,SAXException,IOException { + return (T)readSession(input, systemId, basePath).getRootElement().getElementObject(); } - + /** * Reads the file fileName and reads it as an InputStream. - * - * @param fileName The file name to read. - * @throws FileNotFoundException Is thrown is file is not found. - * @throws X4OConnectionException Is thrown after x4o exception. - * @throws SAXException Is thrown after sax xml exception. - * @throws IOException Is thrown after io exception. + * @param fileName The file name to read. + * @throws FileNotFoundException Is thrown is file is not found. + * @throws X4OConnectionException Is thrown after x4o exception. + * @throws SAXException Is thrown after sax xml exception. + * @throws IOException Is thrown after io exception. * @see org.x4o.xml.io.X4OReaderSession#readSession(java.io.InputStream,java.lang.String,java.net.URL) */ - public T readFile(String fileName) throws X4OConnectionException, SAXException, IOException, FileNotFoundException { - try (X4OLanguageSession session = createLanguageSession()) { - readFileSession(session, fileName); - return (T) session.getRootElement().getElementObject(); - } + public T readFile(String fileName) throws X4OConnectionException,SAXException,IOException,FileNotFoundException { + return (T)readFileSession(fileName).getRootElement().getElementObject(); } - + /** * Reads the file and reads it as an InputStream. - * - * @param file The file to read. - * @throws FileNotFoundException Is thrown is file is not found. - * @throws X4OConnectionException Is thrown after x4o exception. - * @throws SAXException Is thrown after sax xml exception. - * @throws IOException Is thrown after io exception. + * @param file The file to read. + * @throws FileNotFoundException Is thrown is file is not found. + * @throws X4OConnectionException Is thrown after x4o exception. + * @throws SAXException Is thrown after sax xml exception. + * @throws IOException Is thrown after io exception. * @see org.x4o.xml.io.X4OReaderSession#readSession(java.io.InputStream,java.lang.String,java.net.URL) */ - public T readFile(File file) throws X4OConnectionException, SAXException, IOException, FileNotFoundException { - try (X4OLanguageSession session = createLanguageSession()) { - readFileSession(session, file); - return (T) session.getRootElement().getElementObject(); - } + public T readFile(File file) throws X4OConnectionException,SAXException,IOException,FileNotFoundException { + return (T)readFileSession(file).getRootElement().getElementObject(); } - + /** * reads an resource locaction. - * - * @param resourceName The resource to readr. - * @throws X4OConnectionException Is thrown after x4o exception. - * @throws SAXException Is thrown after sax xml exception. - * @throws IOException Is thrown after io exception. + * @param resourceName The resource to readr. + * @throws X4OConnectionException Is thrown after x4o exception. + * @throws SAXException Is thrown after sax xml exception. + * @throws IOException Is thrown after io exception. * @see org.x4o.xml.io.X4OReaderSession#readSession(java.io.InputStream,java.lang.String,java.net.URL) */ - public T readResource(String resourceName) throws X4OConnectionException, SAXException, IOException { - try (X4OLanguageSession session = createLanguageSession()) { - readResourceSession(session, resourceName); - return (T) session.getRootElement().getElementObject(); - } + public T readResource(String resourceName) throws X4OConnectionException,SAXException,IOException { + return (T)readResourceSession(resourceName).getRootElement().getElementObject(); } - + /** * Converts a String to a InputStream to is can me readd by SAX. - * - * @param xmlString The xml as String to read. - * @throws X4OConnectionException Is thrown after x4o exception. - * @throws SAXException Is thrown after sax xml exception. - * @throws IOException Is thrown after io exception. + * @param xmlString The xml as String to read. + * @throws X4OConnectionException Is thrown after x4o exception. + * @throws SAXException Is thrown after sax xml exception. + * @throws IOException Is thrown after io exception. * @see org.x4o.xml.io.X4OReaderSession#readSession(java.io.InputStream,java.lang.String,java.net.URL) */ - public T readString(String xmlString) throws X4OConnectionException, SAXException, IOException { - try (X4OLanguageSession session = createLanguageSession()) { - readStringSession(session, xmlString); - return (T) session.getRootElement().getElementObject(); - } + public T readString(String xmlString) throws X4OConnectionException,SAXException,IOException { + return (T)readStringSession(xmlString).getRootElement().getElementObject(); } - + /** - * Fetched the data direct from remote url to a InputStream to is can me readd - * by SAX. - * - * @param url The url to read. - * @throws X4OConnectionException Is thrown after x4o exception. - * @throws SAXException Is thrown after sax xml exception. - * @throws IOException Is thrown after io exception. + * Fetched the data direct from remote url to a InputStream to is can me readd by SAX. + * @param url The url to read. + * @throws X4OConnectionException Is thrown after x4o exception. + * @throws SAXException Is thrown after sax xml exception. + * @throws IOException Is thrown after io exception. * @see org.x4o.xml.io.X4OReaderSession#readSession(java.io.InputStream,java.lang.String,java.net.URL) */ - public T readUrl(URL url) throws X4OConnectionException, SAXException, IOException { - try (X4OLanguageSession session = createLanguageSession()) { - readUrlSession(session, url); - return (T) session.getRootElement().getElementObject(); - } + public T readUrl(URL url) throws X4OConnectionException,SAXException,IOException { + return (T)readUrlSession(url).getRootElement().getElementObject(); } } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OReaderSession.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OReaderSession.java index 49af94d..649481f 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OReaderSession.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OReaderSession.java @@ -20,94 +20,137 @@ * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package org.x4o.xml.io; +package org.x4o.xml.io; -import java.io.ByteArrayInputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.io.InputStream; -import java.net.URL; +import java.io.ByteArrayInputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.io.InputStream; +import java.net.URL; -import org.x4o.xml.lang.X4OLanguage; +import org.x4o.xml.lang.X4OLanguage; import org.x4o.xml.lang.X4OLanguageClassLoader; -import org.x4o.xml.lang.X4OLanguageSession; -import org.xml.sax.SAXException; +import org.x4o.xml.lang.X4OLanguageSession; +import org.xml.sax.SAXException; /** * AbstractX4OReaderSession * * @author Willem Cazander * @version 1.0 Apr 6, 2013 - * @param The root element object type. */ abstract public class AbstractX4OReaderSession extends AbstractX4OConnection implements X4OReaderSession { - + public AbstractX4OReaderSession(X4OLanguage language) { super(language); } - public void readFileSession(X4OLanguageSession session, String fileName) throws X4OConnectionException, SAXException, IOException, FileNotFoundException { - if (fileName == null) { + /** + * Reads the file fileName and reads it as an InputStream. + * @param fileName The file name to read. + * @throws FileNotFoundException Is thrown is file is not found. + * @throws X4OConnectionException Is thrown after x4o exception. + * @throws SAXException Is thrown after sax xml exception. + * @throws IOException Is thrown after io exception. + * @see org.x4o.xml.io.X4OReaderSession#readSession(java.io.InputStream,java.lang.String,java.net.URL) + */ + public X4OLanguageSession readFileSession(String fileName) throws X4OConnectionException,SAXException,IOException,FileNotFoundException { + if (fileName==null) { throw new NullPointerException("Can't convert null fileName to file object."); - } - readFileSession(session, new File(fileName)); + } + return readFileSession(new File(fileName)); } - - public void readFileSession(X4OLanguageSession session, File file) throws X4OConnectionException, SAXException, IOException, FileNotFoundException { - if (file == null) { + + /** + * Reads the file and reads it as an InputStream. + * @param file The file to read. + * @throws FileNotFoundException Is thrown is file is not found. + * @throws X4OConnectionException Is thrown after x4o exception. + * @throws SAXException Is thrown after sax xml exception. + * @throws IOException Is thrown after io exception. + * @see org.x4o.xml.io.X4OReaderSession#readSession(java.io.InputStream,java.lang.String,java.net.URL) + */ + public X4OLanguageSession readFileSession(File file) throws X4OConnectionException,SAXException,IOException,FileNotFoundException { + if (file==null) { throw new NullPointerException("Can't read null file."); } - if (file.exists() == false) { - throw new FileNotFoundException("File does not exists; " + file); + if (file.exists()==false) { + throw new FileNotFoundException("File does not exists; "+file); } - if (file.canRead() == false) { - throw new IOException("File exists but can't read file: " + file); + if (file.canRead()==false) { + throw new IOException("File exists but can't read file: "+file); } URL basePath = new File(file.getAbsolutePath()).toURI().toURL(); - try (InputStream inputStream = new FileInputStream(file)) { - readSession(session, inputStream, file.getAbsolutePath(), basePath); + InputStream inputStream = new FileInputStream(file); + try { + return readSession(inputStream,file.getAbsolutePath(),basePath); + } finally { + inputStream.close(); } } - - public void readResourceSession(X4OLanguageSession session, String resourceName) throws X4OConnectionException, SAXException, IOException { - if (resourceName == null) { + + /** + * reads an resource locaction. + * @param resourceName The resource to readr. + * @throws X4OConnectionException Is thrown after x4o exception. + * @throws SAXException Is thrown after sax xml exception. + * @throws IOException Is thrown after io exception. + * @see org.x4o.xml.io.X4OReaderSession#readSession(java.io.InputStream,java.lang.String,java.net.URL) + */ + public X4OLanguageSession readResourceSession(String resourceName) throws X4OConnectionException,SAXException,IOException { + if (resourceName==null) { throw new NullPointerException("Can't read null resourceName from classpath."); } URL url = X4OLanguageClassLoader.getResource(resourceName); - if (url == null) { - throw new NullPointerException("Could not find resource on classpath: " + resourceName); + if (url==null) { + throw new NullPointerException("Could not find resource on classpath: "+resourceName); } String baseUrl = url.toExternalForm(); int lastSlash = baseUrl.lastIndexOf('/'); - if (lastSlash > 0 && (lastSlash + 1) < baseUrl.length()) { - baseUrl = baseUrl.substring(0, lastSlash + 1); + if (lastSlash > 0 && (lastSlash+1) < baseUrl.length()) { + baseUrl = baseUrl.substring(0,lastSlash+1); } URL basePath = new URL(baseUrl); - try (InputStream inputStream = X4OLanguageClassLoader.getResourceAsStream(resourceName)) { - readSession(session, inputStream, url.toExternalForm(), basePath); + InputStream inputStream = X4OLanguageClassLoader.getResourceAsStream(resourceName); + try { + return readSession(inputStream,url.toExternalForm(),basePath); + } finally { + inputStream.close(); } } - - public void readStringSession(X4OLanguageSession session, String xmlString) throws X4OConnectionException, SAXException, IOException { - if (xmlString == null) { + + /** + * Converts a String to a InputStream to is can me read by SAX. + * @param xmlString The xml as (UTF-8) String to read. + * @throws X4OConnectionException Is thrown after x4o exception. + * @throws SAXException Is thrown after sax xml exception. + * @throws IOException Is thrown after io exception. + * @see org.x4o.xml.io.X4OReaderSession#readSession(java.io.InputStream,java.lang.String,java.net.URL) + */ + public X4OLanguageSession readStringSession(String xmlString) throws X4OConnectionException,SAXException,IOException { + if (xmlString==null) { throw new NullPointerException("Can't read null xml string."); } URL basePath = new File(System.getProperty("user.dir")).toURI().toURL(); - String encoding = (String) getProperty(DefaultX4OReader.INPUT_ENCODING); - try (InputStream inputStream = new ByteArrayInputStream(xmlString.getBytes(encoding))) { - readSession(session, inputStream, "inline-xml", basePath); - } + String encoding = (String)getProperty(DefaultX4OReader.INPUT_ENCODING); + return readSession(new ByteArrayInputStream(xmlString.getBytes(encoding)),"inline-xml",basePath); } - - public void readUrlSession(X4OLanguageSession session, URL url) throws X4OConnectionException, SAXException, IOException { - if (url == null) { + + /** + * Fetched the data direct from remote url to a InputStream to is can me readd by SAX. + * @param url The url to read. + * @throws X4OConnectionException Is thrown after x4o exception. + * @throws SAXException Is thrown after sax xml exception. + * @throws IOException Is thrown after io exception. + * @see org.x4o.xml.io.X4OReaderSession#readSession(java.io.InputStream,java.lang.String,java.net.URL) + */ + public X4OLanguageSession readUrlSession(URL url) throws X4OConnectionException,SAXException,IOException { + if (url==null) { throw new NullPointerException("Can't read null url."); } - URL basePath = new URL(url.toExternalForm().substring(0, url.toExternalForm().length() - url.getFile().length())); - try (InputStream inputStream = url.openStream()) { - readSession(session, inputStream, url.toExternalForm(), basePath); - } + URL basePath = new URL(url.toExternalForm().substring(0,url.toExternalForm().length()-url.getFile().length())); + return readSession(url.openStream(),url.toExternalForm(),basePath); } } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OWriter.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OWriter.java index 5311702..5e0d492 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OWriter.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OWriter.java @@ -29,7 +29,6 @@ import java.io.OutputStream; import org.x4o.xml.element.Element; import org.x4o.xml.lang.X4OLanguage; -import org.x4o.xml.lang.X4OLanguageClassLoader; import org.x4o.xml.lang.X4OLanguageSession; import org.xml.sax.SAXException; @@ -38,20 +37,23 @@ import org.xml.sax.SAXException; * * @author Willem Cazander * @version 1.0 Apr 6, 2013 - * @param The root element object type. */ public abstract class AbstractX4OWriter extends AbstractX4OWriterSession implements X4OWriter { public AbstractX4OWriter(X4OLanguage language) { super(language); } - - protected X4OLanguageSession createObjectContext(T object) throws SAXException { + + abstract X4OLanguageSession createLanguageSession(); + + private X4OLanguageSession toObjectContext(T object) throws SAXException { X4OLanguageSession context = createLanguageSession(); Element rootElement = null; try { - rootElement = X4OLanguageClassLoader.newInstance(Element.class, context.getLanguage().getLanguageConfiguration().getDefaultElement()); - } catch (ClassNotFoundException e) { + rootElement = (Element)context.getLanguage().getLanguageConfiguration().getDefaultElement().newInstance(); + } catch (InstantiationException e) { + throw new SAXException(e); + } catch (IllegalAccessException e) { throw new SAXException(e); } rootElement.setElementObject(object); @@ -59,28 +61,20 @@ public abstract class AbstractX4OWriter extends AbstractX4OWriterSession i context.setRootElement(rootElement); return context; } - - public void write(T object, OutputStream output) throws X4OConnectionException, SAXException, IOException { - try (X4OLanguageSession session = createObjectContext(object)) { - writeSession(session, output); - } + + public void write(T object,OutputStream output) throws X4OConnectionException,SAXException,IOException { + writeSession(toObjectContext(object), output); } - - public void writeFile(T object, String fileName) throws X4OConnectionException, SAXException, IOException, FileNotFoundException { - try (X4OLanguageSession session = createObjectContext(object)) { - writeFileSession(session, fileName); - } + + public void writeFile(T object,String fileName) throws X4OConnectionException,SAXException,IOException,FileNotFoundException { + writeFileSession(toObjectContext(object), fileName); } - - public void writeFile(T object, File file) throws X4OConnectionException, SAXException, IOException, FileNotFoundException { - try (X4OLanguageSession session = createObjectContext(object)) { - writeFileSession(session, file); - } + + public void writeFile(T object,File file) throws X4OConnectionException,SAXException,IOException,FileNotFoundException { + writeFileSession(toObjectContext(object), file); } - - public String writeString(T object) throws X4OConnectionException, SAXException, IOException, FileNotFoundException { - try (X4OLanguageSession session = createObjectContext(object)) { - return writeStringSession(session); - } + + public String writeString(T object) throws X4OConnectionException,SAXException,IOException,FileNotFoundException { + return writeStringSession(toObjectContext(object)); } } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OWriterSession.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OWriterSession.java index ae1117d..8a37cba 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OWriterSession.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/AbstractX4OWriterSession.java @@ -38,34 +38,36 @@ import org.xml.sax.SAXException; * * @author Willem Cazander * @version 1.0 Apr 6, 2013 - * @param The root element object type. */ public abstract class AbstractX4OWriterSession extends AbstractX4OConnection implements X4OWriterSession { public AbstractX4OWriterSession(X4OLanguage language) { super(language); } - - public void writeFileSession(X4OLanguageSession languageSession, String fileName) throws X4OConnectionException, SAXException, IOException { - if (fileName == null) { + + public void writeFileSession(X4OLanguageSession languageSession,String fileName) throws X4OConnectionException,SAXException,IOException { + if (fileName==null) { throw new NullPointerException("Can't convert null fileName to file object."); - } - writeFileSession(languageSession, new File(fileName)); + } + writeFileSession(languageSession,new File(fileName)); } - - public void writeFileSession(X4OLanguageSession languageSession, File file) throws X4OConnectionException, SAXException, IOException { - if (file == null) { + + public void writeFileSession(X4OLanguageSession languageSession,File file) throws X4OConnectionException,SAXException,IOException { + if (file==null) { throw new NullPointerException("Can't read null file."); } - try (OutputStream outputStream = new FileOutputStream(file)) { - writeSession(languageSession, outputStream); + OutputStream outputStream = new FileOutputStream(file); + try { + writeSession(languageSession,outputStream); + } finally { + outputStream.close(); } } - - public String writeStringSession(X4OLanguageSession languageSession) throws X4OConnectionException, SAXException, IOException { + + public String writeStringSession(X4OLanguageSession languageSession) throws X4OConnectionException,SAXException,IOException { ByteArrayOutputStream out = new ByteArrayOutputStream(4096); writeSession(languageSession, out); - String encoding = (String) getProperty(SAX3WriterXml.OUTPUT_ENCODING); + String encoding = (String)getProperty(SAX3WriterXml.OUTPUT_ENCODING); return out.toString(encoding); } } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/DefaultX4OReader.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/DefaultX4OReader.java index 9bcf4d6..9a9c708 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/DefaultX4OReader.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/DefaultX4OReader.java @@ -27,8 +27,6 @@ import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.URL; -import java.util.HashMap; -import java.util.Map; import javax.el.ValueExpression; import javax.xml.parsers.ParserConfigurationException; @@ -38,9 +36,9 @@ import org.x4o.sax3.io.SAX3PropertyConfig; import org.x4o.sax3.io.SAX3XMLConstants; import org.x4o.sax3.io.SAX3PropertyConfig.PropertyConfigItem; import org.x4o.xml.lang.X4OLanguage; -import org.x4o.xml.lang.X4OLanguageLocal; import org.x4o.xml.lang.X4OLanguageSession; import org.x4o.xml.lang.X4OLanguageSessionLocal; +import org.x4o.xml.lang.phase.X4OPhaseException; import org.x4o.xml.lang.phase.X4OPhaseType; import org.xml.sax.EntityResolver; import org.xml.sax.ErrorHandler; @@ -52,14 +50,15 @@ import org.xml.sax.SAXException; * * @author Willem Cazander * @version 1.0 Aug 9, 2012 - * @param The root element object type. */ public class DefaultX4OReader extends AbstractX4OReader { + private X4OLanguageSession languageSession = null; + private final SAX3PropertyConfig propertyConfig; - private final Map elBeans = new HashMap<>(); private final static String PROPERTY_CONTEXT_PREFIX = SAX3PropertyConfig.X4O_PROPERTIES_PREFIX+"reader/x4o/"; + public final static SAX3PropertyConfig DEFAULT_PROPERTY_CONFIG; public final static String SAX_ERROR_HANDLER = PROPERTY_CONTEXT_PREFIX + "sax/error-handler"; public final static String SAX_ENTITY_RESOLVER = PROPERTY_CONTEXT_PREFIX + "sax/entity-resolver"; @@ -76,9 +75,10 @@ public class DefaultX4OReader extends AbstractX4OReader { public final static String VALIDATION_INPUT_SCHEMA = PROPERTY_CONTEXT_PREFIX + "validation/input-schema"; public final static String DEBUG_OUTPUT_HANDLER = PROPERTY_CONTEXT_PREFIX + ABSTRACT_DEBUG_OUTPUT_HANDLER; public final static String DEBUG_OUTPUT_STREAM = PROPERTY_CONTEXT_PREFIX + ABSTRACT_DEBUG_OUTPUT_STREAM; + public final static String DEBUG_OUTPUT_STREAM_CLOSE = PROPERTY_CONTEXT_PREFIX + ABSTRACT_DEBUG_OUTPUT_STREAM_CLOSE; static { - DEFAULT_PROPERTY_CONFIG = new SAX3PropertyConfig(true, null, PROPERTY_CONTEXT_PREFIX, + DEFAULT_PROPERTY_CONFIG = new SAX3PropertyConfig(true,null,PROPERTY_CONTEXT_PREFIX, new PropertyConfigItem(SAX_ERROR_HANDLER,ErrorHandler.class), new PropertyConfigItem(SAX_ENTITY_RESOLVER,EntityResolver.class), new PropertyConfigItem(DOC_EMPTY_NAMESPACE_URI,String.class), @@ -93,76 +93,68 @@ public class DefaultX4OReader extends AbstractX4OReader { new PropertyConfigItem(VALIDATION_INPUT_DOC,Boolean.class,false), new PropertyConfigItem(VALIDATION_INPUT_SCHEMA,Boolean.class,false), new PropertyConfigItem(DEBUG_OUTPUT_HANDLER,ContentWriter.class), - new PropertyConfigItem(DEBUG_OUTPUT_STREAM,OutputStream.class) + new PropertyConfigItem(DEBUG_OUTPUT_STREAM,OutputStream.class), + new PropertyConfigItem(DEBUG_OUTPUT_STREAM_CLOSE,Boolean.class,true) ); } public DefaultX4OReader(X4OLanguage language) { super(language); - propertyConfig = new SAX3PropertyConfig(DEFAULT_PROPERTY_CONFIG, PROPERTY_CONTEXT_PREFIX); + languageSession = language.createLanguageSession(); + propertyConfig = new SAX3PropertyConfig(DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX); } - /** - * @see org.x4o.xml.io.AbstractX4OConnection#getPropertyConfig() - */ @Override - public SAX3PropertyConfig getPropertyConfig() { + SAX3PropertyConfig getPropertyConfig() { return propertyConfig; } - @Override - public void readSession(X4OLanguageSession languageSession, InputStream input, String systemId, URL basePath) throws X4OConnectionException, SAXException, IOException { + public X4OLanguageSession readSession(InputStream input, String systemId, URL basePath) throws X4OConnectionException, SAXException, IOException { setProperty(INPUT_STREAM, input); setProperty(INPUT_SYSTEM_ID, systemId); setProperty(INPUT_BASE_PATH, basePath); - for (String name : elBeans.keySet()) { - Object bean = elBeans.get(name); - ValueExpression ve = languageSession.getExpressionLanguageFactory().createValueExpression(languageSession.getExpressionLanguageContext(),"${"+name+"}", bean.getClass()); - ve.setValue(languageSession.getExpressionLanguageContext(), bean); - } - readSession(languageSession); + read(); + return languageSession; } - public void addELBeanInstance(String name, Object bean) { - if (name == null) { + public void addELBeanInstance(String name,Object bean) { + if (name==null) { throw new NullPointerException("Can't add null name."); } - if (name.length() == 0) { + if (name.length()==0) { throw new NullPointerException("Can't add empty name."); } - if (bean == null) { + if (bean==null) { throw new NullPointerException("Can't add null bean."); } - elBeans.put(name, bean); + ValueExpression ve = languageSession.getExpressionLanguageFactory().createValueExpression(languageSession.getExpressionLanguageContext(),"${"+name+"}", bean.getClass()); + ve.setValue(languageSession.getExpressionLanguageContext(), bean); } /** * Parses the input stream as a X4O document. */ - protected void readSession(X4OLanguageSession languageSession) throws X4OConnectionException, SAXException, IOException { + protected void read() throws X4OConnectionException,SAXException,IOException { // Extra check if we have a language - if (languageSession.getLanguage() == null) { + if (languageSession.getLanguage()==null) { throw new X4OConnectionException("languageSession is broken getLanguage() returns null."); } // Insert stop/skip phase if we allowed to. TODO: move layer ? if (languageSession instanceof X4OLanguageSessionLocal) { X4OLanguageSessionLocal ll = (X4OLanguageSessionLocal)languageSession; - if (phaseStop != null) { + if (phaseStop!=null) { ll.setPhaseStop(phaseStop); } - for (String phaseId : phaseSkip) { + for (String phaseId:phaseSkip) { ll.addPhaseSkip(phaseId); } } // init debug - debugStart(languageSession, DEBUG_OUTPUT_HANDLER, DEBUG_OUTPUT_STREAM); + debugStart(languageSession, DEBUG_OUTPUT_HANDLER, DEBUG_OUTPUT_STREAM, DEBUG_OUTPUT_STREAM_CLOSE); try { - // Run init (auto once) - X4OLanguageLocal.class.cast(languageSession.getLanguage()).init(languageSession); - // Run document parsing X4OContentParser parser = new X4OContentParser(propertyConfig); parser.parse(languageSession); @@ -193,4 +185,17 @@ public class DefaultX4OReader extends AbstractX4OReader { debugStop(languageSession); } } + + public void releaseSession(X4OLanguageSession context) throws X4OPhaseException { + if (context==null) { + return; + } + if (context.getLanguage()==null) { + return; + } + if (context.getLanguage().getPhaseManager()==null) { + return; + } + context.getLanguage().getPhaseManager().doReleasePhaseManual(context); + } } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/DefaultX4OWriter.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/DefaultX4OWriter.java index e2d4da5..f757376 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/DefaultX4OWriter.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/DefaultX4OWriter.java @@ -46,7 +46,6 @@ import org.x4o.xml.element.ElementInterface; import org.x4o.xml.element.ElementNamespace; import org.x4o.xml.element.ElementObjectPropertyValueException; import org.x4o.xml.lang.X4OLanguage; -import org.x4o.xml.lang.X4OLanguageLocal; import org.x4o.xml.lang.X4OLanguageSession; import org.x4o.xml.lang.X4OLanguageModule; import org.x4o.xml.lang.phase.X4OPhaseException; @@ -60,32 +59,32 @@ import org.xml.sax.helpers.AttributesImpl; * * @author Willem Cazander * @version 1.0 Apr 6, 2013 - * @param The root element object type. */ public class DefaultX4OWriter extends AbstractX4OWriter { private final SAX3PropertyConfig propertyConfig; - private boolean schemaUriPrint; - private String schemaUriRoot; - private final static AttributeEntryComparator ATTR_ENTRY_COMPARATOR = new AttributeEntryComparator(); private final static String PROPERTY_CONTEXT_PREFIX = SAX3PropertyConfig.X4O_PROPERTIES_PREFIX+"writer/x4o/"; + public final static SAX3PropertyConfig DEFAULT_PROPERTY_CONFIG; + public final static String OUTPUT_STREAM = PROPERTY_CONTEXT_PREFIX+"output/stream"; public final static String OUTPUT_XDBX = PROPERTY_CONTEXT_PREFIX+"output/xdbx"; public final static String SCHEMA_PRINT = PROPERTY_CONTEXT_PREFIX+"schema/print"; public final static String SCHEMA_ROOT_URI = PROPERTY_CONTEXT_PREFIX+"schema/root-uri"; public final static String DEBUG_OUTPUT_HANDLER = PROPERTY_CONTEXT_PREFIX + ABSTRACT_DEBUG_OUTPUT_HANDLER; public final static String DEBUG_OUTPUT_STREAM = PROPERTY_CONTEXT_PREFIX + ABSTRACT_DEBUG_OUTPUT_STREAM; + public final static String DEBUG_OUTPUT_STREAM_CLOSE = PROPERTY_CONTEXT_PREFIX + ABSTRACT_DEBUG_OUTPUT_STREAM_CLOSE; static { - DEFAULT_PROPERTY_CONFIG = new SAX3PropertyConfig(true, SAX3WriterXml.DEFAULT_PROPERTY_CONFIG, PROPERTY_CONTEXT_PREFIX, + DEFAULT_PROPERTY_CONFIG = new SAX3PropertyConfig(true,SAX3WriterXml.DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX, new PropertyConfigItem(true,OUTPUT_STREAM,OutputStream.class), new PropertyConfigItem(OUTPUT_XDBX,Boolean.class,false), new PropertyConfigItem(SCHEMA_PRINT,Boolean.class,true), new PropertyConfigItem(SCHEMA_ROOT_URI,String.class), new PropertyConfigItem(DEBUG_OUTPUT_HANDLER,ContentWriter.class), - new PropertyConfigItem(DEBUG_OUTPUT_STREAM,OutputStream.class) + new PropertyConfigItem(DEBUG_OUTPUT_STREAM,OutputStream.class), + new PropertyConfigItem(DEBUG_OUTPUT_STREAM_CLOSE,Boolean.class,true) ); } @@ -95,7 +94,7 @@ public class DefaultX4OWriter extends AbstractX4OWriter { */ public DefaultX4OWriter(X4OLanguage language) { super(language); - propertyConfig = new SAX3PropertyConfig(DEFAULT_PROPERTY_CONFIG, PROPERTY_CONTEXT_PREFIX); + propertyConfig = new SAX3PropertyConfig(DEFAULT_PROPERTY_CONFIG,PROPERTY_CONTEXT_PREFIX); } /** @@ -105,15 +104,18 @@ public class DefaultX4OWriter extends AbstractX4OWriter { return propertyConfig; } + X4OLanguageSession createLanguageSession() { + return getLanguage().createLanguageSession(); + } + /** * @see org.x4o.xml.io.X4OWriterSession#writeSession(org.x4o.xml.lang.X4OLanguageSession, java.io.OutputStream) */ - public void writeSession(X4OLanguageSession languageSession, OutputStream output) throws X4OConnectionException,SAXException,IOException { + public void writeSession(X4OLanguageSession languageSession,OutputStream output) throws X4OConnectionException,SAXException,IOException { setProperty(OUTPUT_STREAM, output); addPhaseSkip(X4OPhaseLanguageWrite.WRITE_RELEASE); - debugStart(languageSession, DEBUG_OUTPUT_HANDLER, DEBUG_OUTPUT_STREAM); + debugStart(languageSession, DEBUG_OUTPUT_HANDLER, DEBUG_OUTPUT_STREAM, DEBUG_OUTPUT_STREAM_CLOSE); try { - X4OLanguageLocal.class.cast(languageSession.getLanguage()).init(languageSession); languageSession.getLanguage().getPhaseManager().runPhases(languageSession, X4OPhaseType.XML_WRITE); } catch (X4OPhaseException e) { throw new X4OConnectionException(e); @@ -121,21 +123,23 @@ public class DefaultX4OWriter extends AbstractX4OWriter { runWrite(languageSession); } - @SuppressWarnings("resource") // caller closes the resource thus writerXML and writerXDBX are not closed + private AttributeEntryComparator attributeEntryComparator = new AttributeEntryComparator(); + private boolean schemaUriPrint; + private String schemaUriRoot; + private void runWrite(X4OLanguageSession languageSession) throws X4OConnectionException { OutputStream out = (OutputStream)getProperty(OUTPUT_STREAM); try { String encoding = getPropertyConfig().getPropertyString(SAX3WriterXml.OUTPUT_ENCODING); schemaUriPrint = getPropertyConfig().getPropertyBoolean(SCHEMA_PRINT); schemaUriRoot = getPropertyConfig().getPropertyString(SCHEMA_ROOT_URI); - if (encoding == null) { - encoding = SAX3XMLConstants.XML_DEFAULT_ENCODING; - } + if (encoding==null) { encoding = SAX3XMLConstants.XML_DEFAULT_ENCODING; } + Element root = languageSession.getRootElement(); - if (schemaUriRoot == null) { + if (schemaUriRoot==null) { String rootUri = findElementUri(root); ElementNamespace ns = languageSession.getLanguage().findElementNamespace(rootUri); - if (ns != null) { + if (ns!=null) { schemaUriRoot = ns.getSchemaUri(); } } @@ -152,9 +156,9 @@ public class DefaultX4OWriter extends AbstractX4OWriter { } writer.startDocument(); - Map prefixes = new HashMap<>(); + Map prefixes = new HashMap(); startPrefixTree(root,prefixes); - for (String uri : prefixes.keySet()) { + for (String uri:prefixes.keySet()) { String prefix = prefixes.get(uri); writer.startPrefixMapping(prefix, uri); } @@ -170,7 +174,7 @@ public class DefaultX4OWriter extends AbstractX4OWriter { debugException(languageSession, e); throw new X4OConnectionException(e); } finally { - if (out != null) { + if (out!=null) { try { out.close(); } catch (IOException e) { @@ -181,20 +185,20 @@ public class DefaultX4OWriter extends AbstractX4OWriter { } } - private void startPrefixTree(Element element, Map result) throws SAXException { + private void startPrefixTree(Element element,Map result) throws SAXException { String elementUri = findElementUri(element); - if (result.containsKey(elementUri) == false) { - String elementUriPrefix = findNamespacePrefix(element, elementUri); + if (result.containsKey(elementUri)==false) { + String elementUriPrefix = findNamespacePrefix(element,elementUri); result.put(elementUri, elementUriPrefix); } - for (Element e : element.getChilderen()) { + for (Element e:element.getChilderen()) { startPrefixTree(e,result); } } private List getProperties(Class objectClass) { List result = new ArrayList(); - for (Method m : objectClass.getMethods()) { + for (Method m:objectClass.getMethods()) { Class[] types = m.getParameterTypes(); if (types.length != 0) { continue; @@ -202,84 +206,81 @@ public class DefaultX4OWriter extends AbstractX4OWriter { if (m.getName().equals("getClass")) { continue; } - if (m.getName().startsWith("get") == false) { + if (m.getName().startsWith("get")==false) { continue; } - String name = m.getName().substring(3, 4).toLowerCase() + m.getName().substring(4); + String name = m.getName().substring(3,4).toLowerCase()+m.getName().substring(4); result.add(name); + } return result; } - - static final class AttributeEntry { - final String id; - final String value; - final Integer writeOrder; - - public AttributeEntry(String id, String value, Integer writeOrder) { - this.id = id; - this.value = value; - this.writeOrder = writeOrder; - } + class AttributeEntry { + String id; + String value; + Integer writeOrder; } - - static final class AttributeEntryComparator implements Comparator { - - @Override + class AttributeEntryComparator implements Comparator { public int compare(AttributeEntry o1, AttributeEntry o2) { return o1.writeOrder.compareTo(o2.writeOrder); } } - - private void writeTree(ContentWriter writer, Element element, boolean isRoot) throws SAXException, ElementObjectPropertyValueException { + private void writeTree(ContentWriter writer,Element element,boolean isRoot) throws SAXException, ElementObjectPropertyValueException { List attr = new ArrayList(20); - if (element.getElementClass().getAutoAttributes() != null && element.getElementClass().getAutoAttributes() == false) { - for (ElementClassAttribute eca : element.getElementClass().getElementClassAttributes()) { - if (eca.getRunBeanValue() != null && eca.getRunBeanValue() == false) { + if (element.getElementClass().getAutoAttributes()!=null && element.getElementClass().getAutoAttributes()==false) { + for (ElementClassAttribute eca:element.getElementClass().getElementClassAttributes()) { + if (eca.getRunBeanValue()!=null && eca.getRunBeanValue()==false) { continue; } - Object value = element.getLanguageSession().getElementObjectPropertyValue().getProperty(element.getElementObject(), eca.getId()); - if (value == null) { + + Object value = element.getLanguageSession().getElementObjectPropertyValue().getProperty(element.getElementObject(),eca.getId()); + if (value==null) { continue; } - AttributeEntry e = new AttributeEntry(eca.getId(), "" + value, calcOrderNumber(eca.getId(), eca.getWriteOrder())); + AttributeEntry e = new AttributeEntry(); + e.id = eca.getId(); + e.value = ""+value; + e.writeOrder = calcOrderNumber(e.id,eca.getWriteOrder()); attr.add(e); } } else { - for (String p : getProperties(element.getElementObject().getClass())) { + for (String p:getProperties(element.getElementObject().getClass())) { Integer writeOrder = null; ElementClassAttribute eca = element.getElementClass().getElementClassAttributeByName(p); - if (eca != null) { + if (eca!=null) { writeOrder = eca.getWriteOrder(); } - if (eca != null && eca.getRunBeanValue() != null && eca.getRunBeanValue()) { + if (eca!=null && eca.getRunBeanValue()!=null && eca.getRunBeanValue()) { continue; } boolean writeValue = true; - for (ElementInterface ei : element.getLanguageSession().getLanguage().findElementInterfaces(element.getElementObject().getClass())) { + for (ElementInterface ei:element.getLanguageSession().getLanguage().findElementInterfaces(element.getElementObject().getClass())) { eca = ei.getElementClassAttributeByName(p); - if (eca != null && writeOrder == null) { + if (eca!=null && writeOrder==null) { writeOrder = eca.getWriteOrder(); // add interface but allow override local } - if (eca != null && eca.getRunBeanValue() != null && eca.getRunBeanValue() == false) { + if (eca!=null && eca.getRunBeanValue()!=null && eca.getRunBeanValue()==false) { writeValue = false; break; } } - if (writeValue == false) { + if (writeValue==false) { continue; } // TODO: check attr see reader - Object value = element.getLanguageSession().getElementObjectPropertyValue().getProperty(element.getElementObject(), p); - if (value == null) { + Object value = element.getLanguageSession().getElementObjectPropertyValue().getProperty(element.getElementObject(),p); + if (value==null) { continue; } if (value instanceof List || value instanceof Collection) { continue; // TODO; filter on type of childeren } - AttributeEntry e = new AttributeEntry(p, "" + value, calcOrderNumber(p,writeOrder)); + AttributeEntry e = new AttributeEntry(); + e.id = p; + e.value = ""+value; + e.writeOrder = calcOrderNumber(e.id,writeOrder); attr.add(e); } } @@ -289,12 +290,12 @@ public class DefaultX4OWriter extends AbstractX4OWriter { if (isRoot && schemaUriPrint) { String rootUri = findElementUri(element); writer.startPrefixMapping("xsi", SAX3XMLConstants.XML_SCHEMA_INSTANCE_NS_URI); - atts.addAttribute ("xsi", "schemaLocation", "", "", rootUri + " " + schemaUriRoot); + atts.addAttribute ("xsi", "schemaLocation", "", "", rootUri+" "+schemaUriRoot); } // Sort attributes in natural order of localName and add to attributes - Collections.sort(attr, ATTR_ENTRY_COMPARATOR); - for (int i = 0; i < attr.size(); i++) { + Collections.sort(attr, attributeEntryComparator); + for (int i=0;i extends AbstractX4OWriter { // Write Element tree recursive. String elementUri = findElementUri(element); writer.startElement(elementUri, element.getElementClass().getId(), "", atts); - for (Element e : element.getChilderen()) { - writeTree(writer, e, false); + for (Element e:element.getChilderen()) { + writeTree(writer,e,false); } writer.endElement(elementUri, element.getElementClass().getId(), ""); } // TODO: move to defaults layer so visible in docs. - private Integer calcOrderNumber(String name, Integer orderNumberOverride) { - if (orderNumberOverride != null) { + private Integer calcOrderNumber(String name,Integer orderNumberOverride) { + if (orderNumberOverride!=null) { return orderNumberOverride; } - if (name == null) { + if (name==null) { throw new NullPointerException("Can't calculate order of null name."); } int nameSize = name.length(); - if (nameSize == 1) { + if (nameSize==1) { return (name.charAt(0) * 1000); } - if (nameSize == 2) { + if (nameSize==2) { return (name.charAt(0) * 1000) + (name.charAt(1) * 100); } - if (nameSize == 3) { + if (nameSize==3) { return (name.charAt(0) * 1000) + (name.charAt(1) * 100) + (name.charAt(2) * 10); } - if (nameSize > 3) { + if (nameSize>3) { return (name.charAt(0) * 1000) + (name.charAt(1) * 100) + (name.charAt(2) * 10) + (name.charAt(3) * 1); } throw new IllegalArgumentException("Can't calculate order of empty name."); } private String findElementUri(Element e) { - for (X4OLanguageModule mod : e.getLanguageSession().getLanguage().getLanguageModules()) { - for (ElementNamespace c : mod.getElementNamespaces()) { + for (X4OLanguageModule mod:e.getLanguageSession().getLanguage().getLanguageModules()) { + for (ElementNamespace c:mod.getElementNamespaces()) { ElementClass ec = c.getElementClass(e.getElementClass().getId()); - if (ec != null) { + if (ec!=null) { return c.getUri(); } } @@ -344,9 +345,9 @@ public class DefaultX4OWriter extends AbstractX4OWriter { return null; } - private String findNamespacePrefix(Element e, String uri) { + private String findNamespacePrefix(Element e,String uri) { ElementNamespace ns = e.getLanguageSession().getLanguage().findElementNamespace(uri); - if (ns.getPrefixMapping() != null) { + if (ns.getPrefixMapping()!=null) { return ns.getPrefixMapping(); } return ns.getId(); diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OConnection.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OConnection.java index 7aa1848..ed5a7c1 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OConnection.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OConnection.java @@ -24,33 +24,26 @@ package org.x4o.xml.io; import java.util.Collection; -import org.x4o.xml.lang.X4OLanguage; -import org.x4o.xml.lang.X4OLanguageSession; - /** - * X4OConnection interface for config the io-drivers. + * X4OConnection interface for config the io drivers. * * @author Willem Cazander * @version 1.0 Apr 6, 2013 */ public interface X4OConnection { - X4OLanguage getLanguage(); - - X4OLanguageSession createLanguageSession(); - /** * Sets an X4O Language property. * @param key The key of the property to set. - * @param value The value of the property to set. + * @param value The vlue of the property to set. */ - void setProperty(String key, Object value); + void setProperty(String key,Object value); - Object getProperty(String key); + public Object getProperty(String key); - Collection getPropertyKeys(); + public Collection getPropertyKeys(); - void setPhaseStop(String phaseId); + public void setPhaseStop(String phaseId); - void addPhaseSkip(String phaseId); + public void addPhaseSkip(String phaseId); } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OContentParser.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OContentParser.java index da0e1c4..d4e79a4 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OContentParser.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OContentParser.java @@ -29,6 +29,7 @@ import org.x4o.xml.lang.X4OLanguageSession; import org.xml.sax.InputSource; import org.xml.sax.SAXException; import org.xml.sax.XMLReader; +import org.xml.sax.helpers.XMLReaderFactory; import java.io.IOException; import java.io.InputStream; @@ -37,10 +38,6 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import javax.xml.parsers.ParserConfigurationException; -import javax.xml.parsers.SAXParser; -import javax.xml.parsers.SAXParserFactory; - /** * X4OContentParser Runs the SAX parser with the X4OContentHandler. * @@ -59,7 +56,7 @@ public class X4OContentParser { return propertyConfig; } - public void parse(X4OLanguageSession languageSession) throws SAXException, IOException, ParserConfigurationException { + public void parse(X4OLanguageSession languageSession) throws SAXException, IOException { // Group debug config property messages if (languageSession.hasX4ODebugWriter()) { languageSession.getX4ODebugWriter().debugSAXConfigStart(); @@ -73,7 +70,7 @@ public class X4OContentParser { } } - private void parseSax(X4OLanguageSession languageSession) throws SAXException, IOException, ParserConfigurationException { + private void parseSax(X4OLanguageSession languageSession) throws SAXException, IOException { // If xsd caching is needed this should be the way //XMLParserConfiguration config = new XIncludeAwareParserConfiguration(); //config.setProperty("http://apache.org/xml/properties/internal/grammar-pool",myFullGrammarPool); @@ -81,22 +78,19 @@ public class X4OContentParser { // Create Sax parser with x4o tag handler X4OContentHandler xth = new X4OContentHandler(languageSession,getPropertyConfig()); - SAXParserFactory factory = SAXParserFactory.newInstance(); - factory.setNamespaceAware(true); - SAXParser parser = factory.newSAXParser(); - XMLReader reader = parser.getXMLReader(); - reader.setErrorHandler(new X4OErrorHandler(languageSession,getPropertyConfig())); - reader.setEntityResolver(new X4OEntityResolver(languageSession,getPropertyConfig())); - reader.setContentHandler(xth); - reader.setProperty("http://xml.org/sax/properties/lexical-handler", xth); - reader.setProperty("http://xml.org/sax/properties/declaration-handler",xth); + XMLReader saxParser = XMLReaderFactory.createXMLReader(); + saxParser.setErrorHandler(new X4OErrorHandler(languageSession,getPropertyConfig())); + saxParser.setEntityResolver(new X4OEntityResolver(languageSession,getPropertyConfig())); + saxParser.setContentHandler(xth); + saxParser.setProperty("http://xml.org/sax/properties/lexical-handler", xth); + saxParser.setProperty("http://xml.org/sax/properties/declaration-handler",xth); // Set properties and optional Map saxParserProperties = getSAXParserProperties(languageSession); for (Map.Entry entry:saxParserProperties.entrySet()) { String name = entry.getKey(); Object value= entry.getValue(); - reader.setProperty(name, value); + saxParser.setProperty(name, value); debugMessage("property",name,value,languageSession); } Map saxParserPropertiesOptional = getSAXParserPropertiesOptional(languageSession); @@ -104,7 +98,7 @@ public class X4OContentParser { String name = entry.getKey(); Object value= entry.getValue(); try { - reader.setProperty(name, value); + saxParser.setProperty(name, value); debugMessage("optional-property",name,value,languageSession); } catch (SAXException e) { debugMessageLog("Could not set optional SAX property: "+name+" to: "+value+" error: "+e.getMessage(),languageSession); @@ -115,14 +109,14 @@ public class X4OContentParser { Map features = getSAXParserFeatures(languageSession); for (String key:features.keySet()) { Boolean value=features.get(key); - reader.setFeature(key, value); + saxParser.setFeature(key, value); debugMessage("feature",key,value,languageSession); } Map featuresOptional = getSAXParserFeaturesOptional(languageSession); for (String key:featuresOptional.keySet()) { Boolean value=featuresOptional.get(key); try { - reader.setFeature(key, value); + saxParser.setFeature(key, value); debugMessage("optional-feature",key,value,languageSession); } catch (SAXException e) { debugMessageLog("Could not set optional SAX feature: "+key+" to: "+value+" error: "+e.getMessage(),languageSession); @@ -132,7 +126,7 @@ public class X4OContentParser { // check for required features List requiredFeatures = getSAXParserFeaturesRequired(languageSession); for (String requiredFeature:requiredFeatures) { - if (reader.getFeature(requiredFeature)==false) { + if (saxParser.getFeature(requiredFeature)==false) { throw new IllegalStateException("Missing required feature: "+requiredFeature); } debugMessage("required",requiredFeature,"true",languageSession); @@ -159,7 +153,7 @@ public class X4OContentParser { } try { - reader.parse(input); + saxParser.parse(input); } finally { if (inputStream!=null) { inputStream.close(); diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4ODebugWriter.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4ODebugWriter.java index d7bf627..246f41d 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4ODebugWriter.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4ODebugWriter.java @@ -31,6 +31,7 @@ import java.util.Map; import org.x4o.sax3.SAX3WriterEnum; import org.x4o.sax3.io.ContentWriter; +import org.x4o.sax3.io.SAX3XMLConstants; import org.x4o.xml.conv.ObjectConverter; import org.x4o.xml.element.Element; import org.x4o.xml.element.ElementNamespaceAttribute; @@ -47,7 +48,6 @@ import org.x4o.xml.element.ElementNamespaceInstanceProvider; import org.x4o.xml.lang.X4OLanguageModule; import org.x4o.xml.lang.X4OLanguageModuleLoaderResult; import org.x4o.xml.lang.X4OLanguageSession; -import org.x4o.xml.lang.X4OLanguageSessionLocal; import org.x4o.xml.lang.X4OLanguageConfiguration; import org.x4o.xml.lang.phase.X4OPhase; import org.x4o.xml.lang.phase.X4OPhaseException; @@ -63,13 +63,12 @@ import org.xml.sax.helpers.AttributesImpl; */ public class X4ODebugWriter { - static public final String DEBUG_URI = "http://language.x4o.org/xml/ns/debug-output"; - static public final String DEBUG_URI_NS = "debug"; + static public final String DEBUG_URI = "http://language.x4o.org/xml/ns/debug-output"; protected SAX3WriterEnum contentWriter = null; public X4ODebugWriter(ContentWriter debugWriter) { - this.contentWriter = new SAX3WriterEnum(debugWriter, DEBUG_URI, DEBUG_URI_NS); + this.contentWriter=new SAX3WriterEnum(debugWriter,DEBUG_URI,SAX3XMLConstants.NULL_NS_URI); } public ContentWriter getContentWriter() { @@ -84,7 +83,6 @@ public class X4ODebugWriter { X4OConnection, X4OLanguageSession, X4OLanguageSessionSkipPhase, - X4OLanguageSessionPhaseListener, X4OConnectionProperties, X4OConnectionProperty, @@ -93,6 +91,7 @@ public class X4ODebugWriter { phaseOrder, phase, + X4OPhaseListener, X4OPhaseDependency, ElementLanguageModules, @@ -177,7 +176,7 @@ public class X4ODebugWriter { StringBuilder buf = new StringBuilder(); buf.append("0x"); for (char c:newline.toCharArray()) { - Integer i = Integer.valueOf(c); + Integer i = new Integer(c); if (i<16) { buf.append('0'); } @@ -197,24 +196,10 @@ public class X4ODebugWriter { atts = new AttributesImpl(); atts.addAttribute("", "phaseStop", "", "", languageSession.getPhaseStop()); atts.addAttribute("", "className", "", "", languageSession.getClass().getName()); - //atts.addAttribute("", "listenersSize", "", "", phase.getPhaseListeners().size()+""); contentWriter.printTagStart(Tag.X4OLanguageSession, atts); for (String skipPhase:languageSession.getPhaseSkip()) { contentWriter.printTagCharacters(Tag.X4OLanguageSessionSkipPhase, skipPhase); } - if (languageSession instanceof X4OLanguageSessionLocal) { - X4OLanguageSessionLocal languageSessionLocal = X4OLanguageSessionLocal.class.cast(languageSession); - for (String key : languageSession.getLanguage().getPhaseManager().getPhaseKeys()) { - X4OPhase p = languageSession.getLanguage().getPhaseManager().getPhase(key); - List listeners = languageSessionLocal.storePhaseListeners(p.getId()); - for (X4OPhaseListener l : listeners) { - atts = new AttributesImpl(); - atts.addAttribute("", "phaseId", "", "", p.getId()); - atts.addAttribute("", "className", "", "", l.getClass().getName()); - contentWriter.printTagStartEnd(Tag.X4OLanguageSessionPhaseListener, atts); - } - } - } contentWriter.printTagEnd(Tag.X4OLanguageSession); atts = new AttributesImpl(); @@ -301,8 +286,14 @@ public class X4ODebugWriter { atts.addAttribute("", "id", "", "", phase.getId()); atts.addAttribute("", "type", "", "", phase.getType().name()); atts.addAttribute("", "runOnce", "", "", phase.isRunOnce()+""); + atts.addAttribute("", "listenersSize", "", "", phase.getPhaseListeners().size()+""); contentWriter.printTagStart(Tag.phase, atts); + for (X4OPhaseListener l:phase.getPhaseListeners()) { + atts = new AttributesImpl(); + atts.addAttribute("", "className", "", "", l.getClass().getName()); + contentWriter.printTagStartEnd(Tag.X4OPhaseListener, atts); + } for (String dep:phase.getPhaseDependencies()) { contentWriter.printTagCharacters(Tag.X4OPhaseDependency, dep); } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OReader.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OReader.java index e376773..db9820f 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OReader.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OReader.java @@ -35,7 +35,6 @@ import org.xml.sax.SAXException; * * @author Willem Cazander * @version 1.0 Apr 6, 2013 - * @param The root element object type. */ public interface X4OReader extends X4OConnection { diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OReaderSession.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OReaderSession.java index 0f16045..1f7bc6f 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OReaderSession.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OReaderSession.java @@ -29,6 +29,7 @@ import java.io.InputStream; import java.net.URL; import org.x4o.xml.lang.X4OLanguageSession; +import org.x4o.xml.lang.phase.X4OPhaseException; import org.xml.sax.SAXException; /** @@ -39,70 +40,66 @@ import org.xml.sax.SAXException; */ public interface X4OReaderSession extends X4OReader { + void releaseSession(X4OLanguageSession context) throws X4OPhaseException; + /** * Method to parse the xml data. - * @param session The language session. * @param input The inputStream to parse. * @throws X4OConnectionException Is thrown after x4o exception. * @throws SAXException Is thrown after sax xml exception. * @throws IOException Is thrown after io exception. */ - void readSession(X4OLanguageSession session, InputStream input, String systemId, URL basePath) throws X4OConnectionException, SAXException, IOException; + X4OLanguageSession readSession(InputStream input,String systemId,URL basePath) throws X4OConnectionException,SAXException,IOException; /** * Reads the file fileName and parses it as an InputStream. - * @param session The language session. * @param fileName The file name to parse. * @throws FileNotFoundException Is thrown is file is not found. * @throws X4OConnectionException Is thrown after x4o exception. * @throws SAXException Is thrown after sax xml exception. * @throws IOException Is thrown after io exception. - * @see org.x4o.xml.io.X4OReaderSession#readSession(org.x4o.xml.lang.X4OLanguageSession,java.io.InputStream,java.lang.String,java.net.URL) + * @see org.x4o.xml.io.X4OReaderSession#readSession(java.io.InputStream,java.lang.String,java.net.URL) */ - void readFileSession(X4OLanguageSession session, String fileName) throws X4OConnectionException, SAXException, IOException, FileNotFoundException; + X4OLanguageSession readFileSession(String fileName) throws X4OConnectionException,SAXException,IOException,FileNotFoundException; /** * Reads the file and parses it as an InputStream. - * @param session The language session. * @param file The file to parse. * @throws FileNotFoundException Is thrown is file is not found. * @throws X4OConnectionException Is thrown after x4o exception. * @throws SAXException Is thrown after sax xml exception. * @throws IOException Is thrown after io exception. - * @see org.x4o.xml.io.X4OReaderSession#readSession(org.x4o.xml.lang.X4OLanguageSession,java.io.InputStream,java.lang.String,java.net.URL) + * @see org.x4o.xml.io.X4OReaderSession#readSession(java.io.InputStream,java.lang.String,java.net.URL) */ - void readFileSession(X4OLanguageSession session, File file) throws X4OConnectionException, SAXException, IOException, FileNotFoundException; + X4OLanguageSession readFileSession(File file) throws X4OConnectionException,SAXException,IOException,FileNotFoundException; /** * Parses an resource locaction. - * @param session The language session. * @param resourceName The resource to parser. * @throws X4OConnectionException Is thrown after x4o exception. * @throws SAXException Is thrown after sax xml exception. * @throws IOException Is thrown after io exception. - * @see org.x4o.xml.io.X4OReaderSession#readSession(org.x4o.xml.lang.X4OLanguageSession,java.io.InputStream,java.lang.String,java.net.URL) + * @see org.x4o.xml.io.X4OReaderSession#readSession(java.io.InputStream,java.lang.String,java.net.URL) */ - void readResourceSession(X4OLanguageSession session, String resourceName) throws X4OConnectionException, SAXException, IOException; + X4OLanguageSession readResourceSession(String resourceName) throws X4OConnectionException,SAXException,IOException; /** * Converts a String to a InputStream to is can be parsed by SAX. - * @param session The language session. * @param xmlString The xml as String to parse. * @throws X4OConnectionException Is thrown after x4o exception. * @throws SAXException Is thrown after sax xml exception. * @throws IOException Is thrown after io exception. - * @see org.x4o.xml.io.X4OReaderSession#readSession(org.x4o.xml.lang.X4OLanguageSession,java.io.InputStream,java.lang.String,java.net.URL) + * @see org.x4o.xml.io.X4OReaderSession#readSession(java.io.InputStream,java.lang.String,java.net.URL) */ - void readStringSession(X4OLanguageSession session, String xmlString) throws X4OConnectionException, SAXException, IOException; + X4OLanguageSession readStringSession(String xmlString) throws X4OConnectionException,SAXException,IOException; /** * Fetched the data direct from remote url to a InputStream to is can be parsed by SAX. - * @param session The language session. * @param url The url to parse. * @throws X4OConnectionException Is thrown after x4o exception. * @throws SAXException Is thrown after sax xml exception. * @throws IOException Is thrown after io exception. - * @see org.x4o.xml.io.X4OReaderSession#readSession(org.x4o.xml.lang.X4OLanguageSession,java.io.InputStream,java.lang.String,java.net.URL) + * @see org.x4o.xml.io.X4OReaderSession#readSession(java.io.InputStream,java.lang.String,java.net.URL) */ - void readUrlSession(X4OLanguageSession session, URL url) throws X4OConnectionException, SAXException, IOException; + X4OLanguageSession readUrlSession(URL url) throws X4OConnectionException,SAXException,IOException; } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OWriter.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OWriter.java index c6915ee..44d37df 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OWriter.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OWriter.java @@ -33,7 +33,6 @@ import org.xml.sax.SAXException; * * @author Willem Cazander * @version 1.0 Apr 6, 2013 - * @param The root element object type. */ public interface X4OWriter extends X4OConnection { diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OWriterSession.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OWriterSession.java index eeafe21..08d5fce 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OWriterSession.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/io/X4OWriterSession.java @@ -37,11 +37,11 @@ import org.xml.sax.SAXException; */ public interface X4OWriterSession extends X4OWriter { - void writeSession(X4OLanguageSession session, OutputStream out) throws X4OConnectionException, SAXException, IOException; + void writeSession(X4OLanguageSession context,OutputStream out) throws X4OConnectionException,SAXException,IOException; - void writeFileSession(X4OLanguageSession session, String fileName) throws X4OConnectionException, SAXException, IOException; + void writeFileSession(X4OLanguageSession context,String fileName) throws X4OConnectionException,SAXException,IOException; - void writeFileSession(X4OLanguageSession session, File file) throws X4OConnectionException, SAXException, IOException; + void writeFileSession(X4OLanguageSession context,File file) throws X4OConnectionException,SAXException,IOException; - String writeStringSession(X4OLanguageSession session) throws X4OConnectionException, SAXException, IOException; + String writeStringSession(X4OLanguageSession context) throws X4OConnectionException,SAXException,IOException; } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/AbstractX4OLanguageSession.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/AbstractX4OLanguageSession.java index 079b5a5..fb44ab3 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/AbstractX4OLanguageSession.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/AbstractX4OLanguageSession.java @@ -23,9 +23,7 @@ package org.x4o.xml.lang; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; -import java.util.Map; import java.util.logging.Logger; import javax.el.ELContext; @@ -36,7 +34,6 @@ import org.x4o.xml.element.ElementAttributeValueParser; import org.x4o.xml.element.ElementObjectPropertyValue; import org.x4o.xml.io.X4ODebugWriter; import org.x4o.xml.lang.phase.X4OPhase; -import org.x4o.xml.lang.phase.X4OPhaseListener; /** * AbstractX4OLanguageSession. @@ -58,21 +55,19 @@ public abstract class AbstractX4OLanguageSession implements X4OLanguageSessionLo private X4OPhase phaseCurrent = null; private String phaseStop = null; private List phaseSkip = null; - private Map> phaseListeners = null; /** * Creates a new empty language context. */ public AbstractX4OLanguageSession(X4OLanguage language) { - if (language == null) { + if (language==null) { throw new NullPointerException("language may not be null"); } logger = Logger.getLogger(AbstractX4OLanguageSession.class.getName()); logger.finest("Creating new ParsingContext"); this.language=language; - dirtyElements = new ArrayList<>(20); - phaseSkip = new ArrayList<>(5); - phaseListeners = new HashMap<>(3); + dirtyElements = new ArrayList(20); + phaseSkip = new ArrayList(5); } public X4OLanguage getLanguage() { @@ -243,18 +238,4 @@ public abstract class AbstractX4OLanguageSession implements X4OLanguageSessionLo public void addPhaseSkip(String phaseId) { phaseSkip.add(phaseId); } - - /** - * Gets the phase listeners for a phase. - * @param phaseId The phaseId of for the listeners. - * @return The x4o phase listeners. - */ - public List storePhaseListeners(String phaseId) { - List result = phaseListeners.get(phaseId); - if (result == null) { - result = new ArrayList<>(3); - phaseListeners.put(phaseId, result); - } - return result; - } } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/DefaultX4OLanguage.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/DefaultX4OLanguage.java index 1ac936a..fce7d6f 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/DefaultX4OLanguage.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/DefaultX4OLanguage.java @@ -40,7 +40,6 @@ import org.x4o.xml.element.ElementNamespaceInstanceProviderException; import org.x4o.xml.element.ElementObjectPropertyValue; import org.x4o.xml.lang.phase.X4OPhaseException; import org.x4o.xml.lang.phase.X4OPhaseManager; -import org.x4o.xml.lang.phase.X4OPhaseType; /** * DefaultX4OLanguage holds all information about the x4o xml language. @@ -50,38 +49,28 @@ import org.x4o.xml.lang.phase.X4OPhaseType; */ public class DefaultX4OLanguage implements X4OLanguageLocal { - private final Logger logger; - private final X4OLanguageConfiguration languageConfiguration; - private final List elementLanguageModules; - private final String languageName; - private final String languageVersion; - private final X4OPhaseManager phaseManager; - private final Map keyedNamespaceLookup; - private boolean inited = false; - - public DefaultX4OLanguage(X4OLanguageConfiguration languageConfiguration, X4OPhaseManager phaseManager, String languageName, String languageVersion) { - if (languageName == null) { + private Logger logger = null; + private X4OLanguageConfiguration languageConfiguration = null; + private List elementLanguageModules = null; + private String languageName = null; + private String languageVersion = null; + private X4OPhaseManager phaseManager = null; + private Map keyedNamespaceLookup = null; + + public DefaultX4OLanguage(X4OLanguageConfiguration languageConfiguration,X4OPhaseManager phaseManager,String languageName,String languageVersion) { + if (languageName==null) { throw new NullPointerException("Can't define myself with null name."); } - if (languageVersion == null) { + if (languageVersion==null) { throw new NullPointerException("Can't define myself with null version."); } - this.logger = Logger.getLogger(DefaultX4OLanguage.class.getName()); - this.elementLanguageModules = new ArrayList(20); - this.keyedNamespaceLookup = new HashMap(20); - this.languageConfiguration = languageConfiguration; - this.languageName = languageName; - this.languageVersion = languageVersion; - this.phaseManager = phaseManager; - } - - @Override - public void init(X4OLanguageSession session) throws X4OPhaseException { - if (inited) { - return; - } - inited = true; - getPhaseManager().runPhases(session, X4OPhaseType.INIT); + logger = Logger.getLogger(DefaultX4OLanguage.class.getName()); + elementLanguageModules = new ArrayList(20); + keyedNamespaceLookup = new HashMap(20); + this.languageConfiguration=languageConfiguration; + this.languageName=languageName; + this.languageVersion=languageVersion; + this.phaseManager=phaseManager; } /** @@ -97,7 +86,7 @@ public class DefaultX4OLanguage implements X4OLanguageLocal { public String getLanguageVersion() { return languageVersion; } - + /** * @see org.x4o.xml.lang.X4OLanguage#getPhaseManager() */ @@ -116,27 +105,28 @@ public class DefaultX4OLanguage implements X4OLanguageLocal { * @see org.x4o.xml.lang.X4OLanguageLocal#addLanguageModule(org.x4o.xml.lang.X4OLanguageModule) */ public void addLanguageModule(X4OLanguageModule elementLanguageModule) { - if (elementLanguageModule.getId() == null) { + if (elementLanguageModule.getId()==null) { throw new NullPointerException("Can't add module without id."); } - for (X4OLanguageModule mod : elementLanguageModules) { + for (X4OLanguageModule mod:elementLanguageModules) { if (mod.getId().equals(elementLanguageModule.getId())) { - throw new IllegalArgumentException("Can't add module with duplicate id; " + elementLanguageModule.getId()); + throw new IllegalArgumentException("Can't add module with duplicate id; "+elementLanguageModule.getId()); } } elementLanguageModules.add(elementLanguageModule); - for (ElementNamespace ns : elementLanguageModule.getElementNamespaces()) { + + for (ElementNamespace ns:elementLanguageModule.getElementNamespaces()) { keyedNamespaceLookup.put(ns.getUri(), ns); } } - + /** * @see org.x4o.xml.lang.X4OLanguage#getLanguageModules() */ public Collection getLanguageModules() { return elementLanguageModules; } - + /** * @see org.x4o.xml.lang.X4OLanguage#createLanguageSession() */ @@ -145,44 +135,48 @@ public class DefaultX4OLanguage implements X4OLanguageLocal { return result; } - protected X4OLanguageSession buildElementLanguage(X4OLanguageSessionLocal languageSession) { - try { - if (languageSession.getExpressionLanguageFactory() == null) { - languageSession.setExpressionLanguageFactory(X4OExpressionFactory.createExpressionFactory()); - } - if (languageSession.getExpressionLanguageContext() == null) { - languageSession.setExpressionLanguageContext(X4OExpressionFactory.createELContext(languageSession.getLanguage().getLanguageConfiguration().getDefaultExpressionLanguageContext())); - } - if (languageSession.getElementAttributeValueParser() == null) { - languageSession.setElementAttributeValueParser(X4OLanguageClassLoader.newInstance(ElementAttributeValueParser.class, getLanguageConfiguration().getDefaultElementAttributeValueParser())); - } - if (languageSession.getElementObjectPropertyValue() == null) { - languageSession.setElementObjectPropertyValue(X4OLanguageClassLoader.newInstance(ElementObjectPropertyValue.class, getLanguageConfiguration().getDefaultElementObjectPropertyValue())); - } - } catch (ClassNotFoundException e) { - throw new RuntimeException(e.getMessage(), e); + protected X4OLanguageSession buildElementLanguage(X4OLanguageSession languageSession) { + if ((languageSession instanceof X4OLanguageSessionLocal)==false) { + throw new RuntimeException("Can't init X4OLanguageSession which has not X4OLanguageSessionLocal interface obj: "+languageSession); } - return languageSession; + X4OLanguageSessionLocal contextInit = (X4OLanguageSessionLocal)languageSession; + try { + if (contextInit.getExpressionLanguageFactory()==null) { + contextInit.setExpressionLanguageFactory(X4OExpressionFactory.createExpressionFactory()); + } + if (contextInit.getExpressionLanguageContext()==null) { + contextInit.setExpressionLanguageContext(X4OExpressionFactory.createELContext(contextInit.getLanguage().getLanguageConfiguration().getDefaultExpressionLanguageContext())); + } + if (contextInit.getElementAttributeValueParser()==null) { + contextInit.setElementAttributeValueParser((ElementAttributeValueParser)X4OLanguageClassLoader.newInstance(getLanguageConfiguration().getDefaultElementAttributeValueParser())); + } + if (contextInit.getElementObjectPropertyValue()==null) { + contextInit.setElementObjectPropertyValue((ElementObjectPropertyValue)X4OLanguageClassLoader.newInstance(getLanguageConfiguration().getDefaultElementObjectPropertyValue())); + } + } catch (Exception e) { + throw new RuntimeException(e.getMessage(),e); + } + return contextInit; } /** * @see org.x4o.xml.lang.X4OLanguage#createElementInstance(org.x4o.xml.lang.X4OLanguageSession,java.lang.Class) */ - public Element createElementInstance(X4OLanguageSession context, Class objectClass) { - for (X4OLanguageModule modContext : getLanguageModules()) { - for (ElementNamespace nsContext : modContext.getElementNamespaces()) { - for (ElementClass ec : nsContext.getElementClasses()) { - if (ec.getObjectClass() != null && ec.getObjectClass().equals(objectClass)) { + public Element createElementInstance(X4OLanguageSession context,Class objectClass) { + for (X4OLanguageModule modContext:getLanguageModules()) { + for (ElementNamespace nsContext:modContext.getElementNamespaces()) { + for (ElementClass ec:nsContext.getElementClasses()) { + if (ec.getObjectClass()!=null && ec.getObjectClass().equals(objectClass)) { try { return nsContext.getElementNamespaceInstanceProvider().createElementInstance(context, ec.getId()); } catch (ElementNamespaceInstanceProviderException e) { - throw new RuntimeException(e.getMessage(), e); // TODO: fix me + throw new RuntimeException(e.getMessage(),e); // TODO: fix me } } } } } - throw new IllegalArgumentException("Could not find ElementClass for: " + objectClass.getName()); + throw new IllegalArgumentException("Could not find ElementClass for: "+objectClass.getName()); } /** @@ -190,9 +184,9 @@ public class DefaultX4OLanguage implements X4OLanguageLocal { */ public List findElementBindingHandlers(Object parent) { List result = new ArrayList(50); - for (int i = 0; i < elementLanguageModules.size(); i++) { + for (int i=0;i findElementBindingHandlers(Object parent, Object child) { + public List findElementBindingHandlers(Object parent,Object child) { List result = new ArrayList(50); - for (int i = 0; i < elementLanguageModules.size(); i++) { + for (int i=0;i result, List checkList, - boolean checkChild) { - for (ElementBindingHandler binding : checkList) { + private void findElementBindingHandlerInList(Object parent,Object child,List result,List checkList,boolean checkChild) { + for (ElementBindingHandler binding:checkList) { boolean parentBind = false; if (parent instanceof Class) { - parentBind = binding.getBindParentClass().isAssignableFrom((Class) parent); + parentBind = binding.getBindParentClass().isAssignableFrom((Class)parent); } else { parentBind = binding.getBindParentClass().isInstance(parent); } - if (parentBind == false) { + if (parentBind==false) { continue; } - if (checkChild == false) { + if (checkChild==false) { result.add(binding); // All all handlers for parent only continue; } boolean childBind = false; - for (Class childClass : binding.getBindChildClasses()) { - if (child instanceof Class && childClass.isAssignableFrom((Class) child)) { - childBind = true; - break; + for (Class childClass:binding.getBindChildClasses()) { + if (child instanceof Class && childClass.isAssignableFrom((Class)child)) { + childBind=true; + break; } else if (childClass.isInstance(child)) { - childBind = true; + childBind=true; break; } } @@ -240,25 +233,25 @@ public class DefaultX4OLanguage implements X4OLanguageLocal { } } } - + /** * @see org.x4o.xml.lang.X4OLanguage#findElementInterfaces(java.lang.Object) */ public List findElementInterfaces(Object elementObject) { - if (elementObject == null) { + if (elementObject==null) { throw new NullPointerException("Can't search for null object."); } List result = new ArrayList(50); - for (int i = 0; i < elementLanguageModules.size(); i++) { + for (int i=0;i eClass = ei.getInterfaceClass(); - logger.finest("Checking interface handler: " + ei + " for class: " + eClass); - if (elementObject instanceof Class && eClass.isAssignableFrom((Class) elementObject)) { - logger.finer("Found interface match from class; " + elementObject); + logger.finest("Checking interface handler: "+ei+" for class: "+eClass); + if (elementObject instanceof Class && eClass.isAssignableFrom((Class)elementObject)) { + logger.finer("Found interface match from class; "+elementObject); result.add(ei); } else if (eClass.isInstance(elementObject)) { - logger.finer("Found interface match from object; " + elementObject); + logger.finer("Found interface match from object; "+elementObject); result.add(ei); } } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/DefaultX4OLanguageLoader.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/DefaultX4OLanguageLoader.java index 75d574e..5891361 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/DefaultX4OLanguageLoader.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/DefaultX4OLanguageLoader.java @@ -31,13 +31,8 @@ import java.util.Enumeration; import java.util.List; import java.util.logging.Logger; -import javax.xml.parsers.ParserConfigurationException; -import javax.xml.parsers.SAXParser; -import javax.xml.parsers.SAXParserFactory; - import org.x4o.xml.eld.EldDriver; import org.x4o.xml.eld.EldModuleLoader; -import org.x4o.xml.element.ElementException; import org.x4o.xml.lang.phase.X4OPhaseLanguageInit; import org.x4o.xml.lang.phase.X4OPhaseLanguageInit.X4OPhaseInitLanguageSiblings; import org.xml.sax.Attributes; @@ -45,6 +40,7 @@ import org.xml.sax.InputSource; import org.xml.sax.SAXException; import org.xml.sax.XMLReader; import org.xml.sax.ext.DefaultHandler2; +import org.xml.sax.helpers.XMLReaderFactory; /** * DefaultX4OLanguageLoader loads the modules of language. @@ -68,82 +64,88 @@ public class DefaultX4OLanguageLoader implements X4OLanguageLoader { * @param language The X4O language we are loading. * @param message The message to log to the debug output. */ - private void logMessage(X4OLanguageSession session, String message) { - logger.finest(message + " from: " + session.getLanguage().getLanguageName()); - if (session.hasX4ODebugWriter()) { + private void logMessage(X4OLanguage language,String message) { + logger.finest(message+" from: "+language.getLanguageName()); + /* +TODO: if (language.getLanguageConfiguration().hasX4ODebugWriter()) { try { - session.getX4ODebugWriter().debugPhaseMessage(message, this.getClass()); + language.getLanguageConfiguration().getX4ODebugWriter().debugPhaseMessage(message, this.getClass()); } catch (ElementException e) { throw new RuntimeException(e); } } + */ } - @Override - public void loadLanguage(X4OLanguageSession session, X4OLanguageLocal languageLocal, String language, String languageVersion) throws X4OLanguageLoaderException { - logger.finer("Loading all modules for language: " + language); - List modulesAll = loadLanguageModules(session, languageLocal, language); - modulesAll = filterVersionModules(modulesAll, languageLocal, languageVersion); + /** + * @see org.x4o.xml.lang.X4OLanguageLoader#loadLanguage(org.x4o.xml.lang.X4OLanguageLocal, java.lang.String, java.lang.String) + */ + public void loadLanguage(X4OLanguageLocal languageLocal, String language,String languageVersion) throws X4OLanguageLoaderException { + logger.finer("Loading all modules for language: "+language); + List modulesAll = loadLanguageModules(languageLocal,language); + modulesAll = filterVersionModules(modulesAll,languageLocal,languageVersion); validateModules(modulesAll); int loaded = 0; - for (VersionedResources versionedResources : modulesAll) { + for (VersionedResources versionedResources:modulesAll) { X4OLanguageModuleLoader loader; - for (String value : versionedResources.eldResources) { + for (String value:versionedResources.eldResources) { String languagePrefix = languageLocal.getLanguageConfiguration().getLanguageResourcePathPrefix(); - String resource = languagePrefix + "/" + language + "/" + value; + String resource = languagePrefix+"/"+language+"/"+value; if (language.equals(EldDriver.LANGUAGE_NAME)) { loader = new EldModuleLoader(resource,true); // load cel } else { loader = new EldModuleLoader(resource,false); // load eld } - loadModule(session, languageLocal, loader, value, versionedResources); + loadModule(languageLocal,loader,value,versionedResources); } - for (String value : versionedResources.moduleLoaders) { + for (String value:versionedResources.moduleLoaders) { try { - loader = (X4OLanguageModuleLoader)X4OLanguageClassLoader.newInstance(value); + loader = (X4OLanguageModuleLoader)X4OLanguageClassLoader.loadClass(value).newInstance(); } catch (Exception ee) { - throw new X4OLanguageLoaderException("Could not load class: " + value + " error: " + ee.getMessage(),ee); + throw new X4OLanguageLoaderException("Could not load class: "+value+" error: "+ee.getMessage(),ee); } - loadModule(session, languageLocal, loader, value, versionedResources); + loadModule(languageLocal,loader,value,versionedResources); } - for (String value : versionedResources.siblingLoaders) { + for (String value:versionedResources.siblingLoaders) { try { - loader = (X4OLanguageModuleLoader)X4OLanguageClassLoader.newInstance(value); + loader = (X4OLanguageModuleLoader)X4OLanguageClassLoader.loadClass(value).newInstance(); } catch (Exception ee) { - throw new X4OLanguageLoaderException("Could not load class: " + value + " error: " + ee.getMessage(),ee); + throw new X4OLanguageLoaderException("Could not load class: "+value+" error: "+ee.getMessage(),ee); } - loadModule(session, languageLocal, loader, value, versionedResources); + loadModule(languageLocal,loader,value,versionedResources); if (loader instanceof X4OLanguageModuleLoaderSibling) { // mmm X4OPhaseInitLanguageSiblings sibPhase = (X4OPhaseInitLanguageSiblings)languageLocal.getPhaseManager().getPhase(X4OPhaseLanguageInit.INIT_LANG_SIB); sibPhase.addLanguageModuleLoaderSibling((X4OLanguageModuleLoaderSibling)loader); } } - for (String value : versionedResources.elbResources) { + for (String value:versionedResources.elbResources) { // TODO: add elb support - logger.finer("elb-resources are not done yet; " + value); + logger.finer("elb-resources are not done yet; "+value); } loaded++; } - if (loaded == 0) { - throw new X4OLanguageLoaderException("No modules defined for version: " + languageVersion); + if (loaded==0) { + throw new X4OLanguageLoaderException("No modules defined for version: "+languageVersion); } } - private List filterVersionModules(List resources, X4OLanguageLocal languageLocal, String languageVersion) throws X4OLanguageLoaderException { + private List filterVersionModules(List resources,X4OLanguageLocal languageLocal,String languageVersion) throws X4OLanguageLoaderException { List result = new ArrayList(resources.size()); X4OLanguageVersionFilter lvf; try { - lvf = X4OLanguageClassLoader.newInstance(X4OLanguageVersionFilter.class, languageLocal.getLanguageConfiguration().getDefaultLanguageVersionFilter()); - } catch (ClassNotFoundException e) { + lvf = (X4OLanguageVersionFilter)X4OLanguageClassLoader.newInstance(languageLocal.getLanguageConfiguration().getDefaultLanguageVersionFilter()); + } catch (InstantiationException e) { + throw new X4OLanguageLoaderException(e); + } catch (IllegalAccessException e) { throw new X4OLanguageLoaderException(e); } - for (VersionedResources versionedResources : resources) { + for (VersionedResources versionedResources:resources) { List versions = new ArrayList(); versions.add(versionedResources.version); // FIXME String modulesVersion = lvf.filterVersion(languageVersion, versions); - if (modulesVersion == null) { + if (modulesVersion==null) { continue; } result.add(versionedResources); @@ -156,44 +158,46 @@ public class DefaultX4OLanguageLoader implements X4OLanguageLoader { List moduleLoaders = new ArrayList(5); List elbResources = new ArrayList(5); List siblingLoaders = new ArrayList(5); - for (VersionedResources vr : resources) { - validateModuleList(eldResources, vr.eldResources, "eld-resource"); - validateModuleList(moduleLoaders, vr.moduleLoaders, "module-loader"); - validateModuleList(elbResources, vr.elbResources, "elb-resource"); - validateModuleList(siblingLoaders, vr.siblingLoaders, "sibling-loader"); + for (VersionedResources vr:resources) { + validateModuleList(eldResources,vr.eldResources,"eld-resource"); + validateModuleList(moduleLoaders,vr.moduleLoaders,"module-loader"); + validateModuleList(elbResources,vr.elbResources,"elb-resource"); + validateModuleList(siblingLoaders,vr.siblingLoaders,"sibling-loader"); } } - private void validateModuleList(List data, List values, String xmlTag) throws X4OLanguageLoaderException { - for (String value : values) { + private void validateModuleList(List data,List values,String xmlTag) throws X4OLanguageLoaderException { + for (String value:values) { if (data.contains(value)) { - throw new X4OLanguageLoaderException("Duplicate " + xmlTag + " entry detected; " + value); + throw new X4OLanguageLoaderException("Duplicate "+xmlTag+" entry detected; "+value); } data.add(value); } } - private void loadModule(X4OLanguageSession session, X4OLanguageLocal languageLocal, X4OLanguageModuleLoader loader, String resource, VersionedResources versionedResources) throws X4OLanguageLoaderException { + private void loadModule(X4OLanguageLocal languageLocal,X4OLanguageModuleLoader loader,String resource,VersionedResources versionedResources) throws X4OLanguageLoaderException { X4OLanguageModuleLocal module; try { - module = X4OLanguageClassLoader.newInstance(X4OLanguageModuleLocal.class, languageLocal.getLanguageConfiguration().getDefaultElementLanguageModule()); - } catch (ClassNotFoundException e) { + module = (X4OLanguageModuleLocal)X4OLanguageClassLoader.newInstance(languageLocal.getLanguageConfiguration().getDefaultElementLanguageModule()); + } catch (InstantiationException e) { + throw new X4OLanguageLoaderException(e); + } catch (IllegalAccessException e) { throw new X4OLanguageLoaderException(e); } - logMessage(session,"Created module: " + module); + logMessage(languageLocal,"Created module: "+module); long startTime = System.currentTimeMillis(); try { - logMessage(session,"Starting modules: " + module + " for language: " + languageLocal.getLanguageName()); - loader.loadLanguageModule(session, languageLocal, module); + logMessage(languageLocal,"Starting modules: "+module+" for language: "+languageLocal.getLanguageName()); + loader.loadLanguageModule(languageLocal, module); } catch (X4OLanguageModuleLoaderException e) { throw new X4OLanguageLoaderException(e); // FIXME info } long totalTime = System.currentTimeMillis() - startTime; - module.putLoaderResult(X4OLanguageModuleLoaderResult.LOAD_TIME, "" + totalTime); + module.putLoaderResult(X4OLanguageModuleLoaderResult.LOAD_TIME, ""+totalTime); module.putLoaderResult(X4OLanguageModuleLoaderResult.LOAD_VERSION, versionedResources.version); module.putLoaderResult(X4OLanguageModuleLoaderResult.LOAD_CLASS, loader.getClass().getName()); - module.putLoaderResult(X4OLanguageModuleLoaderResult.LOAD_DATE, "" + new Date()); - if (resource != null) { + module.putLoaderResult(X4OLanguageModuleLoaderResult.LOAD_DATE, ""+new Date()); + if (resource!=null) { module.putLoaderResult(X4OLanguageModuleLoaderResult.LOAD_MODULE_RESOURCE, resource); } module.putLoaderResult(X4OLanguageModuleLoaderResult.LOAD_FROM_RESOURCE, versionedResources.loadedFrom); @@ -206,7 +210,7 @@ public class DefaultX4OLanguageLoader implements X4OLanguageLoader { * @param languageLocal The ElementLanguage to load for. * @param language The language to load. */ - protected List loadLanguageModules(X4OLanguageSession session, X4OLanguageLocal languageLocal, String language) throws X4OLanguageLoaderException { + protected List loadLanguageModules(X4OLanguageLocal languageLocal,String language) throws X4OLanguageLoaderException { List result = new ArrayList(15); StringBuilder buf = new StringBuilder(150); buf.append(languageLocal.getLanguageConfiguration().getLanguageResourcePathPrefix()); @@ -216,23 +220,25 @@ public class DefaultX4OLanguageLoader implements X4OLanguageLoader { buf.append(language); buf.append(languageLocal.getLanguageConfiguration().getLanguageResourceModulesFileName()); - logger.finer("loading X4O language: " + language); + logger.finer("loading X4O language: "+language); try { Enumeration e = Thread.currentThread().getContextClassLoader().getResources(buf.toString()); - while (e.hasMoreElements()) { + while(e.hasMoreElements()) { URL u = e.nextElement(); - logMessage(session, "Loading relative modules: " + u + " for: " + language); - result.addAll(loadLanguageModulesXml(u.openStream(), u.toString())); + logMessage(languageLocal,"Loading relative modules: "+u+" for: "+language); + result.addAll(loadLanguageModulesXml(u.openStream(),u.toString())); } e = Thread.currentThread().getContextClassLoader().getResources("/"+buf.toString()); - while (e.hasMoreElements()) { + while(e.hasMoreElements()) { URL u = e.nextElement(); - logMessage(session, "Loading root modules: " + u + " for: " + language); - result.addAll(loadLanguageModulesXml(u.openStream(), u.toString())); + logMessage(languageLocal,"Loading root modules: "+u+" for: "+language); + result.addAll(loadLanguageModulesXml(u.openStream(),u.toString())); } return result; - } catch (IOException | SAXException | ParserConfigurationException e) { + } catch (IOException e) { + throw new X4OLanguageLoaderException(e); + } catch (SAXException e) { throw new X4OLanguageLoaderException(e); } } @@ -242,22 +248,18 @@ public class DefaultX4OLanguageLoader implements X4OLanguageLoader { * @param in The inputstream to parser. * @throws IOException * @throws SAXException - * @throws ParserConfigurationException */ - protected List loadLanguageModulesXml(InputStream in, String loadedFrom) throws IOException, SAXException, ParserConfigurationException { - if (in == null) { + protected List loadLanguageModulesXml(InputStream in,String loadedFrom) throws IOException, SAXException { + if (in==null) { throw new NullPointerException("Can't parse null input stream"); } ModulesTagHandler xth = new ModulesTagHandler(loadedFrom); - SAXParserFactory factory = SAXParserFactory.newInstance(); - factory.setNamespaceAware(true); - SAXParser parser = factory.newSAXParser(); - XMLReader reader = parser.getXMLReader(); - reader.setContentHandler(xth); - reader.setProperty("http://xml.org/sax/properties/lexical-handler", xth); - reader.setProperty("http://xml.org/sax/properties/declaration-handler",xth); + XMLReader saxParser = XMLReaderFactory.createXMLReader(); + saxParser.setContentHandler(xth); + saxParser.setProperty("http://xml.org/sax/properties/lexical-handler", xth); + saxParser.setProperty("http://xml.org/sax/properties/declaration-handler",xth); try { - reader.parse(new InputSource(in)); + saxParser.parse(new InputSource(in)); return xth.getResult(); } finally { in.close(); @@ -271,11 +273,12 @@ public class DefaultX4OLanguageLoader implements X4OLanguageLoader { private List result = null; public ModulesTagHandler(String loadedFrom) { - this.loadedFrom = loadedFrom; + this.loadedFrom=loadedFrom; this.result = new ArrayList(5); } - public List getResult() { + public List getResult() + { return result; } @@ -284,13 +287,13 @@ public class DefaultX4OLanguageLoader implements X4OLanguageLoader { } @Override - public void startElement(String namespaceUri, String tag, String qName, Attributes attr) throws SAXException { + public void startElement(String namespaceUri, String tag, String qName,Attributes attr) throws SAXException { if ("language".equals(tag)) { String version = attr.getValue("version"); versionedResources = new VersionedResources(); - versionedResources.version = version; - versionedResources.loadedFrom = loadedFrom; - logger.finest("Version attribute: " + version); + versionedResources.version=version; + versionedResources.loadedFrom=loadedFrom; + logger.finest("Version attribute: "+version); } } @@ -310,7 +313,7 @@ public class DefaultX4OLanguageLoader implements X4OLanguageLoader { versionedResources = null; return; } - if (versionedResources == null) { + if (versionedResources==null) { return; } @@ -323,13 +326,13 @@ public class DefaultX4OLanguageLoader implements X4OLanguageLoader { } else if ("sibling-loader".equals(tag)) { versionedResources.siblingLoaders.add(value); } - logger.finest("Stored tag: " + tag + " value: " + value); + logger.finest("Stored tag: "+tag+" value: "+value); } @Override public void characters(char[] ch, int start, int length) throws SAXException { - String text = new String(ch, start, length).trim(); - if (text.length() == 0) { + String text = new String(ch,start,length).trim(); + if (text.length()==0) { return; } buf.append(text); diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/DefaultX4OLanguageSession.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/DefaultX4OLanguageSession.java index 0ed305a..f8c0654 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/DefaultX4OLanguageSession.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/DefaultX4OLanguageSession.java @@ -22,8 +22,6 @@ */ package org.x4o.xml.lang; -import org.x4o.xml.io.X4OConnectionException; -import org.x4o.xml.lang.phase.X4OPhaseException; /** * An DefaultX4OLanguageSession. @@ -34,21 +32,9 @@ import org.x4o.xml.lang.phase.X4OPhaseException; public class DefaultX4OLanguageSession extends AbstractX4OLanguageSession { /** - * Creates a new empty language session. + * Creates a new empty language context. */ public DefaultX4OLanguageSession(X4OLanguage language) { super(language); } - - @Override - public void close() throws X4OConnectionException { - if (getLanguage().getPhaseManager() == null) { - return; - } - try { - getLanguage().getPhaseManager().doReleasePhaseManual(this); - } catch (X4OPhaseException e) { - throw new X4OConnectionException(e); - } - } } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageClassLoader.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageClassLoader.java index 0c6351c..55fabf2 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageClassLoader.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageClassLoader.java @@ -23,7 +23,6 @@ package org.x4o.xml.lang; import java.io.InputStream; -import java.lang.reflect.InvocationTargetException; import java.net.URL; /** @@ -63,40 +62,27 @@ public final class X4OLanguageClassLoader { public static Class loadClass(String className) throws ClassNotFoundException { return getClassLoader().loadClass(className); } - - /** - * Creates new instance of clazz. - * @param resultType The result type to cast to.. - * @param clazz The class to make object from. - * @return The object of the clazz. - * @throws ClassNotFoundException On any construct access or invoke error. - */ - @SuppressWarnings("unchecked") - public static T newInstance(Class resultType, Class clazz) throws ClassNotFoundException { - return (T) newInstance(clazz); - } - + /** * Creates new instance of clazz. * @param clazz The class to make object from. * @return The object of the clazz. - * @throws ClassNotFoundException On any construct access or invoke error. + * @throws InstantiationException When className has no default constructor. + * @throws IllegalAccessException When class loading has security error. */ - public static Object newInstance(Class clazz) throws ClassNotFoundException { - try { - return clazz.getConstructor().newInstance(); - } catch (IllegalArgumentException | InvocationTargetException | NoSuchMethodException | SecurityException | InstantiationException | IllegalAccessException e) { - throw new ClassNotFoundException(e.getMessage(), e); - } + public static Object newInstance(Class clazz) throws InstantiationException, IllegalAccessException { + return clazz.newInstance(); } /** * Creates new instance of className. * @param className The className to create object from. * @return The object of the className. - * @throws ClassNotFoundException When className is not found or can't be created. + * @throws ClassNotFoundException When className is not found. + * @throws InstantiationException When className has no default constructor. + * @throws IllegalAccessException When class loading has security error. */ - public static Object newInstance(String className) throws ClassNotFoundException { + public static Object newInstance(String className) throws ClassNotFoundException, InstantiationException, IllegalAccessException { return newInstance(loadClass(className)); } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageLoader.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageLoader.java index 342a165..43d7454 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageLoader.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageLoader.java @@ -32,11 +32,10 @@ public interface X4OLanguageLoader { /** * Loads the language modules. - * @param session The session we run in. - * @param language The local Language to load for. + * @param languageLocal The elementLanguage to load the module in. * @param languageName The language name to load. * @param languageVersion The language version to load. * @throws X4OLanguageLoaderException When there is an error. */ - void loadLanguage(X4OLanguageSession session, X4OLanguageLocal language, String languageName, String languageVersion) throws X4OLanguageLoaderException; + void loadLanguage(X4OLanguageLocal languageLocal,String languageName,String languageVersion) throws X4OLanguageLoaderException; } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageLocal.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageLocal.java index 8fe4bca..4af718f 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageLocal.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageLocal.java @@ -22,7 +22,6 @@ */ package org.x4o.xml.lang; -import org.x4o.xml.lang.phase.X4OPhaseException; /** * X4OLanguageLocal exposes the add method to load the language. @@ -32,8 +31,11 @@ import org.x4o.xml.lang.phase.X4OPhaseException; */ public interface X4OLanguageLocal extends X4OLanguage { - // TODO: refactor a bit more a this is now called manually on magic places - void init(X4OLanguageSession session) throws X4OPhaseException; + /* + * @param parserConfiguration The parserConfiguration to set. + + void setLanguageConfiguration(X4OLanguageConfiguration parserConfiguration); + */ /** * Adds an X4OLanguageModule to this language. diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageModuleLoader.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageModuleLoader.java index 1279d05..82db17a 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageModuleLoader.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageModuleLoader.java @@ -33,10 +33,9 @@ public interface X4OLanguageModuleLoader { /** * Starts the ElementProvider. - * @param session The session we run in. - * @param language The local Language to load for. - * @param module The language module to load it into. + * @param language The ElementLanguage to load for. + * @param module The ElementLanguageModule to load it into. * @throws X4OLanguageModuleLoaderException Gets thrown when modules could not be correctly loaded. */ - void loadLanguageModule(X4OLanguageSession session, X4OLanguageLocal language, X4OLanguageModuleLocal module) throws X4OLanguageModuleLoaderException; + void loadLanguageModule(X4OLanguageLocal language,X4OLanguageModuleLocal module) throws X4OLanguageModuleLoaderException; } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageModuleLoaderSibling.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageModuleLoaderSibling.java index 49df662..c397e14 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageModuleLoaderSibling.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageModuleLoaderSibling.java @@ -35,10 +35,9 @@ public interface X4OLanguageModuleLoaderSibling extends X4OLanguageModuleLoader /** * Loads in the sibling language. - * @param session The session we run in. - * @param language The local Language to load for. - * @param loader The loader to use to load the x4o languages. + * @param languageLocal The ElementLanguage for which we load an sibling. + * @param languageLoader The loader to use to load the x4o languages. * @throws X4OLanguageLoaderException Gets thrown when there is an error loading the sibling language. */ - void loadLanguageSibling(X4OLanguageSession session, X4OLanguageLocal language, X4OLanguageLoader loader) throws X4OLanguageLoaderException; + void loadLanguageSibling(X4OLanguageLocal languageLocal,X4OLanguageLoader languageLoader) throws X4OLanguageLoaderException; } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageSession.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageSession.java index 9b2873d..802f63e 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageSession.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageSession.java @@ -30,7 +30,6 @@ import javax.el.ExpressionFactory; import org.x4o.xml.element.Element; import org.x4o.xml.element.ElementAttributeValueParser; import org.x4o.xml.element.ElementObjectPropertyValue; -import org.x4o.xml.io.X4OConnectionException; import org.x4o.xml.io.X4ODebugWriter; import org.x4o.xml.lang.phase.X4OPhase; @@ -40,7 +39,7 @@ import org.x4o.xml.lang.phase.X4OPhase; * @author Willem Cazander * @version 1.0 Feb 14, 2007 */ -public interface X4OLanguageSession extends AutoCloseable { +public interface X4OLanguageSession { /** * @return Returns the language from which this session in created. @@ -113,15 +112,10 @@ public interface X4OLanguageSession extends AutoCloseable { /** * @return Returns the phase this session will stop processing. */ - String getPhaseStop(); + public String getPhaseStop(); /** * @return Returns a list of phases we skip while processing. */ - List getPhaseSkip(); - - /** - * Closes this language session - */ - void close() throws X4OConnectionException; + public List getPhaseSkip(); } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageSessionLocal.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageSessionLocal.java index 200c5ee..e55592c 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageSessionLocal.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/X4OLanguageSessionLocal.java @@ -22,8 +22,6 @@ */ package org.x4o.xml.lang; -import java.util.List; - import javax.el.ELContext; import javax.el.ExpressionFactory; @@ -31,7 +29,6 @@ import org.x4o.xml.element.ElementAttributeValueParser; import org.x4o.xml.element.ElementObjectPropertyValue; import org.x4o.xml.io.X4ODebugWriter; import org.x4o.xml.lang.phase.X4OPhase; -import org.x4o.xml.lang.phase.X4OPhaseListener; /** * X4OLanguageSessionLocal is the local set interface for X4OLanguageSession. @@ -40,15 +37,7 @@ import org.x4o.xml.lang.phase.X4OPhaseListener; * @version 1.0 Oct 28, 2009 */ public interface X4OLanguageSessionLocal extends X4OLanguageSession { - - /** - * Returns list of phase listeners which where added to it. - * TODO: bad api here - * @param phaseId The phaseId of for the listeners. - * @return All X4OPhaseListeners. - */ - List storePhaseListeners(String phaseId); - + /** * Sets the EL Context. * @param context The ELContext to set. diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/meta/MetaLanguageSiblingLoader.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/meta/MetaLanguageSiblingLoader.java index 8a5833e..7b4b7ee 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/meta/MetaLanguageSiblingLoader.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/meta/MetaLanguageSiblingLoader.java @@ -28,7 +28,6 @@ import org.x4o.xml.lang.X4OLanguageLoader; import org.x4o.xml.lang.X4OLanguageLoaderException; import org.x4o.xml.lang.X4OLanguageLocal; import org.x4o.xml.lang.X4OLanguageModuleLocal; -import org.x4o.xml.lang.X4OLanguageSession; /** * MetaLanguageSiblingLoader loads the generic x4o meta language into defined language. @@ -50,16 +49,30 @@ public class MetaLanguageSiblingLoader implements X4OLanguageModuleLoaderSibling /** Defines the identifier of the meta x4o language host. */ public static final String META_LANGUAGE_DESCRIPTION = "X4O Meta XML Language Module."; - @Override - public void loadLanguageModule(X4OLanguageSession session, X4OLanguageLocal language, X4OLanguageModuleLocal module) throws X4OLanguageModuleLoaderException { - module.setId(META_LANGUAGE); - module.setProviderHost(META_LANGUAGE_HOST); - module.setProviderName(MetaLanguageSiblingLoader.class.getSimpleName()); - module.setDescription(META_LANGUAGE_DESCRIPTION); + /** + * Loads an ElementLanguageModule. + * @param language The ElementLanguage to load for. + * @param languageModule The ElementLanguageModule to load into. + * @throws X4OLanguageModuleLoaderException Is thrown when meta language could not be loaded. + * @see org.x4o.xml.lang.X4OLanguageModuleLoader#loadLanguageModule(org.x4o.xml.lang.X4OLanguageLocal, org.x4o.xml.lang.X4OLanguageModuleLocal) + */ + public void loadLanguageModule(X4OLanguageLocal language,X4OLanguageModuleLocal languageModule) throws X4OLanguageModuleLoaderException { + languageModule.setId(META_LANGUAGE); + languageModule.setProviderHost(META_LANGUAGE_HOST); + languageModule.setProviderName(MetaLanguageSiblingLoader.class.getSimpleName()); + languageModule.setDescription(META_LANGUAGE_DESCRIPTION); } - @Override - public void loadLanguageSibling(X4OLanguageSession session, X4OLanguageLocal language, X4OLanguageLoader loader) throws X4OLanguageLoaderException { - loader.loadLanguage(session, language, META_LANGUAGE, META_LANGUAGE_VERSION); + /** + * Loads an sibling language. + * @param language The ElementLanguage to load for. + * @param languageLoader The x4o language loader. + * @throws X4OLanguageLoaderException + * @see org.x4o.xml.lang.X4OLanguageModuleLoaderSibling#loadLanguageSibling(org.x4o.xml.lang.X4OLanguageLocal, org.x4o.xml.lang.X4OLanguageLoader) + */ + public void loadLanguageSibling(X4OLanguageLocal language,X4OLanguageLoader languageLoader) throws X4OLanguageLoaderException { + + // Load the meta language. + languageLoader.loadLanguage(language, META_LANGUAGE, META_LANGUAGE_VERSION); } } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/phase/AbstractX4OPhase.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/phase/AbstractX4OPhase.java index 2a06701..419ea93 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/phase/AbstractX4OPhase.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/phase/AbstractX4OPhase.java @@ -22,8 +22,10 @@ */ package org.x4o.xml.lang.phase; +import java.util.ArrayList; +import java.util.List; + import org.x4o.xml.element.Element; -import org.x4o.xml.element.ElementException; import org.x4o.xml.lang.X4OLanguageSession; @@ -34,11 +36,14 @@ import org.x4o.xml.lang.X4OLanguageSession; * @version 1.0 Dec 31, 2008 */ public abstract class AbstractX4OPhase implements X4OPhase { + + protected List phaseListeners = null; /** * Creates the AbstractX4OPhaseHandler. */ public AbstractX4OPhase() { + phaseListeners = new ArrayList(3); } /** @@ -48,6 +53,30 @@ public abstract class AbstractX4OPhase implements X4OPhase { return false; } + /** + * Gets the phase listeners. + * @return The x4o phase listeners. + */ + public List getPhaseListeners() { + return phaseListeners; + } + + /** + * Adds a phase listener. + * @param listener The phase listener to add. + */ + public void addPhaseListener(X4OPhaseListener listener) { + phaseListeners.add(listener); + } + + /** + * Removed a phase listener. + * @param listener The phase listener to remove. + */ + public void removePhaseListener(X4OPhaseListener listener) { + phaseListeners.remove(listener); + } + /** * If returns true then this handler will run on all elements. * @return defaults to true. @@ -68,17 +97,6 @@ public abstract class AbstractX4OPhase implements X4OPhase { * @param elementLanguage The language to run phase for. * @throws X4OPhaseException when phase has error. */ - public void runPhase(X4OLanguageSession languageSession) throws X4OPhaseException { - } - - public void debugPhaseMessage(X4OLanguageSession languageSession, String message) throws X4OPhaseException { - if (!languageSession.hasX4ODebugWriter()) { - return; - } - try { - languageSession.getX4ODebugWriter().debugPhaseMessage(message,this.getClass()); - } catch (ElementException ee) { - throw new X4OPhaseException(this, ee); - } + public void runPhase(X4OLanguageSession elementLanguage) throws X4OPhaseException { } } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/phase/DefaultX4OPhaseManager.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/phase/DefaultX4OPhaseManager.java index 98d0289..099d4b5 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/phase/DefaultX4OPhaseManager.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/phase/DefaultX4OPhaseManager.java @@ -41,7 +41,7 @@ import org.x4o.xml.lang.X4OLanguageSessionLocal; public class DefaultX4OPhaseManager implements X4OPhaseManagerLocal { /** The X4OPhaseHandler */ - private final List x4oPhases; + private List x4oPhases = null; /** * Constructor. @@ -68,7 +68,7 @@ PHASE_ORDER = { *startupX4OPhase, */ public X4OPhase getPhase(String phaseName) { - for (X4OPhase phase : x4oPhases) { + for (X4OPhase phase:x4oPhases) { if (phase.getId().equals(phaseName)) { return phase; } @@ -78,7 +78,7 @@ PHASE_ORDER = { *startupX4OPhase, public List getPhaseKeys() { List result = new ArrayList(x4oPhases.size()); - for (X4OPhase phase : x4oPhases) { + for (X4OPhase phase:x4oPhases) { result.add(phase.getId()); } return result; @@ -97,6 +97,7 @@ PHASE_ORDER = { *startupX4OPhase, // throw new IllegalStateException("Can't add new phases after first phase is completed."); //} x4oPhases.add(phase); + } /** @@ -113,12 +114,12 @@ PHASE_ORDER = { *startupX4OPhase, */ public List getOrderedPhases(X4OPhaseType type) { List result = new ArrayList(x4oPhases.size()); - for (X4OPhase p : x4oPhases) { + for (X4OPhase p:x4oPhases) { if (p.getType().equals(type)) { result.add(p); } } - Collections.sort(result, new X4OPhaseComparator()); + Collections.sort(result,new X4OPhaseComparator()); return result; } @@ -126,15 +127,13 @@ PHASE_ORDER = { *startupX4OPhase, * Runs all the phases in the right order. * @throws X4OPhaseException When a running handlers throws one. */ - public void runPhases(X4OLanguageSession languageSession, X4OPhaseType type) throws X4OPhaseException { - // convert to local for state changes - X4OLanguageSessionLocal languageSessionLocal = X4OLanguageSessionLocal.class.cast(languageSession); + public void runPhases(X4OLanguageSession languageSession,X4OPhaseType type) throws X4OPhaseException { // sort for the order List x4oPhasesOrder = getOrderedPhases(type); // debug output - if (languageSession.getX4ODebugWriter() != null) { + if (languageSession.getX4ODebugWriter()!=null) { languageSession.getX4ODebugWriter().debugPhaseOrder(x4oPhasesOrder); } @@ -142,17 +141,17 @@ PHASE_ORDER = { *startupX4OPhase, String phaseStop = languageSession.getPhaseStop(); // run the phases in ordered order - for (X4OPhase phase : x4oPhasesOrder) { + for (X4OPhase phase:x4oPhasesOrder) { if (phaseSkip.contains(phase.getId())) { continue; // skip phase when requested by context } // debug output - languageSessionLocal.setPhaseCurrent(phase); + ((X4OLanguageSessionLocal)languageSession).setPhaseCurrent(phase); // run listeners - for (X4OPhaseListener l : languageSessionLocal.storePhaseListeners(phase.getId())) { + for (X4OPhaseListener l:phase.getPhaseListeners()) { l.preRunPhase(phase, languageSession); } @@ -162,15 +161,15 @@ PHASE_ORDER = { *startupX4OPhase, phase.runPhase(languageSession); // run the element phase if possible - executePhaseRoot(languageSession, phase); + executePhaseRoot(languageSession,phase); } finally { // run the listeners again - for (X4OPhaseListener l : languageSessionLocal.storePhaseListeners(phase.getId())) { + for (X4OPhaseListener l:phase.getPhaseListeners()) { l.endRunPhase(phase, languageSession); } } - if (phaseStop != null && phaseStop.equals(phase.getId())) { + if (phaseStop!=null && phaseStop.equals(phase.getId())) { return; // we are done } } @@ -189,8 +188,8 @@ PHASE_ORDER = { *startupX4OPhase, // sort for the order List x4oPhasesOrder = getOrderedPhases(type); - for (X4OPhase phase : x4oPhasesOrder) { - if (phase.getId().equals(p.getId()) == false) { + for (X4OPhase phase:x4oPhasesOrder) { + if (phase.getId().equals(p.getId())==false) { continue; // we start running all phases from specified phase } if (phaseSkip.contains(phase.getId())) { @@ -204,9 +203,9 @@ PHASE_ORDER = { *startupX4OPhase, phase.runPhase(languageSession); // run the element phase if possible - executePhaseRoot(languageSession, phase); + executePhaseRoot(languageSession,phase); - if (phaseStop != null && phaseStop.equals(phase.getId())) { + if (phaseStop!=null && phaseStop.equals(phase.getId())) { return; // we are done } } @@ -225,25 +224,24 @@ PHASE_ORDER = { *startupX4OPhase, if (phaseSkip.contains(X4OPhaseLanguageWrite.WRITE_RELEASE)) { releaseRequested = X4OPhaseLanguageWrite.WRITE_RELEASE; } - if (releaseRequested == null) { - return; // No manual release requested - //throw new IllegalStateException("No manual release requested."); + if (releaseRequested==null) { + throw new IllegalStateException("No manual release requested."); } - if (languageSession.getRootElement() == null) { + if (languageSession.getRootElement()==null) { return; // no root element , empty xml document ? } - if (languageSession.getRootElement().getElementClass() == null) { + if (languageSession.getRootElement().getElementClass()==null) { throw new IllegalStateException("Release phase has already been runned."); } X4OPhase h = null; - for (X4OPhase phase : x4oPhases) { + for (X4OPhase phase:x4oPhases) { if (phase.getId().equals(releaseRequested)) { h = phase; break; } } - if (h == null) { + if (h==null) { throw new IllegalStateException("No release phase found in manager to run."); } @@ -254,7 +252,7 @@ PHASE_ORDER = { *startupX4OPhase, h.runPhase(languageSession); // run the element phase if possible - executePhaseRoot(languageSession, h); + executePhaseRoot(languageSession,h); } class X4OPhaseComparator implements Comparator { @@ -266,7 +264,7 @@ PHASE_ORDER = { *startupX4OPhase, String pid = e1.getId(); String[] dpids = e2.getPhaseDependencies(); - for (int i = 0; i < dpids.length; i++) { + for (int i=0;i getPhaseListeners(); + + /** + * Adds an X4OPhaseListener. + * @param listener The listener to add. + */ + void addPhaseListener(X4OPhaseListener listener); + + /** + * Removes an X4OPhaseListener. + * @param listener The listener to remove. + */ + void removePhaseListener(X4OPhaseListener listener); + /** * runPhase is called but should do nothig. * When elementPhase is enables x4o tries to merge all element phases so diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/phase/X4OPhaseLanguageInit.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/phase/X4OPhaseLanguageInit.java index b554e5c..c279734 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/phase/X4OPhaseLanguageInit.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/phase/X4OPhaseLanguageInit.java @@ -76,7 +76,7 @@ public class X4OPhaseLanguageInit { } public void runElementPhase(Element element) throws X4OPhaseException { } - public void runPhase(X4OLanguageSession languageSession) throws X4OPhaseException { + public void runPhase(X4OLanguageSession languageSession) throws X4OPhaseException { logger.finest("Run init start phase"); } }; @@ -100,12 +100,11 @@ public class X4OPhaseLanguageInit { } public void runElementPhase(Element element) throws X4OPhaseException { } - public void runPhase(X4OLanguageSession languageSession) throws X4OPhaseException { + public void runPhase(X4OLanguageSession languageSession) throws X4OPhaseException { try { - debugPhaseMessage(languageSession, "Load main language: " + languageSession.getLanguage().getLanguageName()); - X4OLanguageLoader loader = X4OLanguageClassLoader.newInstance(X4OLanguageLoader.class, languageSession.getLanguage().getLanguageConfiguration().getDefaultLanguageLoader()); - X4OLanguageLocal language = (X4OLanguageLocal)languageSession.getLanguage(); - loader.loadLanguage(languageSession, language, language.getLanguageName(), language.getLanguageVersion()); + //debugPhaseMessage("Loading main language: "+elementLanguage.getLanguage(),this,elementLanguage); + X4OLanguageLoader loader = (X4OLanguageLoader)X4OLanguageClassLoader.newInstance(languageSession.getLanguage().getLanguageConfiguration().getDefaultLanguageLoader()); + loader.loadLanguage((X4OLanguageLocal)languageSession.getLanguage(),languageSession.getLanguage().getLanguageName(),languageSession.getLanguage().getLanguageVersion()); if (languageSession.hasX4ODebugWriter()) { languageSession.getX4ODebugWriter().debugElementLanguageModules(languageSession); @@ -142,11 +141,10 @@ public class X4OPhaseLanguageInit { public void runPhase(X4OLanguageSession languageSession) throws X4OPhaseException { try { if (siblingLoaders.isEmpty()==false) { - X4OLanguageLoader loader = X4OLanguageClassLoader.newInstance(X4OLanguageLoader.class, languageSession.getLanguage().getLanguageConfiguration().getDefaultLanguageLoader()); - X4OLanguageLocal language = (X4OLanguageLocal)languageSession.getLanguage(); + X4OLanguageLoader loader = (X4OLanguageLoader)X4OLanguageClassLoader.newInstance(languageSession.getLanguage().getLanguageConfiguration().getDefaultLanguageLoader()); for (X4OLanguageModuleLoaderSibling siblingLoader:siblingLoaders) { - debugPhaseMessage(languageSession, "Loading sibling langauge loader: " + siblingLoader); - siblingLoader.loadLanguageSibling(languageSession, language, loader); + //debugPhaseMessage("Loading sibling langauge loader: "+siblingLoader,this,elementLanguage); + siblingLoader.loadLanguageSibling((X4OLanguageLocal)languageSession.getLanguage(), loader); } if (languageSession.hasX4ODebugWriter()) { languageSession.getX4ODebugWriter().debugElementLanguageModules(languageSession); @@ -177,7 +175,7 @@ public class X4OPhaseLanguageInit { } public void runElementPhase(Element element) throws X4OPhaseException { } - public void runPhase(X4OLanguageSession languageSession) throws X4OPhaseException { + public void runPhase(X4OLanguageSession languageSession) throws X4OPhaseException { logger.finest("Run init end phase"); } }; diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/phase/X4OPhaseLanguageRead.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/phase/X4OPhaseLanguageRead.java index 64f6281..70907f0 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/phase/X4OPhaseLanguageRead.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/phase/X4OPhaseLanguageRead.java @@ -32,6 +32,7 @@ import java.util.logging.Logger; import org.x4o.xml.conv.ObjectConverterException; import org.x4o.xml.element.Element; import org.x4o.xml.element.ElementNamespaceAttribute; +import org.x4o.xml.io.X4ODebugWriter; import org.x4o.xml.element.ElementAttributeValueParser; import org.x4o.xml.element.ElementBindingHandler; import org.x4o.xml.element.ElementClassAttribute; @@ -43,6 +44,8 @@ import org.x4o.xml.element.ElementNamespace; import org.x4o.xml.lang.X4OLanguageModule; import org.x4o.xml.lang.X4OLanguageSession; import org.x4o.xml.lang.X4OLanguageClassLoader; +import org.xml.sax.SAXException; +import org.xml.sax.helpers.AttributesImpl; /** * Factory which can create X4OPhaseHandlers for all the predefined phases used in default x4o language parsing. @@ -110,6 +113,16 @@ public class X4OPhaseLanguageRead { // We are done } + private void debugPhaseMessage(String message,X4OPhase phaseHandler,X4OLanguageSession languageSession) throws X4OPhaseException { + if (languageSession.hasX4ODebugWriter()) { + try { + languageSession.getX4ODebugWriter().debugPhaseMessage(message,phaseHandler.getClass()); + } catch (ElementException ee) { + throw new X4OPhaseException(phaseHandler,ee); + } + } + } + /** * Creates the startX4OPhase which is a empty meta phase. */ @@ -264,7 +277,7 @@ public class X4OPhaseLanguageRead { if (elementNamespaceAttributeComparator==null) { try { elementNamespaceAttributeComparator = (Comparator)X4OLanguageClassLoader.newInstance(element.getLanguageSession().getLanguage().getLanguageConfiguration().getDefaultElementNamespaceAttributeComparator()); - } catch (ClassNotFoundException e) { + } catch (Exception e) { throw new X4OPhaseException(this,e); } } @@ -418,7 +431,7 @@ public class X4OPhaseLanguageRead { class X4OPhaseReadRunDirty extends AbstractX4OPhase { private X4OPhaseManager phaseManager = null; public X4OPhaseReadRunDirty(X4OPhaseManager phaseManager) { - this.phaseManager = phaseManager; + this.phaseManager=phaseManager; } public X4OPhaseType getType() { return X4OPhaseType.XML_READ; @@ -434,9 +447,9 @@ public class X4OPhaseLanguageRead { if (dirtyElements.isEmpty()) { return; } - debugPhaseMessage(element.getLanguageSession(), "Dirty elements: " + dirtyElements.size()); + debugPhaseMessage("Dirty elements: "+dirtyElements.size(), this,element.getLanguageSession()); X4OPhase p = phaseManager.getPhase(READ_BEGIN); - for (Element e : dirtyElements) { + for (Element e:dirtyElements) { phaseManager.runPhasesForElement(e,getType(), p); } element.getLanguageSession().getDirtyElements().clear(); @@ -449,7 +462,7 @@ public class X4OPhaseLanguageRead { class X4OPhaseReadRunDirtyLast extends AbstractX4OPhase { private X4OPhaseManager phaseManager = null; public X4OPhaseReadRunDirtyLast(X4OPhaseManager phaseManager) { - this.phaseManager = phaseManager; + this.phaseManager=phaseManager; } public X4OPhaseType getType() { return X4OPhaseType.XML_READ; @@ -465,9 +478,9 @@ public class X4OPhaseLanguageRead { if (dirtyElements.isEmpty()) { return; } - debugPhaseMessage(element.getLanguageSession(), "Dirty elements last: " + dirtyElements.size()); + debugPhaseMessage("Dirty elements last: "+dirtyElements.size(), this,element.getLanguageSession()); X4OPhase p = phaseManager.getPhase(READ_BEGIN); - for (Element e : dirtyElements) { + for (Element e:dirtyElements) { phaseManager.runPhasesForElement(e,getType(), p); } element.getLanguageSession().getDirtyElements().clear(); @@ -631,6 +644,7 @@ public class X4OPhaseLanguageRead { // print the properties and classes for this language/config if (languageSession.hasX4ODebugWriter()) { try { + //languageSession.getX4ODebugWriter().debugLanguageProperties(languageSession); languageSession.getX4ODebugWriter().debugLanguageDefaultClasses(languageSession); } catch (ElementException e) { throw new X4OPhaseException(this,e); @@ -645,13 +659,18 @@ public class X4OPhaseLanguageRead { */ public X4OPhase releasePhase() { - // for debug output TODO: redo release counters - /* + // for debug output class ReleasePhaseListener implements X4OPhaseListener { private int elementsReleased = 0; + /** + * @see org.x4o.xml.lang.phase.X4OPhaseListener#preRunPhase(org.x4o.xml.lang.phase.X4OPhase, org.x4o.xml.lang.X4OLanguageSession) + */ public void preRunPhase(X4OPhase phase,X4OLanguageSession languageSession) throws X4OPhaseException { elementsReleased=0; } + /** + * @see org.x4o.xml.lang.phase.X4OPhaseListener#endRunPhase(org.x4o.xml.lang.phase.X4OPhase, org.x4o.xml.lang.X4OLanguageSession) + */ public void endRunPhase(X4OPhase phase,X4OLanguageSession languageSession) throws X4OPhaseException { if (languageSession.hasX4ODebugWriter()==false) { return; @@ -670,9 +689,8 @@ public class X4OPhaseLanguageRead { elementsReleased++; } } - */ - //final ReleasePhaseListener releaseCounter = new ReleasePhaseListener(); + final ReleasePhaseListener releaseCounter = new ReleasePhaseListener(); X4OPhase result = new AbstractX4OPhase() { public X4OPhaseType getType() { return X4OPhaseType.XML_READ; @@ -690,12 +708,12 @@ public class X4OPhaseLanguageRead { element.release(); } catch (ElementException e) { throw new X4OPhaseException(this,e); - }// finally { - // releaseCounter.addReleasedElement(); - //} + } finally { + releaseCounter.addReleasedElement(); + } } }; - //result.addPhaseListener(releaseCounter); + result.addPhaseListener(releaseCounter); return result; } } diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/run/X4OTaskCommandLine.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/run/X4OTaskCommandLine.java index 6c950cd..1efb69d 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/run/X4OTaskCommandLine.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/run/X4OTaskCommandLine.java @@ -38,6 +38,7 @@ import org.x4o.xml.X4ODriverManager; import org.x4o.xml.lang.X4OLanguage; import org.x4o.xml.lang.task.X4OLanguageTask; import org.x4o.xml.lang.task.X4OLanguageTaskException; +import org.x4o.xml.lang.task.X4OLanguageTaskExecutor; /** * X4OLanguageTaskCommandLine runs a language task from the command line. @@ -86,8 +87,9 @@ public class X4OTaskCommandLine { } private void executeLanguageTask() throws X4OLanguageTaskException { - X4OLanguage language = driver.createLanguage(); // TODO: also add support for version select - X4OTaskRunner.runTaskLanguage(task, language, config); + X4OLanguageTaskExecutor taskExecutor = task.createTaskExecutor(config); + X4OLanguage language = driver.createLanguage(); + taskExecutor.execute(language); } private void systemErrExit(String message) { diff --git a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/run/X4OTaskRunner.java b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/run/X4OTaskRunner.java index f1fab44..6f11075 100644 --- a/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/run/X4OTaskRunner.java +++ b/nx01-x4o-driver/src/main/java/org/x4o/xml/lang/task/run/X4OTaskRunner.java @@ -27,53 +27,38 @@ import java.util.List; import org.x4o.sax3.io.SAX3PropertyConfig; import org.x4o.xml.X4ODriver; import org.x4o.xml.X4ODriverManager; -import org.x4o.xml.io.X4OConnectionException; import org.x4o.xml.lang.X4OLanguage; -import org.x4o.xml.lang.X4OLanguageLocal; -import org.x4o.xml.lang.X4OLanguageSession; -import org.x4o.xml.lang.phase.X4OPhaseException; import org.x4o.xml.lang.task.X4OLanguageTask; import org.x4o.xml.lang.task.X4OLanguageTaskException; import org.x4o.xml.lang.task.X4OLanguageTaskExecutor; /** - * X4OTaskRunner finds all x4o objects and configs and then run the x4o langauge - * task. + * X4OTaskRunner finds all x4o objects and configs and then run the x4o langauge task. * * @author Willem Cazander * @version 1.0 Aug 30, 2013 */ public final class X4OTaskRunner { - - static public void runTask(String languageName, String languageVersion, String taskId, List props) throws X4OLanguageTaskException { + + static public void runTask(String languageName,String languageVersion,String taskId,List props) throws X4OLanguageTaskException { X4ODriver driver = X4ODriverManager.getX4ODriver(languageName); X4OLanguageTask task = driver.getLanguageTask(taskId); - if (task == null) { - throw new NullPointerException("Could not find x4o task with id; " + taskId); + if (task==null) { + throw new NullPointerException("Could not find x4o task with id; "+taskId); } SAX3PropertyConfig config = task.createTaskConfig(); - for (X4OTaskProperty prop : props) { + for (X4OTaskProperty prop:props) { String key = prop.getKey(); String value = prop.getValue(); config.setPropertyParsedValue(key, value); } + X4OLanguageTaskExecutor taskExecutor = task.createTaskExecutor(config); X4OLanguage language = null; - if (languageVersion == null) { + if (languageVersion==null) { language = driver.createLanguage(); } else { language = driver.createLanguage(languageVersion); } - runTaskLanguage(task, language, config); - } - - static public void runTaskLanguage(X4OLanguageTask task, X4OLanguage language, SAX3PropertyConfig config) throws X4OLanguageTaskException { - X4OLanguageTaskExecutor taskExecutor = task.createTaskExecutor(config); - // Run init to load the language, which is 'normally' in read or write for deep recursief debugging support. - try (X4OLanguageSession session = language.createLanguageSession()) { - X4OLanguageLocal.class.cast(language).init(session); - } catch (X4OConnectionException | X4OPhaseException e) { - throw new X4OLanguageTaskException(config, e.getMessage(), e); - } taskExecutor.execute(language); } } diff --git a/nx01-x4o-driver/src/test/java/org/x4o/xml/X4ODriverManagerTest.java b/nx01-x4o-driver/src/test/java/org/x4o/xml/X4ODriverManagerTest.java index 2d14abe..26aea3a 100644 --- a/nx01-x4o-driver/src/test/java/org/x4o/xml/X4ODriverManagerTest.java +++ b/nx01-x4o-driver/src/test/java/org/x4o/xml/X4ODriverManagerTest.java @@ -26,10 +26,6 @@ import java.util.List; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; -import org.x4o.xml.lang.X4OLanguage; -import org.x4o.xml.lang.X4OLanguageLocal; -import org.x4o.xml.lang.X4OLanguageSession; -import org.x4o.xml.lang.X4OLanguageSessionLocal; /** * X4ODriverManager @@ -90,13 +86,12 @@ public class X4ODriverManagerTest { @Test public void testLanguageVersionNonExcisting() throws Exception { - String languageTest = "test"; - String versionTest = "99.9"; + String language = "test"; + String version = "99.9"; Throwable e = null; try { - X4ODriver driver = X4ODriverManager.getX4ODriver(languageTest); - X4OLanguage language = driver.createLanguage(versionTest); - X4OLanguageLocal.class.cast(language).init(language.createLanguageSession()); + X4ODriver driver = X4ODriverManager.getX4ODriver(language); + driver.createLanguage(version).createLanguageSession(); } catch (Throwable catchE) { e = catchE; } diff --git a/nx01-x4o-driver/src/test/java/org/x4o/xml/core/NamespaceUriTest.java b/nx01-x4o-driver/src/test/java/org/x4o/xml/core/NamespaceUriTest.java index 0cfef08..4b8e9db 100644 --- a/nx01-x4o-driver/src/test/java/org/x4o/xml/core/NamespaceUriTest.java +++ b/nx01-x4o-driver/src/test/java/org/x4o/xml/core/NamespaceUriTest.java @@ -41,35 +41,44 @@ public class NamespaceUriTest { @Test public void testSimpleUri() throws Exception { + X4OLanguageSession context = null; TestDriver driver = TestDriver.getInstance(); X4OReaderSession reader = driver.createReaderSession(); reader.addPhaseSkip(X4OPhaseLanguageRead.READ_RELEASE); - try (X4OLanguageSession session = reader.createLanguageSession()) { - reader.readResourceSession(session, "tests/namespace/uri-simple.xml"); - Assertions.assertEquals(true,session.getRootElement().getChilderen().size()==1); + try { + context = reader.readResourceSession("tests/namespace/uri-simple.xml"); + Assertions.assertEquals(true,context.getRootElement().getChilderen().size()==1); + } finally { + reader.releaseSession(context); } } @Test public void testEmptyUri() throws Exception { + X4OLanguageSession context = null; TestDriver driver = TestDriver.getInstance(); X4OReaderSession reader = driver.createReaderSession(); reader.addPhaseSkip(X4OPhaseLanguageRead.READ_RELEASE); reader.setProperty(DefaultX4OReader.DOC_EMPTY_NAMESPACE_URI, "http://test.junit.x4o.org/xml/ns/junit-test-lang"); - try (X4OLanguageSession session = reader.createLanguageSession()) { - reader.readResourceSession(session, "tests/namespace/uri-empty.xml"); - Assertions.assertEquals(true,session.getRootElement().getChilderen().size()==1); + try { + context = reader.readResourceSession("tests/namespace/uri-empty.xml"); + Assertions.assertEquals(true,context.getRootElement().getChilderen().size()==1); + } finally { + reader.releaseSession(context); } } @Test public void testSchemaUri() throws Exception { + X4OLanguageSession context = null; TestDriver driver = TestDriver.getInstance(); X4OReaderSession reader = driver.createReaderSession(); reader.addPhaseSkip(X4OPhaseLanguageRead.READ_RELEASE); - try (X4OLanguageSession session = reader.createLanguageSession()) { - reader.readResourceSession(session, "tests/namespace/uri-schema.xml"); - Assertions.assertEquals(true,session.getRootElement().getChilderen().size()==1); + try { + context = reader.readResourceSession("tests/namespace/uri-schema.xml"); + Assertions.assertEquals(true,context.getRootElement().getChilderen().size()==1); + } finally { + reader.releaseSession(context); } } } diff --git a/nx01-x4o-driver/src/test/java/org/x4o/xml/core/X4ODebugWriterTest.java b/nx01-x4o-driver/src/test/java/org/x4o/xml/core/X4ODebugWriterTest.java index d5e44b5..b030b70 100644 --- a/nx01-x4o-driver/src/test/java/org/x4o/xml/core/X4ODebugWriterTest.java +++ b/nx01-x4o-driver/src/test/java/org/x4o/xml/core/X4ODebugWriterTest.java @@ -28,18 +28,13 @@ import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStreamReader; -import java.io.OutputStream; import java.nio.charset.Charset; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; -import org.x4o.sax3.SAX3WriterXml; -import org.x4o.sax3.io.ContentCloseable; -import org.x4o.sax3.io.ContentWriter; import org.x4o.xml.X4ODriver; import org.x4o.xml.io.DefaultX4OReader; import org.x4o.xml.io.DefaultX4OWriter; -import org.x4o.xml.io.X4ODebugWriter; import org.x4o.xml.io.X4OReader; import org.x4o.xml.io.X4OWriter; import org.x4o.xml.test.TestDriver; @@ -82,13 +77,8 @@ public class X4ODebugWriterTest { File debugFile = createDebugFile(); X4ODriver driver = TestDriver.getInstance(); X4OReader reader = driver.createReader(); - try (ContentWriter debugHandler = new SAX3WriterXml(new FileOutputStream(debugFile))) { - try (ContentCloseable docClosure = debugHandler.startDocumentClosure()) { - debugHandler.startPrefixMapping(X4ODebugWriter.DEBUG_URI_NS, X4ODebugWriter.DEBUG_URI); - reader.setProperty(DefaultX4OReader.DEBUG_OUTPUT_HANDLER, debugHandler); - reader.readResource("tests/attributes/test-bean.xml"); - } - } + reader.setProperty(DefaultX4OReader.DEBUG_OUTPUT_STREAM, new FileOutputStream(debugFile)); + reader.readResource("tests/attributes/test-bean.xml"); Assertions.assertTrue(debugFile.exists(), "Debug file does not exists."); String debug = readFile(debugFile); @@ -110,10 +100,8 @@ public class X4ODebugWriterTest { X4OWriter writer = driver.createWriter(); TestObjectRoot object = reader.readResource("tests/attributes/test-bean.xml"); - try (OutputStream out = new FileOutputStream(debugFile)) { - writer.setProperty(DefaultX4OWriter.DEBUG_OUTPUT_STREAM, out); - writer.writeFile(object, writeFile); - } + writer.setProperty(DefaultX4OWriter.DEBUG_OUTPUT_STREAM, new FileOutputStream(debugFile)); + writer.writeFile(object, writeFile); Assertions.assertTrue(debugFile.exists(), "Debug file does not exists."); String debug = readFile(debugFile); diff --git a/nx01-x4o-driver/src/test/java/org/x4o/xml/core/X4OEntityResolverTest.java b/nx01-x4o-driver/src/test/java/org/x4o/xml/core/X4OEntityResolverTest.java index b42e998..a3c9e2d 100644 --- a/nx01-x4o-driver/src/test/java/org/x4o/xml/core/X4OEntityResolverTest.java +++ b/nx01-x4o-driver/src/test/java/org/x4o/xml/core/X4OEntityResolverTest.java @@ -31,8 +31,6 @@ import org.x4o.xml.X4ODriver; import org.x4o.xml.eld.CelDriver; import org.x4o.xml.io.DefaultX4OReader; import org.x4o.xml.io.X4OEntityResolver; -import org.x4o.xml.lang.X4OLanguage; -import org.x4o.xml.lang.X4OLanguageLocal; import org.x4o.xml.lang.X4OLanguageSession; import org.x4o.xml.test.TestDriver; import org.x4o.xml.test.models.TestObjectRoot; @@ -64,19 +62,14 @@ public class X4OEntityResolverTest { @Test public void testResolve() throws Exception { X4ODriver driver = new CelDriver(); - X4OLanguage language = driver.createLanguage(); - try (X4OLanguageSession session = language.createLanguageSession()) { - X4OLanguageLocal.class.cast(language).init(session); - X4OEntityResolver resolver = new X4OEntityResolver(session, DefaultX4OReader.DEFAULT_PROPERTY_CONFIG); - InputSource input = resolver.resolveEntity("","http://cel.x4o.org/xml/ns/cel-root-1.0.xsd"); - Assertions.assertNotNull(input); - } + X4OEntityResolver resolver = new X4OEntityResolver(driver.createLanguage().createLanguageSession(),DefaultX4OReader.DEFAULT_PROPERTY_CONFIG); + InputSource input = resolver.resolveEntity("","http://cel.x4o.org/xml/ns/cel-root-1.0.xsd"); + Assertions.assertNotNull(input); } @Test public void testResolveMissing() throws Exception { X4ODriver driver = new TestDriver(); - // NOTE: this session is not inited, see fix code above. X4OEntityResolver resolver = new X4OEntityResolver(driver.createLanguage().createLanguageSession(),DefaultX4OReader.DEFAULT_PROPERTY_CONFIG); Exception e = null; try { diff --git a/nx01-x4o-driver/src/test/java/org/x4o/xml/eld/doc/X4OWriteLanguageDocExecutorTest.java b/nx01-x4o-driver/src/test/java/org/x4o/xml/eld/doc/X4OWriteLanguageDocExecutorTest.java index 461a754..9b3887a 100644 --- a/nx01-x4o-driver/src/test/java/org/x4o/xml/eld/doc/X4OWriteLanguageDocExecutorTest.java +++ b/nx01-x4o-driver/src/test/java/org/x4o/xml/eld/doc/X4OWriteLanguageDocExecutorTest.java @@ -32,7 +32,6 @@ import org.x4o.xml.X4ODriverManager; import org.x4o.xml.eld.CelDriver; import org.x4o.xml.eld.EldDriver; import org.x4o.xml.lang.task.X4OLanguageTask; -import org.x4o.xml.lang.task.run.X4OTaskRunner; import org.x4o.xml.test.TestDriver; /** @@ -57,7 +56,7 @@ public class X4OWriteLanguageDocExecutorTest { SAX3PropertyConfig config = task.createTaskConfig(); File outputPath = createOutputPath(outputPostfix); config.setProperty(EldDocWriter.OUTPUT_PATH,outputPath); - X4OTaskRunner.runTaskLanguage(task, driver.createLanguage(), config); + task.createTaskExecutor(config).execute(driver.createLanguage()); Assertions.assertTrue(outputPath.exists()); Assertions.assertTrue(outputPath.list()!=null); Assertions.assertTrue(outputPath.list().length>2); diff --git a/nx01-x4o-driver/src/test/java/org/x4o/xml/eld/xsd/EldXsdLanguageTaskTest.java b/nx01-x4o-driver/src/test/java/org/x4o/xml/eld/xsd/EldXsdLanguageTaskTest.java index 1f9a3f2..c2dbf8f 100644 --- a/nx01-x4o-driver/src/test/java/org/x4o/xml/eld/xsd/EldXsdLanguageTaskTest.java +++ b/nx01-x4o-driver/src/test/java/org/x4o/xml/eld/xsd/EldXsdLanguageTaskTest.java @@ -37,7 +37,6 @@ import org.x4o.xml.eld.EldDriver; import org.x4o.xml.eld.EldModuleLoaderCore; import org.x4o.xml.io.X4OWriterTest; import org.x4o.xml.lang.task.X4OLanguageTask; -import org.x4o.xml.lang.task.run.X4OTaskRunner; import org.x4o.xml.test.swixml.SwiXmlDriver; /** @@ -72,7 +71,7 @@ public class EldXsdLanguageTaskTest { config.setProperty(key, value); } } - X4OTaskRunner.runTaskLanguage(task, driver.createLanguage(), config); + task.createTaskExecutor(config).execute(driver.createLanguage()); Assertions.assertTrue(outputPath.exists()); Assertions.assertTrue(outputPath.list()!=null); return outputPath; diff --git a/nx01-x4o-driver/src/test/java/org/x4o/xml/io/X4OReaderSessionTest.java b/nx01-x4o-driver/src/test/java/org/x4o/xml/io/X4OReaderSessionTest.java index 691d7d3..bcffe16 100644 --- a/nx01-x4o-driver/src/test/java/org/x4o/xml/io/X4OReaderSessionTest.java +++ b/nx01-x4o-driver/src/test/java/org/x4o/xml/io/X4OReaderSessionTest.java @@ -62,7 +62,8 @@ public class X4OReaderSessionTest { TestDriver driver = TestDriver.getInstance(); X4OReaderSession reader = driver.createReaderSession(); File xmlFile = copyResourceToTempFile(); - TestObjectRoot root = reader.readFile(xmlFile.getAbsolutePath()); + X4OLanguageSession context = reader.readFileSession(xmlFile.getAbsolutePath()); + TestObjectRoot root = (TestObjectRoot)context.getRootElement().getElementObject(); Assertions.assertNotNull(root); Assertions.assertTrue(root.getTestBeans().size()>0); TestBean bean = root.getTestBeans().get(0); @@ -76,7 +77,7 @@ public class X4OReaderSessionTest { Exception e = null; try { String nullFileName = null; - reader.readFile(nullFileName); + reader.readFileSession(nullFileName); } catch (Exception catchE) { e = catchE; } @@ -91,7 +92,8 @@ public class X4OReaderSessionTest { TestDriver driver = TestDriver.getInstance(); X4OReaderSession reader = driver.createReaderSession(); File xmlFile = copyResourceToTempFile(); - TestObjectRoot root = reader.readFile(xmlFile); + X4OLanguageSession context = reader.readFileSession(xmlFile); + TestObjectRoot root = (TestObjectRoot)context.getRootElement().getElementObject(); Assertions.assertNotNull(root); Assertions.assertTrue(root.getTestBeans().size()>0); TestBean bean = root.getTestBeans().get(0); @@ -105,7 +107,7 @@ public class X4OReaderSessionTest { Exception e = null; try { File nullFile = null; - reader.readFile(nullFile); + reader.readFileSession(nullFile); } catch (Exception catchE) { e = catchE; } @@ -123,7 +125,7 @@ public class X4OReaderSessionTest { try { File tempFile = File.createTempFile("test-file", ".xml"); tempFile.delete(); - reader.readFile(tempFile); + reader.readFileSession(tempFile); } catch (Exception catchE) { e = catchE; } @@ -142,7 +144,7 @@ public class X4OReaderSessionTest { X4OReaderSession reader = driver.createReaderSession(); Exception e = null; try { - reader.readFile(new File("/etc/shadow")); + reader.readFileSession(new File("/etc/shadow")); } catch (Exception catchE) { e = catchE; } @@ -156,7 +158,8 @@ public class X4OReaderSessionTest { public void testReadResource() throws Exception { TestDriver driver = TestDriver.getInstance(); X4OReaderSession reader = driver.createReaderSession(); - TestObjectRoot root = reader.readResource("tests/attributes/test-bean.xml"); + X4OLanguageSession context = reader.readResourceSession("tests/attributes/test-bean.xml"); + TestObjectRoot root = (TestObjectRoot)context.getRootElement().getElementObject(); Assertions.assertNotNull(root); } @@ -166,7 +169,7 @@ public class X4OReaderSessionTest { X4OReaderSession reader = driver.createReaderSession(); Exception e = null; try { - reader.readResource(null); + reader.readResourceSession(null); } catch (Exception catchE) { e = catchE; } @@ -180,12 +183,13 @@ public class X4OReaderSessionTest { public void testReadString() throws Exception { TestDriver driver = TestDriver.getInstance(); X4OReaderSession reader = driver.createReaderSession(); - TestObjectRoot root = reader.readString( + X4OLanguageSession context = reader.readStringSession( ""+ ""+ ""+ "" ); + TestObjectRoot root = (TestObjectRoot)context.getRootElement().getElementObject(); Assertions.assertNotNull(root); Assertions.assertTrue(root.getTestBeans().size()>0); TestBean bean = root.getTestBeans().get(0); @@ -199,7 +203,7 @@ public class X4OReaderSessionTest { X4OReaderSession reader = driver.createReaderSession(); Exception e = null; try { - reader.readString(null); + reader.readStringSession(null); } catch (Exception catchE) { e = catchE; } @@ -214,7 +218,8 @@ public class X4OReaderSessionTest { TestDriver driver = TestDriver.getInstance(); X4OReaderSession reader = driver.createReaderSession(); URL xmlUrl = Thread.currentThread().getContextClassLoader().getResource("tests/attributes/test-bean.xml"); - TestObjectRoot root = reader.readUrl(xmlUrl); + X4OLanguageSession context = reader.readUrlSession(xmlUrl); + TestObjectRoot root = (TestObjectRoot)context.getRootElement().getElementObject(); Assertions.assertNotNull(root); Assertions.assertTrue(root.getTestBeans().size()>0); TestBean bean = root.getTestBeans().get(0); @@ -227,7 +232,7 @@ public class X4OReaderSessionTest { X4OReaderSession reader = driver.createReaderSession(); Exception e = null; try { - reader.readUrl(null); + reader.readUrlSession(null); } catch (Exception catchE) { e = catchE; } diff --git a/nx01-x4o-driver/src/test/java/org/x4o/xml/lang/DefaultX4OLanguageLoaderTest.java b/nx01-x4o-driver/src/test/java/org/x4o/xml/lang/DefaultX4OLanguageLoaderTest.java index 03b002f..5a4a34a 100644 --- a/nx01-x4o-driver/src/test/java/org/x4o/xml/lang/DefaultX4OLanguageLoaderTest.java +++ b/nx01-x4o-driver/src/test/java/org/x4o/xml/lang/DefaultX4OLanguageLoaderTest.java @@ -42,16 +42,13 @@ import org.x4o.xml.test.models.TestObjectRoot; public class DefaultX4OLanguageLoaderTest { static X4ODriver driver; - static X4OLanguageLocal language; - static X4OLanguageSession session; + static X4OLanguage language; static DefaultX4OLanguageLoader loader; @BeforeAll public static void setUp() throws Exception { driver = TestDriver.getInstance(); - language = (X4OLanguageLocal)driver.createLanguage(); - session = language.createLanguageSession(); - language.init(session); + language = driver.createLanguage(); loader = (DefaultX4OLanguageLoader)language.getLanguageConfiguration().getDefaultLanguageLoader().newInstance(); } @@ -59,7 +56,7 @@ public class DefaultX4OLanguageLoaderTest { public void testLoadingDuplicate() throws Exception { Exception e = null; try { - loader.loadLanguage(session, language, "test", "1.0"); + loader.loadLanguage((X4OLanguageLocal)language, "test", "1.0"); } catch (Exception ee) { e = ee; } diff --git a/nx01-x4o-driver/src/test/java/org/x4o/xml/lang/meta/ParentObjectTest.java b/nx01-x4o-driver/src/test/java/org/x4o/xml/lang/meta/ParentObjectTest.java index 3682889..d0da6dc 100644 --- a/nx01-x4o-driver/src/test/java/org/x4o/xml/lang/meta/ParentObjectTest.java +++ b/nx01-x4o-driver/src/test/java/org/x4o/xml/lang/meta/ParentObjectTest.java @@ -42,15 +42,18 @@ public class ParentObjectTest { @Test public void testParentElement() throws Exception { + X4OLanguageSession context = null; MTestDriver driver = new MTestDriver(); X4OReaderSession reader = driver.createReaderSession(); reader.addPhaseSkip(X4OPhaseLanguageRead.READ_RELEASE); - try (X4OLanguageSession session = reader.createLanguageSession()) { - reader.readResourceSession(session, "junit/test-meta-parent-element.xml"); - Assertions.assertEquals(1,session.getRootElement().getChilderen().size()); - Element childElement = session.getRootElement().getChilderen().get(0); + try { + context = reader.readResourceSession("junit/test-meta-parent-element.xml"); + Assertions.assertEquals(1,context.getRootElement().getChilderen().size()); + Element childElement = context.getRootElement().getChilderen().get(0); JLabel test = (JLabel)childElement.getElementObject(); Assertions.assertEquals("parentTest",test.getText()); + } finally { + reader.releaseSession(context); } } diff --git a/nx01-x4o-driver/src/test/java/org/x4o/xml/lang/meta/ReferenceStoreTest.java b/nx01-x4o-driver/src/test/java/org/x4o/xml/lang/meta/ReferenceStoreTest.java index 571371b..37c2368 100644 --- a/nx01-x4o-driver/src/test/java/org/x4o/xml/lang/meta/ReferenceStoreTest.java +++ b/nx01-x4o-driver/src/test/java/org/x4o/xml/lang/meta/ReferenceStoreTest.java @@ -40,37 +40,46 @@ public class ReferenceStoreTest { @Test public void testMetaGeneric() throws Exception { + X4OLanguageSession context = null; MTestDriver driver = new MTestDriver(); X4OReaderSession reader = driver.createReaderSession(); reader.addPhaseSkip(X4OPhaseLanguageRead.READ_RELEASE); - try (X4OLanguageSession session = reader.createLanguageSession()) { - reader.readResourceSession(session, "junit/test-meta-generic.xml"); - Assertions.assertEquals(Date.class.getName(),session.getRootElement().getChilderen().get(0).getElementObject().getClass().getName()); + try { + context = reader.readResourceSession("junit/test-meta-generic.xml"); + Assertions.assertEquals(Date.class.getName(),context.getRootElement().getChilderen().get(0).getElementObject().getClass().getName()); + } finally { + reader.releaseSession(context); } } @Test public void testLoadClass() throws Exception { + X4OLanguageSession context = null; MTestDriver driver = new MTestDriver(); X4OReaderSession reader = driver.createReaderSession(); reader.addPhaseSkip(X4OPhaseLanguageRead.READ_RELEASE); - try (X4OLanguageSession session = reader.createLanguageSession()) { - reader.readResourceSession(session, "junit/test-meta-reference.xml"); - Assertions.assertEquals(Date.class.getName(),session.getRootElement().getChilderen().get(0).getElementObject().getClass().getName()); + try { + context = reader.readResourceSession("junit/test-meta-reference.xml"); + Assertions.assertEquals(Date.class.getName(),context.getRootElement().getChilderen().get(0).getElementObject().getClass().getName()); + } finally { + reader.releaseSession(context); } } @Test public void testStoreRef() throws Exception { + X4OLanguageSession context = null; MTestDriver driver = new MTestDriver(); X4OReaderSession reader = driver.createReaderSession(); reader.addPhaseSkip(X4OPhaseLanguageRead.READ_RELEASE); - try (X4OLanguageSession session = reader.createLanguageSession()) { - reader.readResourceSession(session, "junit/test-meta-reference.xml"); - Assertions.assertEquals(Date.class.getName(),session.getRootElement().getChilderen().get(0).getElementObject().getClass().getName()); - Assertions.assertEquals(Date.class.getName(),session.getRootElement().getChilderen().get(1).getElementObject().getClass().getName()); - Assertions.assertEquals(Date.class.getName(),session.getRootElement().getChilderen().get(2).getElementObject().getClass().getName()); - Assertions.assertEquals(Date.class.getName(),session.getRootElement().getChilderen().get(3).getElementObject().getClass().getName()); + try { + context = reader.readResourceSession("junit/test-meta-reference.xml"); + Assertions.assertEquals(Date.class.getName(),context.getRootElement().getChilderen().get(0).getElementObject().getClass().getName()); + Assertions.assertEquals(Date.class.getName(),context.getRootElement().getChilderen().get(1).getElementObject().getClass().getName()); + Assertions.assertEquals(Date.class.getName(),context.getRootElement().getChilderen().get(2).getElementObject().getClass().getName()); + Assertions.assertEquals(Date.class.getName(),context.getRootElement().getChilderen().get(3).getElementObject().getClass().getName()); + } finally { + reader.releaseSession(context); } } } diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/FourCornerDotCake.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/FourCornerDotCake.java index 7c09855..e0c62d2 100644 --- a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/FourCornerDotCake.java +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/FourCornerDotCake.java @@ -363,22 +363,22 @@ public enum FourCornerDotCake { FC_BA2L2048_SEL0(0x0387FE, 256, "Number lego 2048 bit select"), FC_BA2L2048_BANK(0x0388FE, 256, "Number lego 2048 bit bank"), - FC_BA2I0016_SEL0(0x0389FE, 2, "Number signed 16 bit select"), - FC_BA2I0016_BANK(0x038A00, 256, "Number signed 16 bit bank"), - FC_BA2I0032_SEL0(0x038B00, 4, "Number signed 32 bit select"), - FC_BA2I0032_BANK(0x038B04, 256, "Number signed 32 bit bank"), - FC_BA2I0064_SEL0(0x038C04, 8, "Number signed 64 bit select"), - FC_BA2I0064_BANK(0x038C0C, 256, "Number signed 64 bit bank"), - FC_BA2I0128_SEL0(0x038D0C, 16, "Number signed 128 bit select"), - FC_BA2I0128_BANK(0x038D1C, 256, "Number signed 128 bit bank"), - FC_BA2I0256_SEL0(0x038E1C, 32, "Number signed 256 bit select"), - FC_BA2I0256_BANK(0x038E3C, 256, "Number signed 256 bit bank"), - FC_BA2I0512_SEL0(0x038F3C, 64, "Number signed 512 bit select"), - FC_BA2I0512_BANK(0x038F7C, 256, "Number signed 512 bit bank"), - FC_BA2I1024_SEL0(0x03907C, 128, "Number signed 1024 bit select"), - FC_BA2I1024_BANK(0x0390FC, 256, "Number signed 1024 bit bank"), - FC_BA2I2048_SEL0(0x0391FC, 256, "Number signed 2048 bit select"), - FC_BA2I2048_BANK(0x0392FC, 256, "Number signed 2048 bit bank"), + FC_BA2I0016_SEL0(0x0389FE, 2, "Number integer 16 bit select"), + FC_BA2I0016_BANK(0x038A00, 256, "Number integer 16 bit bank"), + FC_BA2I0032_SEL0(0x038B00, 4, "Number integer 32 bit select"), + FC_BA2I0032_BANK(0x038B04, 256, "Number integer 32 bit bank"), + FC_BA2I0064_SEL0(0x038C04, 8, "Number integer 64 bit select"), + FC_BA2I0064_BANK(0x038C0C, 256, "Number integer 64 bit bank"), + FC_BA2I0128_SEL0(0x038D0C, 16, "Number integer 128 bit select"), + FC_BA2I0128_BANK(0x038D1C, 256, "Number integer 128 bit bank"), + FC_BA2I0256_SEL0(0x038E1C, 32, "Number integer 256 bit select"), + FC_BA2I0256_BANK(0x038E3C, 256, "Number integer 256 bit bank"), + FC_BA2I0512_SEL0(0x038F3C, 64, "Number integer 512 bit select"), + FC_BA2I0512_BANK(0x038F7C, 256, "Number integer 512 bit bank"), + FC_BA2I1024_SEL0(0x03907C, 128, "Number integer 1024 bit select"), + FC_BA2I1024_BANK(0x0390FC, 256, "Number integer 1024 bit bank"), + FC_BA2I2048_SEL0(0x0391FC, 256, "Number integer 2048 bit select"), + FC_BA2I2048_BANK(0x0392FC, 256, "Number integer 2048 bit bank"), /// 16x512=8192+1020 cake points to embed base8 number types FC_BA8L0018_SEL0(0x0393FC, 2, "Number lego 18 bit select"), @@ -477,7 +477,7 @@ public enum FourCornerDotCake { int wrapCakePoint = start + i; if (wrapCakePoint >= (1024 - 12) && wrapCakePoint < 0x1400) { // after move use cake - final String wrapName = sliceName + "_" + String.format("%04d", 1 + (wrapCakePoint - start)); + final String wrapName = sliceName + "_" + String.format("0x%06X", wrapCakePoint); result.add(new FourCornerDotColleGram5() { @Override diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/zion7/FourCornerZion7Candlelier.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/zion7/FourCornerZion7Candlelier.java index b11e6fe..7dd7103 100644 --- a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/zion7/FourCornerZion7Candlelier.java +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/zion7/FourCornerZion7Candlelier.java @@ -48,7 +48,7 @@ public interface FourCornerZion7Candlelier extends FourCornerZion7Bereshit { /// An choco pig floating point number. (4+1+283+2016) void strobeNumberChocoPigFloat(FCFlameNumberTaste taste, boolean bias, BigInteger exponent, BigInteger mantissa); - /// An chopped pig point number. (4+1148+1152) + /// An choped pig point number. (4+1148+1152) void strobeNumberChocoPigChoped(FCFlameNumberTaste taste, BigInteger quake, BigInteger fraction); // XDBX18: doom.wad uses (ARM) Q16.16 which is equal to the real (Texas) Q15.16 (because doom map like E2M3 = 6 bit float) diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/zion7/FourCornerZionStenoLexer.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/zion7/FourCornerZionStenoLexer.java index caa8e72..7e0ab0e 100644 --- a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/zion7/FourCornerZionStenoLexer.java +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/zion7/FourCornerZionStenoLexer.java @@ -52,7 +52,7 @@ import org.x4o.fc18.zion7.flame4.FCFlameNumberSparklerSmoke; /// /// @author Willem Cazander /// @version 1.0 Jan 09, 2025 -public class FourCornerZionStenoLexer { +public class FourCornerZionStenoLexer implements FourCornerZionStenoPetroglyphs { private final static FourCornerZionStenoLexerFire CLEAN_FIRE = new FourCornerZionStenoLexerFire.Adapter() {}; private final static FourCornerZionStenoLexerSmoke CLEAN_SMOKE = new FourCornerZionStenoLexerSmoke.Adapter() {}; @@ -64,7 +64,7 @@ public class FourCornerZionStenoLexer { private final boolean handlerEscape; private final FourCornerZion7Candlelier handler; private final FourCornerZion7TempleScrolls handlerTempleScrolls; - private final int numberBank[] = new int[FourCornerZionStenoPetroglyphs.NCR_BANK_SIZE]; + private final int numberBank[] = new int[NCR_BANK_SIZE]; private List input; private int inputIndex = 0; private int currLine = 0; @@ -249,8 +249,8 @@ public class FourCornerZionStenoLexer { } private void numberBankReset() { - for (int i = FourCornerZionStenoPetroglyphs.NCR_BANK_SIZE - FourCornerZionStenoPetroglyphs.NCR_ONE; i >= FourCornerZionStenoPetroglyphs.NCR_ZERO; i--) { - numberBank[i] = FourCornerZionStenoPetroglyphs.NCR_ZERO; + for (int i = NCR_BANK_SIZE - NCR_ONE; i >= NCR_ZERO; i--) { + numberBank[i] = NCR_ZERO; } } @@ -268,7 +268,7 @@ public class FourCornerZionStenoLexer { private BigInteger numberBankReadBigPaged(int bankBits, int bankPageBegin) { BigInteger result = BigInteger.ZERO; - for (int i = bankPageBegin; i >= FourCornerZionStenoPetroglyphs.NCR_ZERO; i--) { + for (int i = bankPageBegin; i >= NCR_ZERO; i--) { int bankValue = numberBank[i]; result = result.add(BigInteger.valueOf(bankValue).shiftLeft(i * bankBits)); } @@ -276,15 +276,15 @@ public class FourCornerZionStenoLexer { } private BigInteger numberBankReadBig8(int bankPageBegin) { - return numberBankReadBigPaged(FourCornerZionStenoPetroglyphs.NCR_BANK8_BITS, bankPageBegin); + return numberBankReadBigPaged(NCR_BANK8_BITS, bankPageBegin); } private BigInteger numberBankReadBig9(int bankPageBegin) { - return numberBankReadBigPaged(FourCornerZionStenoPetroglyphs.NCR_BANK9_BITS, bankPageBegin); + return numberBankReadBigPaged(NCR_BANK9_BITS, bankPageBegin); } private BigInteger numberBankReadBig12(int bankPageBegin) { - return numberBankReadBigPaged(FourCornerZionStenoPetroglyphs.NCR_BANK12_BITS, bankPageBegin); + return numberBankReadBigPaged(NCR_BANK12_BITS, bankPageBegin); } abstract static private class StenoScanner implements FourCornerZionStenoPetroglyphs { diff --git a/nx01-x4o-maisdoc/src/main/java/org/x4o/maisdoc/model/MaisDoc.java b/nx01-x4o-maisdoc/src/main/java/org/x4o/maisdoc/model/MaisDoc.java index 644a00c..264a23b 100644 --- a/nx01-x4o-maisdoc/src/main/java/org/x4o/maisdoc/model/MaisDoc.java +++ b/nx01-x4o-maisdoc/src/main/java/org/x4o/maisdoc/model/MaisDoc.java @@ -214,8 +214,6 @@ public class MaisDoc { public MaisDocConcept findConceptChildByNode(MaisDocNode node) { Class objClass = node.getUserData().getClass(); - return findConceptByClass(objClass); - /* Class parentClass = null; if (node.getParent()!=null) { parentClass = node.getParent().getUserData().getClass(); @@ -231,7 +229,6 @@ public class MaisDoc { } } return null; - */ } public List getRemoteClasses() { diff --git a/nx01-x4o-maisdoc/src/main/java/org/x4o/maisdoc/model/MaisDocNavLink.java b/nx01-x4o-maisdoc/src/main/java/org/x4o/maisdoc/model/MaisDocNavLink.java index 64df60f..798af0e 100644 --- a/nx01-x4o-maisdoc/src/main/java/org/x4o/maisdoc/model/MaisDocNavLink.java +++ b/nx01-x4o-maisdoc/src/main/java/org/x4o/maisdoc/model/MaisDocNavLink.java @@ -44,7 +44,6 @@ public class MaisDocNavLink { setHref(href); setTitle(title); setText(text); - setResetHref(resetHref); } /** diff --git a/nx01-x4o-maisdoc/src/main/java/org/x4o/maisdoc/model/MaisDocWriteEvent.java b/nx01-x4o-maisdoc/src/main/java/org/x4o/maisdoc/model/MaisDocWriteEvent.java index 29e26fe..4050492 100644 --- a/nx01-x4o-maisdoc/src/main/java/org/x4o/maisdoc/model/MaisDocWriteEvent.java +++ b/nx01-x4o-maisdoc/src/main/java/org/x4o/maisdoc/model/MaisDocWriteEvent.java @@ -29,7 +29,6 @@ import org.x4o.maisdoc.flake.MaisDocContentWriter; * * @author Willem Cazander * @version 1.0 May 12, 2013 - * @param The event object for the write. */ public class MaisDocWriteEvent { diff --git a/nx01-x4o-sax3/src/main/java/org/x4o/sax3/SAX3WriterEnum.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/SAX3WriterEnum.java index 458b312..68fa56a 100644 --- a/nx01-x4o-sax3/src/main/java/org/x4o/sax3/SAX3WriterEnum.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/SAX3WriterEnum.java @@ -38,8 +38,6 @@ import org.xml.sax.helpers.AttributesImpl; * * @author Willem Cazander * @version 1.0 May 3, 2013 - * @param The enum for the XML tag values. - * @param The tag writer to output to. */ public class SAX3WriterEnum,TAG_WRITER extends ContentWriter> implements SAX3WriterEnumHammer, Closeable { diff --git a/nx01-x4o-sax3/src/main/java/org/x4o/sax3/SAX3WriterEnumHammer.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/SAX3WriterEnumHammer.java index 602ae6c..aaa1864 100644 --- a/nx01-x4o-sax3/src/main/java/org/x4o/sax3/SAX3WriterEnumHammer.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/SAX3WriterEnumHammer.java @@ -31,7 +31,6 @@ import org.xml.sax.Attributes; * * @author Willem Cazander * @version 1.0 May 3, 2013 - * @param The enum for the XML tag values. */ public interface SAX3WriterEnumHammer> { diff --git a/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/AbstractContentWriterHandler.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/AbstractContentWriterHandler.java index c7c0e2a..eff177a 100644 --- a/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/AbstractContentWriterHandler.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/AbstractContentWriterHandler.java @@ -57,7 +57,6 @@ public class AbstractContentWriterHandler implements ContentHandler, Closeable { private final SAX3PropertyConfig propertyConfig; private final Writer out; - private boolean started = false; private int indent = 0; private Map prefixMapping = null; private List printedMappings = null; @@ -131,10 +130,6 @@ public class AbstractContentWriterHandler implements ContentHandler, Closeable { * @see org.xml.sax.ContentHandler#startDocument() */ public void startDocument() throws SAXException { - if (started) { - throw new SAXException("Can start document only once."); - } - started = true; indent = 0; write(SAX3XMLConstants.getDocumentDeclaration(getPropertyConfig().getPropertyString(OUTPUT_ENCODING))); prologWriteLicence(); @@ -484,7 +479,7 @@ public class AbstractContentWriterHandler implements ContentHandler, Closeable { public void endPrefixMapping(String prefix) throws SAXException { Set> s = prefixMapping.entrySet(); String uri = null; - for (Map.Entry e : s) { + for (Map.Entry e:s) { if (e.getValue() == null) { continue; // way ? } diff --git a/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/ContentWriter.java b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/ContentWriter.java index e7ab7e3..e090eae 100644 --- a/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/ContentWriter.java +++ b/nx01-x4o-sax3/src/main/java/org/x4o/sax3/io/ContentWriter.java @@ -23,7 +23,6 @@ package org.x4o.sax3.io; import java.io.Closeable; -import java.io.IOException; import org.xml.sax.Attributes; import org.xml.sax.ContentHandler; @@ -39,23 +38,6 @@ import org.xml.sax.ext.LexicalHandler; */ public interface ContentWriter extends ContentHandler, LexicalHandler, Closeable { - /** - * Wrap startDocument and endDocument in a body closable code block. - * - * @return An closable resource block reference. - * @throws SAXException When IOException is thrown. - */ - default ContentCloseable startDocumentClosure() throws SAXException { - startDocument(); - return () -> { - try { - endDocument(); - } catch (SAXException e) { - throw new IOException(e); - } - }; - } - /** * Starts and ends an element in one call. * @param uri The uri of the element. diff --git a/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/ZFunRtsServer.java b/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/ZFunRtsServer.java index 0c72ea5..6a1b67e 100644 --- a/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/ZFunRtsServer.java +++ b/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/ZFunRtsServer.java @@ -45,7 +45,6 @@ import love.distributedrebirth.nx01.warp.core.react.WarpReactPlasmaPulse; import love.distributedrebirth.nx01.warp.core.react.WarpReactTypeScriptPlasmaAdapter; import love.distributedrebirth.nx01.warp.core.space.WarpSpaceAntimatterInducer; -/// ZFun server relay to backend store plasma handler. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public class ZFunRtsServer extends WarpReactTypeScriptPlasmaAdapter { diff --git a/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/ZFunRtsServerBooted.java b/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/ZFunRtsServerBooted.java index ce44d49..a40038b 100644 --- a/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/ZFunRtsServerBooted.java +++ b/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/ZFunRtsServerBooted.java @@ -33,7 +33,6 @@ import love.distributedrebirth.nx01.warp.core.react.WarpReactPlasmaPulse; import love.distributedrebirth.nx01.warp.core.react.WarpReactTypeScript; import love.distributedrebirth.nx01.warp.core.space.WarpSpaceAntimatterInducer; -/// ZFun server booted log message. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public class ZFunRtsServerBooted implements WarpReactTypeScript { diff --git a/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/ZeroFungus.java b/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/ZeroFungus.java index 2eac07f..82f0088 100644 --- a/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/ZeroFungus.java +++ b/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/ZeroFungus.java @@ -51,7 +51,6 @@ import love.distributedrebirth.nx01.warp.core.react.WarpReactPlasma; import love.distributedrebirth.nx01.zerofungus.server.service.ZFunRtsConfigJetty; import love.distributedrebirth.nx01.zerofungus.server.service.ZFunRtsInitJdbc; -/// Zero fungus main start entry to bootstrap a demo server. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public enum ZeroFungus /* implements BãßBȍőnAbacusInstanceMBeanʸᴰ */ { diff --git a/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/service/ZFunRtsConfigJetty.java b/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/service/ZFunRtsConfigJetty.java index c0a2da2..21f3f9d 100644 --- a/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/service/ZFunRtsConfigJetty.java +++ b/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/service/ZFunRtsConfigJetty.java @@ -62,7 +62,6 @@ import love.distributedrebirth.nx01.zerofungus.server.web.RedirectServlet; import love.distributedrebirth.nx01.zerofungus.server.web.WarpCorePlasmaInspectorServlet; import love.distributedrebirth.nx01.zerofungus.server.web.ZilLaLaFaultFilter; -/// ZFun jetty config handler. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public final class ZFunRtsConfigJetty implements WarpReactTypeScript { diff --git a/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/service/ZFunRtsInitJdbc.java b/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/service/ZFunRtsInitJdbc.java index fcb645e..71058ba 100644 --- a/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/service/ZFunRtsInitJdbc.java +++ b/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/service/ZFunRtsInitJdbc.java @@ -44,7 +44,6 @@ import love.distributedrebirth.nx01.warp.core.react.WarpReactPlasmaPulse; import love.distributedrebirth.nx01.warp.core.react.WarpReactTypeScript; import love.distributedrebirth.nx01.warp.core.space.WarpSpaceAntimatterInducer; -/// ZFun jdbc backend connection handler. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public class ZFunRtsInitJdbc implements WarpReactTypeScript { diff --git a/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/web/RedirectServlet.java b/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/web/RedirectServlet.java index 4e355e0..f5613e1 100644 --- a/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/web/RedirectServlet.java +++ b/nx01-zerofungus-server/src/main/java/love/distributedrebirth/nx01/zerofungus/server/web/RedirectServlet.java @@ -33,7 +33,6 @@ import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; -/// ZFun redirect server to no where. /// @author للَّٰهِilLצسُو /// @version ©Δ∞ 仙上主天 public class RedirectServlet extends HttpServlet {