Bassboonyd update
This commit is contained in:
parent
7886fc567f
commit
02cb20f16f
|
@ -7,7 +7,7 @@ import org.osgi.service.component.annotations.Component;
|
||||||
import org.osgi.service.component.annotations.Deactivate;
|
import org.osgi.service.component.annotations.Deactivate;
|
||||||
import org.osgi.service.component.annotations.Reference;
|
import org.osgi.service.component.annotations.Reference;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxLog;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxLog;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4DeskAppService;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4DeskAppService;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4LocaleService;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4LocaleService;
|
||||||
|
@ -15,7 +15,7 @@ import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppLauncher;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppMenuSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppMenuSection;
|
||||||
|
|
||||||
@Component
|
@Component
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class CalculatorComponent {
|
public class CalculatorComponent {
|
||||||
|
|
||||||
@Reference
|
@Reference
|
||||||
|
|
|
@ -6,13 +6,13 @@ import java.util.ResourceBundle;
|
||||||
|
|
||||||
import imgui.ImGui;
|
import imgui.ImGui;
|
||||||
import imgui.type.ImInt;
|
import imgui.type.ImInt;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
||||||
import love.distributedrebirth.numberxd.unicode.BaseGlyphSet;
|
import love.distributedrebirth.numberxd.unicode.BaseGlyphSet;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class CalculatorDeskApp extends AbstractDeskApp implements DeskAppRenderer {
|
public class CalculatorDeskApp extends AbstractDeskApp implements DeskAppRenderer {
|
||||||
|
|
||||||
private ResourceBundle bundle;
|
private ResourceBundle bundle;
|
||||||
|
|
|
@ -9,7 +9,7 @@ import org.osgi.service.component.annotations.Reference;
|
||||||
|
|
||||||
import love.distributedrebirth.gdxapp4d.app.glyphdemo.apps.DemoUnicodePlaneDeskApp;
|
import love.distributedrebirth.gdxapp4d.app.glyphdemo.apps.DemoUnicodePlaneDeskApp;
|
||||||
import love.distributedrebirth.gdxapp4d.app.glyphdemo.apps.DemoUnitConverterDeskApp;
|
import love.distributedrebirth.gdxapp4d.app.glyphdemo.apps.DemoUnitConverterDeskApp;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.gdxapp4d.app.glyphdemo.apps.DemoGlyphSetDeskApp;
|
import love.distributedrebirth.gdxapp4d.app.glyphdemo.apps.DemoGlyphSetDeskApp;
|
||||||
import love.distributedrebirth.gdxapp4d.app.glyphdemo.apps.DemoNumberPartDeskApp;
|
import love.distributedrebirth.gdxapp4d.app.glyphdemo.apps.DemoNumberPartDeskApp;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxLog;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxLog;
|
||||||
|
@ -21,7 +21,7 @@ import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppMenuSectio
|
||||||
import net.forwardfire.unitxc.UnitXCManager;
|
import net.forwardfire.unitxc.UnitXCManager;
|
||||||
|
|
||||||
@Component
|
@Component
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class GlyphDemoComponent {
|
public class GlyphDemoComponent {
|
||||||
|
|
||||||
@Reference
|
@Reference
|
||||||
|
|
|
@ -5,13 +5,13 @@ import java.util.ResourceBundle;
|
||||||
import imgui.ImGui;
|
import imgui.ImGui;
|
||||||
import imgui.flag.ImGuiTableFlags;
|
import imgui.flag.ImGuiTableFlags;
|
||||||
import imgui.type.ImBoolean;
|
import imgui.type.ImBoolean;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
||||||
import love.distributedrebirth.numberxd.unicode.BaseGlyphSet;
|
import love.distributedrebirth.numberxd.unicode.BaseGlyphSet;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class DemoGlyphSetDeskApp extends AbstractDeskApp {
|
public class DemoGlyphSetDeskApp extends AbstractDeskApp {
|
||||||
|
|
||||||
private final ResourceBundle bundle;
|
private final ResourceBundle bundle;
|
||||||
|
|
|
@ -8,7 +8,7 @@ import imgui.ImGui;
|
||||||
import imgui.flag.ImGuiTableFlags;
|
import imgui.flag.ImGuiTableFlags;
|
||||||
import imgui.type.ImBoolean;
|
import imgui.type.ImBoolean;
|
||||||
import imgui.type.ImInt;
|
import imgui.type.ImInt;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
||||||
|
@ -20,7 +20,7 @@ import love.distributedrebirth.numberxd.base2t.part.BãßBȍőnPartAlt4ʸᴰ;
|
||||||
import love.distributedrebirth.numberxd.base2t.part.BãßBȍőnPartʸᴰ;
|
import love.distributedrebirth.numberxd.base2t.part.BãßBȍőnPartʸᴰ;
|
||||||
import love.distributedrebirth.numberxd.unicode.BaseGlyphSet;
|
import love.distributedrebirth.numberxd.unicode.BaseGlyphSet;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class DemoNumberPartDeskApp extends AbstractDeskApp implements DeskAppRenderer {
|
public class DemoNumberPartDeskApp extends AbstractDeskApp implements DeskAppRenderer {
|
||||||
|
|
||||||
private final ResourceBundle bundle;
|
private final ResourceBundle bundle;
|
||||||
|
|
|
@ -7,7 +7,7 @@ import imgui.flag.ImGuiStyleVar;
|
||||||
import imgui.flag.ImGuiTableFlags;
|
import imgui.flag.ImGuiTableFlags;
|
||||||
import imgui.flag.ImGuiWindowFlags;
|
import imgui.flag.ImGuiWindowFlags;
|
||||||
import imgui.type.ImBoolean;
|
import imgui.type.ImBoolean;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4Unicode4DService;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4Unicode4DService;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
||||||
|
@ -16,7 +16,7 @@ import love.distributedrebirth.numberxd.unicode.UnicodePlane;
|
||||||
import love.distributedrebirth.unicode4d.draw.DrawCharacter;
|
import love.distributedrebirth.unicode4d.draw.DrawCharacter;
|
||||||
import love.distributedrebirth.unicode4d.draw.ImCharacter;
|
import love.distributedrebirth.unicode4d.draw.ImCharacter;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class DemoUnicodePlaneDeskApp extends AbstractDeskApp implements DeskAppRenderer {
|
public class DemoUnicodePlaneDeskApp extends AbstractDeskApp implements DeskAppRenderer {
|
||||||
|
|
||||||
private final VrGem4Unicode4DService unicode4DService;
|
private final VrGem4Unicode4DService unicode4DService;
|
||||||
|
|
|
@ -13,7 +13,7 @@ import imgui.ImGui;
|
||||||
import imgui.flag.ImGuiTableFlags;
|
import imgui.flag.ImGuiTableFlags;
|
||||||
import imgui.type.ImDouble;
|
import imgui.type.ImDouble;
|
||||||
import imgui.type.ImInt;
|
import imgui.type.ImInt;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
||||||
|
@ -22,7 +22,7 @@ import net.forwardfire.unitxc.UnitXCManager;
|
||||||
import net.forwardfire.unitxc.model.UnitXCGroup;
|
import net.forwardfire.unitxc.model.UnitXCGroup;
|
||||||
import net.forwardfire.unitxc.model.UnitXCType;
|
import net.forwardfire.unitxc.model.UnitXCType;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class DemoUnitConverterDeskApp extends AbstractDeskApp implements DeskAppRenderer {
|
public class DemoUnitConverterDeskApp extends AbstractDeskApp implements DeskAppRenderer {
|
||||||
|
|
||||||
private final UnitXCManager unitManager;
|
private final UnitXCManager unitManager;
|
||||||
|
|
|
@ -5,14 +5,14 @@ import org.osgi.service.component.annotations.Component;
|
||||||
import org.osgi.service.component.annotations.Deactivate;
|
import org.osgi.service.component.annotations.Deactivate;
|
||||||
import org.osgi.service.component.annotations.Reference;
|
import org.osgi.service.component.annotations.Reference;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxLog;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxLog;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4DeskAppService;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4DeskAppService;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppLauncher;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppLauncher;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppMenuSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppMenuSection;
|
||||||
|
|
||||||
@Component
|
@Component
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class HeWalletComponent {
|
public class HeWalletComponent {
|
||||||
|
|
||||||
@Reference
|
@Reference
|
||||||
|
|
|
@ -6,7 +6,7 @@ import java.util.List;
|
||||||
import imgui.ImGui;
|
import imgui.ImGui;
|
||||||
import imgui.flag.ImGuiTableFlags;
|
import imgui.flag.ImGuiTableFlags;
|
||||||
import imgui.type.ImInt;
|
import imgui.type.ImInt;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
||||||
|
@ -14,7 +14,7 @@ import love.distributedrebirth.numberxd.Gê̄ldGetậl;
|
||||||
import love.distributedrebirth.numberxd.unicode.BaseGlyphSet;
|
import love.distributedrebirth.numberxd.unicode.BaseGlyphSet;
|
||||||
import love.distributedrebirth.numberxd.unicode.SourceGlyphCharSet;
|
import love.distributedrebirth.numberxd.unicode.SourceGlyphCharSet;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class HeWalletDeskApp extends AbstractDeskApp implements DeskAppRenderer {
|
public class HeWalletDeskApp extends AbstractDeskApp implements DeskAppRenderer {
|
||||||
|
|
||||||
private final List<String> walletData = new ArrayList<String>();
|
private final List<String> walletData = new ArrayList<String>();
|
||||||
|
|
|
@ -5,14 +5,14 @@ import org.osgi.service.component.annotations.Component;
|
||||||
import org.osgi.service.component.annotations.Deactivate;
|
import org.osgi.service.component.annotations.Deactivate;
|
||||||
import org.osgi.service.component.annotations.Reference;
|
import org.osgi.service.component.annotations.Reference;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxLog;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxLog;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4DeskAppService;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4DeskAppService;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppLauncher;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppLauncher;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppMenuSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppMenuSection;
|
||||||
|
|
||||||
@Component
|
@Component
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class MMDocComponent {
|
public class MMDocComponent {
|
||||||
|
|
||||||
@Reference
|
@Reference
|
||||||
|
|
|
@ -2,12 +2,12 @@ package love.distributedrebirth.gdxapp4d.app.mmdoc;
|
||||||
|
|
||||||
import imgui.ImGui;
|
import imgui.ImGui;
|
||||||
import imgui.flag.ImGuiTableFlags;
|
import imgui.flag.ImGuiTableFlags;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class MMDocDeskApp extends AbstractDeskApp implements DeskAppRenderer {
|
public class MMDocDeskApp extends AbstractDeskApp implements DeskAppRenderer {
|
||||||
|
|
||||||
public void create() {
|
public void create() {
|
||||||
|
|
|
@ -5,7 +5,7 @@ import org.osgi.service.component.annotations.Component;
|
||||||
import org.osgi.service.component.annotations.Deactivate;
|
import org.osgi.service.component.annotations.Deactivate;
|
||||||
import org.osgi.service.component.annotations.Reference;
|
import org.osgi.service.component.annotations.Reference;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxLog;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxLog;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4DeskAppService;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4DeskAppService;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4Unicode4DService;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4Unicode4DService;
|
||||||
|
@ -13,7 +13,7 @@ import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppLauncher;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppMenuSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppMenuSection;
|
||||||
|
|
||||||
@Component
|
@Component
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class NotepadComponent {
|
public class NotepadComponent {
|
||||||
|
|
||||||
@Reference
|
@Reference
|
||||||
|
|
|
@ -6,7 +6,7 @@ import imgui.ImDrawList;
|
||||||
import imgui.ImGui;
|
import imgui.ImGui;
|
||||||
import imgui.ImVec2;
|
import imgui.ImVec2;
|
||||||
import imgui.type.ImInt;
|
import imgui.type.ImInt;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4Unicode4DService;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4Unicode4DService;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
||||||
|
@ -15,7 +15,7 @@ import love.distributedrebirth.numberxd.unicode.UnicodePlane;
|
||||||
import love.distributedrebirth.unicode4d.draw.DrawCharacter;
|
import love.distributedrebirth.unicode4d.draw.DrawCharacter;
|
||||||
import love.distributedrebirth.unicode4d.draw.ImCharacter;
|
import love.distributedrebirth.unicode4d.draw.ImCharacter;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class NotepadDeskApp extends AbstractDeskApp implements DeskAppRenderer {
|
public class NotepadDeskApp extends AbstractDeskApp implements DeskAppRenderer {
|
||||||
|
|
||||||
private final VrGem4Unicode4DService unicode4DService;
|
private final VrGem4Unicode4DService unicode4DService;
|
||||||
|
|
|
@ -8,7 +8,7 @@ import org.osgi.service.component.annotations.Component;
|
||||||
import org.osgi.service.component.annotations.Deactivate;
|
import org.osgi.service.component.annotations.Deactivate;
|
||||||
import org.osgi.service.component.annotations.Reference;
|
import org.osgi.service.component.annotations.Reference;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxLog;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxLog;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemWarpShip;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemWarpShip;
|
||||||
|
@ -18,7 +18,7 @@ import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppLauncher;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppMenuSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppMenuSection;
|
||||||
|
|
||||||
@Component
|
@Component
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class TosAmpComponent {
|
public class TosAmpComponent {
|
||||||
|
|
||||||
@Reference
|
@Reference
|
||||||
|
|
|
@ -12,7 +12,7 @@ import imgui.ImGui;
|
||||||
import imgui.flag.ImGuiSelectableFlags;
|
import imgui.flag.ImGuiSelectableFlags;
|
||||||
import imgui.flag.ImGuiTableColumnFlags;
|
import imgui.flag.ImGuiTableColumnFlags;
|
||||||
import imgui.flag.ImGuiTableFlags;
|
import imgui.flag.ImGuiTableFlags;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.gdxapp4d.app.tosamp.music.MusicManager;
|
import love.distributedrebirth.gdxapp4d.app.tosamp.music.MusicManager;
|
||||||
import love.distributedrebirth.gdxapp4d.app.tosamp.music.MusicSong;
|
import love.distributedrebirth.gdxapp4d.app.tosamp.music.MusicSong;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemWarpShip;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemWarpShip;
|
||||||
|
@ -23,7 +23,7 @@ import net.spookygames.gdx.nativefilechooser.NativeFileChooser;
|
||||||
import net.spookygames.gdx.nativefilechooser.NativeFileChooserCallback;
|
import net.spookygames.gdx.nativefilechooser.NativeFileChooserCallback;
|
||||||
import net.spookygames.gdx.nativefilechooser.NativeFileChooserConfiguration;
|
import net.spookygames.gdx.nativefilechooser.NativeFileChooserConfiguration;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class TosAmpDeskApp extends AbstractDeskApp implements DeskAppRenderer {
|
public class TosAmpDeskApp extends AbstractDeskApp implements DeskAppRenderer {
|
||||||
|
|
||||||
private final ResourceBundle bundle;
|
private final ResourceBundle bundle;
|
||||||
|
|
|
@ -9,9 +9,9 @@ import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class M3UParser {
|
public class M3UParser {
|
||||||
|
|
||||||
private static final String M3U_HEADER = "#EXTM3U";
|
private static final String M3U_HEADER = "#EXTM3U";
|
||||||
|
|
|
@ -13,7 +13,7 @@ import com.badlogic.gdx.audio.Music;
|
||||||
import com.badlogic.gdx.audio.Music.OnCompletionListener;
|
import com.badlogic.gdx.audio.Music.OnCompletionListener;
|
||||||
import com.badlogic.gdx.files.FileHandle;
|
import com.badlogic.gdx.files.FileHandle;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.gdxapp4d.app.tosamp.music.M3UParser.M3UPlaylist;
|
import love.distributedrebirth.gdxapp4d.app.tosamp.music.M3UParser.M3UPlaylist;
|
||||||
import love.distributedrebirth.gdxapp4d.app.tosamp.music.M3UParser.M3UTrack;
|
import love.distributedrebirth.gdxapp4d.app.tosamp.music.M3UParser.M3UTrack;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemWarpShip;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemWarpShip;
|
||||||
|
@ -21,7 +21,7 @@ import love.distributedrebirth.gdxapp4d.tos4.service.SystemWarpShip;
|
||||||
/**
|
/**
|
||||||
* Manages the background and others songs.
|
* Manages the background and others songs.
|
||||||
*/
|
*/
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class MusicManager {
|
public class MusicManager {
|
||||||
|
|
||||||
private final List<MusicSong> musicSongs;
|
private final List<MusicSong> musicSongs;
|
||||||
|
|
|
@ -2,12 +2,12 @@ package love.distributedrebirth.gdxapp4d.app.tosamp.music;
|
||||||
|
|
||||||
import com.badlogic.gdx.files.FileHandle;
|
import com.badlogic.gdx.files.FileHandle;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The music with the (file) name.
|
* The music with the (file) name.
|
||||||
*/
|
*/
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class MusicSong {
|
public class MusicSong {
|
||||||
private final FileHandle fileHandle;
|
private final FileHandle fileHandle;
|
||||||
private final String name;
|
private final String name;
|
||||||
|
|
|
@ -3,12 +3,12 @@ package love.distributedrebirth.gdxapp4d.boot.desktop;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Desktop game app base config.
|
* Desktop game app base config.
|
||||||
*/
|
*/
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public final class GDXAppDesktopConfig {
|
public final class GDXAppDesktopConfig {
|
||||||
|
|
||||||
private static final Logger LOG = LoggerFactory.getLogger(GDXAppDesktopConfig.class);
|
private static final Logger LOG = LoggerFactory.getLogger(GDXAppDesktopConfig.class);
|
||||||
|
|
|
@ -6,14 +6,14 @@ import com.badlogic.gdx.Files.FileType;
|
||||||
import com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application;
|
import com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application;
|
||||||
import com.badlogic.gdx.backends.lwjgl3.Lwjgl3ApplicationConfiguration;
|
import com.badlogic.gdx.backends.lwjgl3.Lwjgl3ApplicationConfiguration;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.GDXAppTos4;
|
import love.distributedrebirth.gdxapp4d.tos4.GDXAppTos4;
|
||||||
import net.spookygames.gdx.nativefilechooser.desktop.DesktopFileChooser;
|
import net.spookygames.gdx.nativefilechooser.desktop.DesktopFileChooser;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Desktop game app launcher.
|
* Desktop game app launcher.
|
||||||
*/
|
*/
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class GDXAppDesktopLauncher {
|
public class GDXAppDesktopLauncher {
|
||||||
|
|
||||||
public static void main(String[] arg) {
|
public static void main(String[] arg) {
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
package love.distributedrebirth.basic4d;
|
package love.distributedrebirth.basic4d;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class BasicRuntime {
|
public class BasicRuntime {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
package love.distributedrebirth.basic4d.lang;
|
package love.distributedrebirth.basic4d.lang;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class BasicAnnotationʷᴰ {
|
public class BasicAnnotationʷᴰ {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
package love.distributedrebirth.basic4d.lang;
|
package love.distributedrebirth.basic4d.lang;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class BasicClassʷᴰ {
|
public class BasicClassʷᴰ {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
package love.distributedrebirth.basic4d.lang;
|
package love.distributedrebirth.basic4d.lang;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class BasicInterfaceʷᴰ {
|
public class BasicInterfaceʷᴰ {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
package love.distributedrebirth.basic4d.lang;
|
package love.distributedrebirth.basic4d.lang;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class BasicLanguageModuleʷᴰ {
|
public class BasicLanguageModuleʷᴰ {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
package love.distributedrebirth.basic4d.lang;
|
package love.distributedrebirth.basic4d.lang;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class BasicLanguageʷᴰ {
|
public class BasicLanguageʷᴰ {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
package love.distributedrebirth.basic4d.lang;
|
package love.distributedrebirth.basic4d.lang;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class BasicMethodArgumentʷᴰ {
|
public class BasicMethodArgumentʷᴰ {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
package love.distributedrebirth.basic4d.lang;
|
package love.distributedrebirth.basic4d.lang;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class BasicMethodʷᴰ {
|
public class BasicMethodʷᴰ {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
package love.distributedrebirth.basic4d.lang;
|
package love.distributedrebirth.basic4d.lang;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class BasicStepCodeʷᴰ {
|
public class BasicStepCodeʷᴰ {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,13 +5,36 @@ import java.util.Map;
|
||||||
import java.util.concurrent.locks.Lock;
|
import java.util.concurrent.locks.Lock;
|
||||||
import java.util.concurrent.locks.ReadWriteLock;
|
import java.util.concurrent.locks.ReadWriteLock;
|
||||||
import java.util.concurrent.locks.ReentrantReadWriteLock;
|
import java.util.concurrent.locks.ReentrantReadWriteLock;
|
||||||
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
public interface BãßBȍőn<T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends BãßBȍőnCoffinStoreʸᴰ<T, K> {
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface BãßBȍőn<T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> {
|
||||||
|
|
||||||
static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||||
private static final Map<Object, BãßBȍőnCoffinOpenʸᴰ<?>> GRAVE_YARD = new HashMap<>();
|
private static final Map<Object, BãßBȍőnCoffinʸᴰ<?>> GRAVE_YARD = new HashMap<>();
|
||||||
private static final ReadWriteLock FUNERAL = new ReentrantReadWriteLock();
|
private static final ReadWriteLock FUNERAL = new ReentrantReadWriteLock();
|
||||||
|
|
||||||
|
@SafeVarargs
|
||||||
|
public static <T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> void INIT(BãßBȍőn<T,K> boon, Consumer<BãßBȍőnCoffinOpenʸᴰ<K>>...coffinFillers) {
|
||||||
|
BãßBȍőnLoad殭屍.CAST_BONE_MAGIC(boon, coffinFillers);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> void LOCK_COFFIN(BãßBȍőn<T,K> boon) {
|
||||||
|
BãßBȍőnCoffinʸᴰ<K> coffin = (BãßBȍőnCoffinʸᴰ<K>)boon.GET_BBC();
|
||||||
|
if (!(coffin instanceof BãßBȍőnCoffinOpenʸᴰ)) {
|
||||||
|
return; // already closed
|
||||||
|
}
|
||||||
|
Lock graveDigger = Ꝑŕḯṿª₮ḕ.FUNERAL.writeLock();
|
||||||
|
graveDigger.lock();
|
||||||
|
try {
|
||||||
|
GRAVE_YARD.remove(boon.BȍőnCoffinHeadStoneʸᴰ());
|
||||||
|
GRAVE_YARD.put(boon.BȍőnCoffinHeadStoneʸᴰ(), ((BãßBȍőnCoffinOpenʸᴰ<K>)coffin).LOCK_COFFIN());
|
||||||
|
} finally {
|
||||||
|
graveDigger.unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
|
@ -20,13 +43,12 @@ public interface BãßBȍőn<T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> extend
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
@Override
|
|
||||||
default BãßBȍőnCoffinʸᴰ<K> GET_BBC() {
|
default BãßBȍőnCoffinʸᴰ<K> GET_BBC() {
|
||||||
BãßBȍőnCoffinOpenʸᴰ<K> zombieCoffin = null;
|
BãßBȍőnCoffinʸᴰ<K> zombieCoffin = null;
|
||||||
Lock bibleReader = Ꝑŕḯṿª₮ḕ.FUNERAL.readLock(); // Can't force enum only, thus no jvm safety
|
Lock bibleReader = Ꝑŕḯṿª₮ḕ.FUNERAL.readLock(); // Can't force enum only, thus no jvm safety
|
||||||
bibleReader.lock();
|
bibleReader.lock();
|
||||||
try {
|
try {
|
||||||
zombieCoffin = (BãßBȍőnCoffinOpenʸᴰ<K>) Ꝑŕḯṿª₮ḕ.GRAVE_YARD.get(BȍőnCoffinHeadStoneʸᴰ());
|
zombieCoffin = (BãßBȍőnCoffinʸᴰ<K>) Ꝑŕḯṿª₮ḕ.GRAVE_YARD.get(BȍőnCoffinHeadStoneʸᴰ());
|
||||||
} finally {
|
} finally {
|
||||||
bibleReader.unlock();
|
bibleReader.unlock();
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,9 @@ package love.distributedrebirth.bassboonyd;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface BãßBȍőnCoffinGhostʸᴰ {
|
public interface BãßBȍőnCoffinGhostʸᴰ {
|
||||||
|
|
||||||
Object PUT_GHOST(String key, Object value);
|
Object PUT_GHOST(String key, Object value);
|
||||||
|
|
|
@ -3,12 +3,13 @@ package love.distributedrebirth.bassboonyd;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.function.Consumer;
|
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface BãßBȍőnCoffinOpenʸᴰ<T extends BãßBȍőnCoffinStoreKeyʸᴰ> extends BãßBȍőnCoffinʸᴰ<T> {
|
public interface BãßBȍőnCoffinOpenʸᴰ<T extends BãßBȍőnCoffinStoreKeyʸᴰ> extends BãßBȍőnCoffinʸᴰ<T> {
|
||||||
|
|
||||||
void LOCK_COFFIN();
|
BãßBȍőnCoffinʸᴰ<T> LOCK_COFFIN();
|
||||||
|
|
||||||
Object PUT_OBJ(T key, Object value);
|
Object PUT_OBJ(T key, Object value);
|
||||||
|
|
||||||
|
@ -20,28 +21,27 @@ public interface BãßBȍőnCoffinOpenʸᴰ<T extends BãßBȍőnCoffinStoreKey
|
||||||
PUT_OBJ(key, new ArrayList<>());
|
PUT_OBJ(key, new ArrayList<>());
|
||||||
}
|
}
|
||||||
|
|
||||||
static void lockCoffin(DefaultEnumBaseʸᴰ<?,?> store, Consumer<String> logHandler) {
|
static <X, K extends BãßBȍőnCoffinStoreKeyʸᴰ> BãßBȍőnCoffinOpenʸᴰ<K> FROM(BãßBȍőn<X,K> boon) {
|
||||||
logHandler.accept("Lock: "+store.BãßClassNaam()+" since: "+store.BãßAuthorCopyright());
|
return FROM(boon.GET_BBC());
|
||||||
for (Object o:store.BãßInstances()) {
|
|
||||||
BãßBȍőnCoffinStoreʸᴰ<?, ?> coffin = BãßBȍőnCoffinStoreʸᴰ.class.cast(o);
|
|
||||||
BãßBȍőnCoffinOpenʸᴰ<?> coffinOpen = BãßBȍőnCoffinOpenʸᴰ.class.cast(coffin.GET_BBC());
|
|
||||||
coffinOpen.LOCK_COFFIN();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static <K extends BãßBȍőnCoffinStoreKeyʸᴰ> BãßBȍőnCoffinOpenʸᴰ<K> FROM(BãßBȍőnCoffinʸᴰ<K> bbc) {
|
||||||
|
return (BãßBȍőnCoffinOpenʸᴰ<K>) bbc;
|
||||||
}
|
}
|
||||||
|
|
||||||
static class BãßBȍőnFamilyGrave implements BãßBȍőnCoffinGhostʸᴰ {
|
static class BãßBȍőnFamilyGrave implements BãßBȍőnCoffinGhostʸᴰ {
|
||||||
final Map<String,Object> ghosts = new HashMap<>();
|
private final Map<String,Object> ghosts = new HashMap<>();
|
||||||
volatile boolean deathLock = false;
|
//private volatile boolean deathLock = false;
|
||||||
|
|
||||||
public void LOCK_GHOST() {
|
//public void LOCK_GHOST() {
|
||||||
deathLock = true;
|
// deathLock = true;
|
||||||
}
|
//}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Object PUT_GHOST(String key, Object value) {
|
public Object PUT_GHOST(String key, Object value) {
|
||||||
if (deathLock) {
|
//if (deathLock) {
|
||||||
throw new IllegalStateException("Can't restore body of family ghost.");
|
// throw new IllegalStateException("Can't restore body of family ghost.");
|
||||||
}
|
//}
|
||||||
return ghosts.put(key, value);
|
return ghosts.put(key, value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -53,16 +53,17 @@ public interface BãßBȍőnCoffinOpenʸᴰ<T extends BãßBȍőnCoffinStoreKey
|
||||||
|
|
||||||
static <Y extends BãßBȍőnCoffinStoreKeyʸᴰ> BãßBȍőnCoffinOpenʸᴰ<Y> newInstance() {
|
static <Y extends BãßBȍőnCoffinStoreKeyʸᴰ> BãßBȍőnCoffinOpenʸᴰ<Y> newInstance() {
|
||||||
return new BãßBȍőnCoffinOpenʸᴰ<Y>() {
|
return new BãßBȍőnCoffinOpenʸᴰ<Y>() {
|
||||||
final Map<Y,Object> initMap = new HashMap<>();
|
private final Map<Y,Object> initMap = new HashMap<>();
|
||||||
final Map<Class<?>,BãßBȍőnFamilyGrave> familyGrave = new HashMap<>();
|
private final Map<Class<?>,BãßBȍőnFamilyGrave> familyGrave = new HashMap<>();
|
||||||
volatile boolean deathLock = false;
|
private volatile boolean deathLock = false;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void LOCK_COFFIN() {
|
public BãßBȍőnCoffinʸᴰ<Y> LOCK_COFFIN() {
|
||||||
deathLock = true;
|
deathLock = true;
|
||||||
for (BãßBȍőnFamilyGrave grave:familyGrave.values()) {
|
//for (BãßBȍőnFamilyGrave grave:familyGrave.values()) {
|
||||||
grave.LOCK_GHOST();
|
// grave.LOCK_GHOST();
|
||||||
}
|
//}
|
||||||
|
return createProxy();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -82,11 +83,43 @@ public interface BãßBȍőnCoffinOpenʸᴰ<T extends BãßBȍőnCoffinStoreKey
|
||||||
public BãßBȍőnCoffinGhostʸᴰ UNHOLY(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ> familyName) {
|
public BãßBȍőnCoffinGhostʸᴰ UNHOLY(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ> familyName) {
|
||||||
BãßBȍőnFamilyGrave familyGhosts = familyGrave.get(familyName);
|
BãßBȍőnFamilyGrave familyGhosts = familyGrave.get(familyName);
|
||||||
if (familyGhosts == null) {
|
if (familyGhosts == null) {
|
||||||
|
//if (deathLock) {
|
||||||
|
// throw new IllegalStateException("Can't add more death in closed coffin, its unholy.");
|
||||||
|
//}
|
||||||
familyGhosts = new BãßBȍőnFamilyGrave();
|
familyGhosts = new BãßBȍőnFamilyGrave();
|
||||||
familyGrave.put(familyName, familyGhosts);
|
familyGrave.put(familyName, familyGhosts);
|
||||||
}
|
}
|
||||||
return familyGhosts;
|
return familyGhosts;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private BãßBȍőnCoffinʸᴰ<Y> createProxy() {
|
||||||
|
final BãßBȍőnCoffinʸᴰ<Y> local = this;
|
||||||
|
/*
|
||||||
|
ClassLoader cl = Thread.currentThread().getContextClassLoader();
|
||||||
|
if (cl == null) {
|
||||||
|
cl = BãßBȍőnCoffinOpenʸᴰ.class.getClassLoader();
|
||||||
|
}
|
||||||
|
return (BãßBȍőnCoffinʸᴰ<Y>) Proxy.newProxyInstance(cl, new Class[]{BãßBȍőnCoffinʸᴰ.class}, new InvocationHandler() {
|
||||||
|
public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
|
||||||
|
Method localMethod = local.getClass().getMethod(method.getName(), method.getParameterTypes());
|
||||||
|
Object result = localMethod.invoke(local, args);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
*/
|
||||||
|
return new BãßBȍőnCoffinʸᴰ<Y>() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public BãßBȍőnCoffinGhostʸᴰ UNHOLY(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ> familyName) {
|
||||||
|
return local.UNHOLY(familyName);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Object GET_OBJ(Y key) {
|
||||||
|
return local.GET_OBJ(key);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
package love.distributedrebirth.bassboonyd;
|
package love.distributedrebirth.bassboonyd;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface BãßBȍőnCoffinStoreKeyʸᴰ {
|
public interface BãßBȍőnCoffinStoreKeyʸᴰ {
|
||||||
|
|
||||||
String name();
|
String name();
|
||||||
|
|
|
@ -1,9 +0,0 @@
|
||||||
package love.distributedrebirth.bassboonyd;
|
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
|
||||||
public interface BãßBȍőnCoffinStoreʸᴰ<T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> {
|
|
||||||
|
|
||||||
BãßBȍőnCoffinʸᴰ<K> GET_BBC();
|
|
||||||
|
|
||||||
T BȍőnCoffinHeadStoneʸᴰ();
|
|
||||||
}
|
|
|
@ -3,7 +3,9 @@ package love.distributedrebirth.bassboonyd;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface BãßBȍőnCoffinʸᴰ<T extends BãßBȍőnCoffinStoreKeyʸᴰ> {
|
public interface BãßBȍőnCoffinʸᴰ<T extends BãßBȍőnCoffinStoreKeyʸᴰ> {
|
||||||
|
|
||||||
BãßBȍőnCoffinGhostʸᴰ UNHOLY(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ> familyName);
|
BãßBȍőnCoffinGhostʸᴰ UNHOLY(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ> familyName);
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
package love.distributedrebirth.bassboonyd;
|
package love.distributedrebirth.bassboonyd;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class BãßBȍőnConstantsʸᴰ {
|
public class BãßBȍőnConstantsʸᴰ {
|
||||||
|
|
||||||
public static final String STR_VALUES = "values";
|
public static final String STR_VALUES = "values";
|
||||||
|
|
|
@ -0,0 +1,134 @@
|
||||||
|
package love.distributedrebirth.bassboonyd;
|
||||||
|
|
||||||
|
import java.lang.reflect.Field;
|
||||||
|
import java.lang.reflect.InvocationTargetException;
|
||||||
|
import java.lang.reflect.Method;
|
||||||
|
import java.util.LinkedHashSet;
|
||||||
|
import java.util.Set;
|
||||||
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboonyd.BãßBȍőnSpiderʸᴰ.SpiderSilk;
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public final class BãßBȍőnLoad殭屍 {
|
||||||
|
|
||||||
|
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||||
|
private static final BãßBȍőnSpiderʸᴰ BLACK_WIDOW = new BãßBȍőnSpiderʸᴰ();
|
||||||
|
private static final Set<Class<?>> SCANNED = new LinkedHashSet<>();
|
||||||
|
}
|
||||||
|
|
||||||
|
@SafeVarargs
|
||||||
|
protected static <T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> void CAST_BONE_MAGIC(BãßBȍőn<T,K> boon, Consumer<BãßBȍőnCoffinOpenʸᴰ<K>>...coffinFillers) {
|
||||||
|
BãßBȍőnCoffinOpenʸᴰ<K> bbc = BãßBȍőnCoffinOpenʸᴰ.FROM(boon);
|
||||||
|
try {
|
||||||
|
for (Consumer<BãßBȍőnCoffinOpenʸᴰ<K>> embalmFactory:coffinFillers) {
|
||||||
|
embalmFactory.accept(bbc);
|
||||||
|
}
|
||||||
|
for (BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ phase:BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ.values()) {
|
||||||
|
initPrivate(phase, boon);
|
||||||
|
}
|
||||||
|
initSpiderEggs(boon, bbc);
|
||||||
|
initSpiderWires(boon, bbc);
|
||||||
|
} catch (Exception e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void initSpiderWires(Object boon, BãßBȍőnCoffinOpenʸᴰ<?> bbc) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
|
||||||
|
//System.out.println("SCAN-BOON-FIELD: "+boon.getClass().getSimpleName());
|
||||||
|
for (Field m:boon.getClass().getDeclaredFields()) {
|
||||||
|
if (!m.isAnnotationPresent(BãßBȍőnSpiderWire注.class)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
BãßBȍőnSpiderWire注 anno = m.getAnnotation(BãßBȍőnSpiderWire注.class);
|
||||||
|
SpiderSilk silkRoad = Ꝑŕḯṿª₮ḕ.BLACK_WIDOW.silkRoad(m.getType());
|
||||||
|
Object bean = silkRoad.senseWire(boon, anno.name(), anno.description());
|
||||||
|
//System.out.println("type: "+ m.getType() +" wth name: "+anno.name()+" of boon: "+boon.getClass());
|
||||||
|
|
||||||
|
m.setAccessible(true);
|
||||||
|
m.set(boon, bean);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private static <T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> void initSpiderEggs(BãßBȍőn<T,K> boon, BãßBȍőnCoffinOpenʸᴰ<?> bbc) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
|
||||||
|
for (Class<?> interfaceClass:walkInterfaces(boon.getClass(), new LinkedHashSet<>())) {
|
||||||
|
for (Class<?> declaredClass:((Class<?>) interfaceClass).getDeclaredClasses()) {
|
||||||
|
initSpiderEggRegistrate(boon, declaredClass);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for (Class<?> declaredClass:boon.getClass().getDeclaredClasses()) {
|
||||||
|
initSpiderEggRegistrate(boon, declaredClass);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private static <T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> void initSpiderEggRegistrate(BãßBȍőn<T,K> boon, Class<?> declaredClass) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
|
||||||
|
if (!BãßBȍőnꝐŕḯṿª₮ḕ.class.isAssignableFrom(declaredClass)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (Ꝑŕḯṿª₮ḕ.SCANNED.contains(declaredClass)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
Ꝑŕḯṿª₮ḕ.SCANNED.add(declaredClass);
|
||||||
|
for (Method m:declaredClass.getDeclaredMethods()) {
|
||||||
|
if (!m.isAnnotationPresent(BãßBȍőnSpiderEgg注.class)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
//System.out.println("annoEgg: "+boon.getClass().getSimpleName()+"."+boon+" from: "+declaredClass.getName()+" m="+m.toGenericString());
|
||||||
|
|
||||||
|
m.setAccessible(true);
|
||||||
|
Ꝑŕḯṿª₮ḕ.BLACK_WIDOW.registrateEgg(m.getReturnType(), m);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private static <T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> void initPrivate(BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ phase, BãßBȍőn<T,K> boon) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
|
||||||
|
for (Class<?> interfaceClass:walkInterfaces(boon.getClass(), new LinkedHashSet<>())) {
|
||||||
|
for (Class<?> declaredClass:((Class<?>) interfaceClass).getDeclaredClasses()) {
|
||||||
|
initPrivateInvoke(phase, boon, declaredClass);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for (Class<?> declaredClass:boon.getClass().getDeclaredClasses()) {
|
||||||
|
initPrivateInvoke(phase, boon, declaredClass);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private static <T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> void initPrivateInvoke(BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ phase, BãßBȍőn<T,K> boon, Class<?> declaredClass) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
|
||||||
|
if (!BãßBȍőnꝐŕḯṿª₮ḕ.class.isAssignableFrom(declaredClass)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
for (Method m:declaredClass.getDeclaredMethods()) {
|
||||||
|
if (!m.isAnnotationPresent(BãßBȍőnꝐŕḯṿª₮ḕInit注.class)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
BãßBȍőnꝐŕḯṿª₮ḕInit注 anno = m.getAnnotation(BãßBȍőnꝐŕḯṿª₮ḕInit注.class);
|
||||||
|
if (phase != anno.phase()) {
|
||||||
|
continue; // TODO: redo to fast code path
|
||||||
|
}
|
||||||
|
//System.out.println("annoInvoke: req="+phase+" of "+boon.getClass().getSimpleName()+"."+boon+" from: "+declaredClass.getName());
|
||||||
|
|
||||||
|
m.setAccessible(true);
|
||||||
|
Class<?>[] para = m.getParameterTypes();
|
||||||
|
if (para.length == 0) {
|
||||||
|
m.invoke(null);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (para.length == 1 && BãßBȍőn.class.isAssignableFrom(para[0])) {
|
||||||
|
m.invoke(null, boon);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
throw new IllegalStateException("Unknown method parameters on: "+declaredClass.getSimpleName()+"."+m.toGenericString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private static Set<Class<?>> walkInterfaces(Class<?> clazz, Set<Class<?>> result) {
|
||||||
|
while (clazz != null) {
|
||||||
|
for (Class<?> next : clazz.getInterfaces()) {
|
||||||
|
if (result.add(next)) {
|
||||||
|
walkInterfaces(next, result);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
clazz = clazz.getSuperclass();
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,15 @@
|
||||||
|
package love.distributedrebirth.bassboonyd;
|
||||||
|
|
||||||
|
import java.lang.annotation.ElementType;
|
||||||
|
import java.lang.annotation.Retention;
|
||||||
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
|
@Target({ElementType.METHOD})
|
||||||
|
public @interface BãßBȍőnSpiderEgg注 {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,18 @@
|
||||||
|
package love.distributedrebirth.bassboonyd;
|
||||||
|
|
||||||
|
import java.lang.annotation.ElementType;
|
||||||
|
import java.lang.annotation.Retention;
|
||||||
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
|
@Target({ElementType.FIELD})
|
||||||
|
public @interface BãßBȍőnSpiderWire注 {
|
||||||
|
|
||||||
|
String name() default "";
|
||||||
|
|
||||||
|
String description() default "";
|
||||||
|
}
|
|
@ -0,0 +1,99 @@
|
||||||
|
package love.distributedrebirth.bassboonyd;
|
||||||
|
|
||||||
|
import java.lang.reflect.InvocationTargetException;
|
||||||
|
import java.lang.reflect.Method;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public class BãßBȍőnSpiderʸᴰ {
|
||||||
|
|
||||||
|
private final Map<Class<?>, SpiderSilk> spiderWeb = new HashMap<>();
|
||||||
|
|
||||||
|
protected BãßBȍőnSpiderʸᴰ() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean hasEggType(Class<?> eggType) {
|
||||||
|
return spiderWeb.containsKey(eggType);
|
||||||
|
}
|
||||||
|
|
||||||
|
public SpiderSilk silkRoad(Class<?> eggType) {
|
||||||
|
SpiderSilk silkRoad = spiderWeb.get(eggType);
|
||||||
|
if (silkRoad == null) {
|
||||||
|
throw new IllegalStateException("No silk road found for type: "+eggType);
|
||||||
|
}
|
||||||
|
return silkRoad;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void registrateEgg(Class<?> eggType, SpiderSilk spiderSilk) {
|
||||||
|
if (spiderWeb.containsKey(eggType)) {
|
||||||
|
throw new IllegalStateException("Can't registate class twice: "+eggType);
|
||||||
|
}
|
||||||
|
spiderWeb.put(eggType, spiderSilk);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void registrateEgg(Class<?> eggType, Method m) {
|
||||||
|
registrateEgg(eggType, createSenseWire(m));
|
||||||
|
}
|
||||||
|
|
||||||
|
public SpiderSilk createSenseWire(Method m) {
|
||||||
|
boolean valid = false;
|
||||||
|
Class<?>[] para = m.getParameterTypes();
|
||||||
|
if (para.length == 0) {
|
||||||
|
valid = true;
|
||||||
|
}
|
||||||
|
if (para.length == 1 && BãßBȍőn.class.isAssignableFrom(para[0])) {
|
||||||
|
valid = true;
|
||||||
|
}
|
||||||
|
if (para.length == 2 && BãßBȍőn.class.isAssignableFrom(para[0]) && String.class.isAssignableFrom(para[1])) {
|
||||||
|
valid = true;
|
||||||
|
}
|
||||||
|
if (para.length == 3 && BãßBȍőn.class.isAssignableFrom(para[0]) && String.class.isAssignableFrom(para[1]) && String.class.isAssignableFrom(para[2])) {
|
||||||
|
valid = true;
|
||||||
|
}
|
||||||
|
if (!valid) {
|
||||||
|
throw new IllegalStateException("Unknown method parameters on: "+m.getDeclaringClass().getSimpleName()+"."+m.toGenericString());
|
||||||
|
}
|
||||||
|
return new SpiderSilk() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Object senseWire(Object boon, String name, String description) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
|
||||||
|
Class<?>[] para = m.getParameterTypes();
|
||||||
|
if (para.length == 0) {
|
||||||
|
return m.invoke(null);
|
||||||
|
}
|
||||||
|
if (para.length == 1 && BãßBȍőn.class.isAssignableFrom(para[0])) {
|
||||||
|
return m.invoke(null, boon);
|
||||||
|
}
|
||||||
|
if (para.length == 2 && BãßBȍőn.class.isAssignableFrom(para[0]) && String.class.isAssignableFrom(para[1])) {
|
||||||
|
return m.invoke(null, boon, name);
|
||||||
|
}
|
||||||
|
if (para.length == 3 && BãßBȍőn.class.isAssignableFrom(para[0]) && String.class.isAssignableFrom(para[1]) && String.class.isAssignableFrom(para[2])) {
|
||||||
|
return m.invoke(null, boon, name, description);
|
||||||
|
}
|
||||||
|
throw new IllegalStateException("Unknown method parameters on: "+m.getDeclaringClass().getSimpleName()+"."+m.toGenericString());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isNamed() {
|
||||||
|
Class<?>[] para = m.getParameterTypes();
|
||||||
|
if (para.length == 2 && BãßBȍőn.class.isAssignableFrom(para[0]) && String.class.isAssignableFrom(para[1])) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (para.length == 3 && BãßBȍőn.class.isAssignableFrom(para[0]) && String.class.isAssignableFrom(para[1]) && String.class.isAssignableFrom(para[2])) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
public interface SpiderSilk {
|
||||||
|
|
||||||
|
boolean isNamed();
|
||||||
|
|
||||||
|
Object senseWire(Object boon, String name, String description) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException;
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,6 +1,8 @@
|
||||||
package love.distributedrebirth.bassboonyd;
|
package love.distributedrebirth.bassboonyd;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface BãßBȍőnꝐŕḯṿª₮ḕ {
|
public interface BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||||
// note: eclipse ide does not want to refactor items with the name "Ꝑŕḯṿª₮ḕ" in it.
|
// note: eclipse ide does not want to refactor items with the name "Ꝑŕḯṿª₮ḕ" in it.
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,10 +0,0 @@
|
||||||
package love.distributedrebirth.bassboonyd;
|
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
|
||||||
public enum BãßBȍőnꝐŕḯṿª₮ḕInitArgsʸᴰ {
|
|
||||||
|
|
||||||
NONE,
|
|
||||||
BBC,
|
|
||||||
BOON,
|
|
||||||
BOON_AND_BBC
|
|
||||||
}
|
|
|
@ -1,6 +1,8 @@
|
||||||
package love.distributedrebirth.bassboonyd;
|
package love.distributedrebirth.bassboonyd;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public enum BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ {
|
public enum BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ {
|
||||||
|
|
||||||
BOON_PRE_BOOT,
|
BOON_PRE_BOOT,
|
||||||
|
|
|
@ -5,12 +5,12 @@ import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
import java.lang.annotation.Target;
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@Retention(RetentionPolicy.RUNTIME)
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
@Target({ElementType.METHOD})
|
@Target({ElementType.METHOD})
|
||||||
public @interface BãßBȍőnꝐŕḯṿª₮ḕInitʸᴰ {
|
public @interface BãßBȍőnꝐŕḯṿª₮ḕInit注 {
|
||||||
|
|
||||||
BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ phase() default BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ.SERVICE;
|
BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ phase() default BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ.SERVICE;
|
||||||
|
|
||||||
BãßBȍőnꝐŕḯṿª₮ḕInitArgsʸᴰ args() default BãßBȍőnꝐŕḯṿª₮ḕInitArgsʸᴰ.NONE;
|
|
||||||
}
|
}
|
|
@ -1,9 +1,12 @@
|
||||||
package love.distributedrebirth.bassboonyd;
|
package love.distributedrebirth.bassboonyd;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthorʸᴰ;
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnNameʸᴰ;
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnPackageʸᴰ;
|
||||||
|
|
||||||
public interface DefaultBãßBȍőn<T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends
|
public interface DefaultBãßBȍőn<T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends
|
||||||
BãßBȍőn<T,K>,
|
BãßBȍőn<T,K>,
|
||||||
InjectInitMethodʸᴰ<T,K>,
|
BãßBȍőnAuthorʸᴰ<T,K>,
|
||||||
InjectAuthorInfoʸᴰ<T,K>,
|
BãßBȍőnNameʸᴰ<T,K>,
|
||||||
InjectClassInfoʸᴰ<T,K>,
|
BãßBȍőnPackageʸᴰ<T,K> {
|
||||||
InjectPackageInfoʸᴰ<T,K> {
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
package love.distributedrebirth.bassboonyd;
|
package love.distributedrebirth.bassboonyd;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface DefaultEnumBaseʸᴰ<T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends DefaultBãßBȍőn<T, K> {
|
public interface DefaultEnumBaseʸᴰ<T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends DefaultBãßBȍőn<T, K> {
|
||||||
|
|
||||||
// Bȍőn prefix is for set instance enum methods (called DefaultEnumSetʸᴰ)
|
// Bȍőn prefix is for set instance enum methods (called DefaultEnumSetʸᴰ)
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
package love.distributedrebirth.bassboonyd;
|
package love.distributedrebirth.bassboonyd;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface DefaultEnumInstanceʸᴰ<T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends DefaultEnumBaseʸᴰ<T,K> {
|
public interface DefaultEnumInstanceʸᴰ<T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends DefaultEnumBaseʸᴰ<T,K> {
|
||||||
|
|
||||||
default T BãßInstance() {
|
default T BãßInstance() {
|
||||||
|
|
|
@ -7,15 +7,17 @@ import java.util.function.Consumer;
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface DefaultEnumSetʸᴰ<T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends DefaultEnumBaseʸᴰ<T,K> {
|
public interface DefaultEnumSetʸᴰ<T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends DefaultEnumBaseʸᴰ<T,K> {
|
||||||
|
|
||||||
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||||
private static final String GHOST_KEY_RANG_TEL_EEN = "rangTelEen";
|
private static final String GHOST_KEY_RANG_TEL_EEN = "rangTelEen";
|
||||||
|
|
||||||
@BãßBȍőnꝐŕḯṿª₮ḕInitʸᴰ(args = BãßBȍőnꝐŕḯṿª₮ḕInitArgsʸᴰ.BOON_AND_BBC)
|
@BãßBȍőnꝐŕḯṿª₮ḕInit注()
|
||||||
private static void init(DefaultEnumSetʸᴰ<?,?> boon, BãßBȍőnCoffinOpenʸᴰ<?> BBC) {
|
private static void init(DefaultEnumSetʸᴰ<?,?> boon) {
|
||||||
BBC.UNHOLY(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_KEY_RANG_TEL_EEN, boon.BȍőnRangTelNul() + BãßBȍőnConstantsʸᴰ.INT_ONE);
|
boon.GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_KEY_RANG_TEL_EEN, boon.BȍőnRangTelNul() + BãßBȍőnConstantsʸᴰ.INT_ONE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,28 +0,0 @@
|
||||||
package love.distributedrebirth.bassboonyd;
|
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
|
||||||
@BãßBȍőnAnnotationInfoʸᴰ(required = {BãßBȍőnAuthorInfoʸᴰ.class})
|
|
||||||
public interface InjectAuthorInfoʸᴰ<T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends BãßBȍőn<T,K> {
|
|
||||||
|
|
||||||
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
|
||||||
private static final String GHOST_KEY_AUTHOR_NAME = "authorName";
|
|
||||||
private static final String GHOST_KEY_AUTHOR_COPYRIGHT = "authorCopyright";
|
|
||||||
private static final String DEFAULT_AUTHOR_NAME = "奴隸來自 仙上主天";
|
|
||||||
private static final String DEFAULT_AUTHOR_COPYRIGHT = "©Δ∞ 仙上主天";
|
|
||||||
|
|
||||||
@BãßBȍőnꝐŕḯṿª₮ḕInitʸᴰ(phase = BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ.BOON_PRE_BOOT, args = BãßBȍőnꝐŕḯṿª₮ḕInitArgsʸᴰ.BOON_AND_BBC)
|
|
||||||
private static void init(BãßBȍőn<?,?> boon, BãßBȍőnCoffinOpenʸᴰ<?> BBC) {
|
|
||||||
BãßBȍőnAuthorInfoʸᴰ anno = boon.getClass().getAnnotation(BãßBȍőnAuthorInfoʸᴰ.class);
|
|
||||||
BBC.UNHOLY(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_KEY_AUTHOR_NAME, anno!=null?anno.name():DEFAULT_AUTHOR_NAME);
|
|
||||||
BBC.UNHOLY(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_KEY_AUTHOR_COPYRIGHT, anno!=null?anno.copyright():DEFAULT_AUTHOR_COPYRIGHT);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
default String BãßAuthorNaam() {
|
|
||||||
return GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_STR(Ꝑŕḯṿª₮ḕ.GHOST_KEY_AUTHOR_NAME);
|
|
||||||
}
|
|
||||||
|
|
||||||
default String BãßAuthorCopyright() {
|
|
||||||
return GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_STR(Ꝑŕḯṿª₮ḕ.GHOST_KEY_AUTHOR_COPYRIGHT);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,27 +0,0 @@
|
||||||
package love.distributedrebirth.bassboonyd;
|
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
|
||||||
@BãßBȍőnAnnotationInfoʸᴰ(required = {BãßBȍőnClassInfoʸᴰ.class})
|
|
||||||
public interface InjectClassInfoʸᴰ<T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends BãßBȍőn<T, K> {
|
|
||||||
|
|
||||||
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
|
||||||
private static final String GHOST_KEY_BEAN_NAME = "beanName";
|
|
||||||
private static final String GHOST_KEY_BEAN_PURPOSE = "beanPurpose";
|
|
||||||
private static final String DEFAULT_BEAN_PURPOSE = "Undefined";
|
|
||||||
|
|
||||||
@BãßBȍőnꝐŕḯṿª₮ḕInitʸᴰ(phase = BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ.BOON_PRE_BOOT, args = BãßBȍőnꝐŕḯṿª₮ḕInitArgsʸᴰ.BOON_AND_BBC)
|
|
||||||
private static void init(BãßBȍőn<?,?> boon, BãßBȍőnCoffinOpenʸᴰ<?> BBC) {
|
|
||||||
BãßBȍőnClassInfoʸᴰ anno = boon.getClass().getAnnotation(BãßBȍőnClassInfoʸᴰ.class);
|
|
||||||
BBC.UNHOLY(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_KEY_BEAN_NAME, anno!=null?anno.name():boon.getClass().getSimpleName());
|
|
||||||
BBC.UNHOLY(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_KEY_BEAN_PURPOSE, anno!=null?anno.purpose():DEFAULT_BEAN_PURPOSE);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
default String BãßClassNaam() {
|
|
||||||
return GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_STR(Ꝑŕḯṿª₮ḕ.GHOST_KEY_BEAN_NAME);
|
|
||||||
}
|
|
||||||
|
|
||||||
default String BãßClassPurpose() {
|
|
||||||
return GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_STR(Ꝑŕḯṿª₮ḕ.GHOST_KEY_BEAN_PURPOSE);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,85 +0,0 @@
|
||||||
package love.distributedrebirth.bassboonyd;
|
|
||||||
|
|
||||||
import java.lang.reflect.InvocationTargetException;
|
|
||||||
import java.lang.reflect.Method;
|
|
||||||
import java.util.LinkedHashSet;
|
|
||||||
import java.util.Set;
|
|
||||||
import java.util.function.Consumer;
|
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
|
||||||
public interface InjectInitMethodʸᴰ<T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends BãßBȍőn<T,K> {
|
|
||||||
|
|
||||||
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
|
||||||
|
|
||||||
private static void scanInterfaces(BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ phase, Object boon, BãßBȍőnCoffinOpenʸᴰ<?> bbc) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
|
|
||||||
for (Class<?> interfaceClass:walkInterfaces(boon.getClass(), new LinkedHashSet<>())) {
|
|
||||||
for (Class<?> declaredClass:((Class<?>) interfaceClass).getDeclaredClasses()) {
|
|
||||||
initPrivateMarker(phase, declaredClass, bbc, boon);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private static void scanClass(BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ phase, Object boon, BãßBȍőnCoffinOpenʸᴰ<?> bbc) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
|
|
||||||
for (Class<?> declaredClass:boon.getClass().getDeclaredClasses()) {
|
|
||||||
initPrivateMarker(phase, declaredClass, bbc, boon);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private static void initPrivateMarker(BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ phase, Class<?> declaredClass, BãßBȍőnCoffinOpenʸᴰ<?> bbc, Object boon) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
|
|
||||||
if (!BãßBȍőnꝐŕḯṿª₮ḕ.class.isAssignableFrom(declaredClass)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
for (Method m:declaredClass.getDeclaredMethods()) {
|
|
||||||
if (!m.isAnnotationPresent(BãßBȍőnꝐŕḯṿª₮ḕInitʸᴰ.class)) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
BãßBȍőnꝐŕḯṿª₮ḕInitʸᴰ anno = m.getAnnotation(BãßBȍőnꝐŕḯṿª₮ḕInitʸᴰ.class);
|
|
||||||
if (phase != anno.phase()) {
|
|
||||||
continue; // TODO: redo to fast code path
|
|
||||||
}
|
|
||||||
//System.out.println("annoInvoke: "+anno.args()+" req="+phase+" of "+boon.getClass().getSimpleName()+"."+boon+" from: "+declaredClass.getName());
|
|
||||||
m.setAccessible(true);
|
|
||||||
if (anno.args() == BãßBȍőnꝐŕḯṿª₮ḕInitArgsʸᴰ.BBC) {
|
|
||||||
m.invoke(null, bbc);
|
|
||||||
} else if (anno.args() == BãßBȍőnꝐŕḯṿª₮ḕInitArgsʸᴰ.BOON) {
|
|
||||||
m.invoke(null, boon);
|
|
||||||
} else if (anno.args() == BãßBȍőnꝐŕḯṿª₮ḕInitArgsʸᴰ.BOON_AND_BBC) {
|
|
||||||
m.invoke(null, boon, bbc);
|
|
||||||
} else {
|
|
||||||
m.invoke(null);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private static Set<Class<?>> walkInterfaces(Class<?> clazz, Set<Class<?>> result) {
|
|
||||||
while (clazz != null) {
|
|
||||||
for (Class<?> next : clazz.getInterfaces()) {
|
|
||||||
if (result.add(next)) {
|
|
||||||
walkInterfaces(next, result);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
clazz = clazz.getSuperclass();
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
default void BOON_INIT() {
|
|
||||||
BOON_INIT(null);
|
|
||||||
}
|
|
||||||
|
|
||||||
default void BOON_INIT(Consumer<BãßBȍőnCoffinOpenʸᴰ<K>> initBody) {
|
|
||||||
BãßBȍőnCoffinOpenʸᴰ<K> bbc = (BãßBȍőnCoffinOpenʸᴰ<K>) GET_BBC();
|
|
||||||
try {
|
|
||||||
for (BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ phase:BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ.values()) {
|
|
||||||
Ꝑŕḯṿª₮ḕ.scanInterfaces(phase, this, bbc);
|
|
||||||
Ꝑŕḯṿª₮ḕ.scanClass(phase, this, bbc);
|
|
||||||
}
|
|
||||||
if (initBody != null) {
|
|
||||||
initBody.accept(bbc);
|
|
||||||
}
|
|
||||||
} catch (Exception e) {
|
|
||||||
throw new RuntimeException(e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,20 +0,0 @@
|
||||||
package love.distributedrebirth.bassboonyd;
|
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
|
||||||
@BãßBȍőnAnnotationInfoʸᴰ(required = {BãßBȍőnPackageInfoʸᴰ.class})
|
|
||||||
public interface InjectPackageInfoʸᴰ<T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends BãßBȍőn<T, K> {
|
|
||||||
|
|
||||||
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
|
||||||
private static final String GHOST_KEY_PACKAGE_NAME = "packageName";
|
|
||||||
|
|
||||||
@BãßBȍőnꝐŕḯṿª₮ḕInitʸᴰ(phase = BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ.BOON_PRE_BOOT, args = BãßBȍőnꝐŕḯṿª₮ḕInitArgsʸᴰ.BOON_AND_BBC)
|
|
||||||
private static void init(BãßBȍőn<?,?> boon, BãßBȍőnCoffinOpenʸᴰ<?> BBC) {
|
|
||||||
BãßBȍőnPackageInfoʸᴰ anno = boon.getClass().getAnnotation(BãßBȍőnPackageInfoʸᴰ.class);
|
|
||||||
BBC.UNHOLY(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_KEY_PACKAGE_NAME, anno!=null?anno.name():boon.getClass().getPackage().getName());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
default String BãßPackageNaam() {
|
|
||||||
return GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_STR(Ꝑŕḯṿª₮ḕ.GHOST_KEY_PACKAGE_NAME);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,4 +1,4 @@
|
||||||
package love.distributedrebirth.bassboonyd;
|
package love.distributedrebirth.bassboonyd.info;
|
||||||
|
|
||||||
import java.lang.annotation.Annotation;
|
import java.lang.annotation.Annotation;
|
||||||
import java.lang.annotation.ElementType;
|
import java.lang.annotation.ElementType;
|
||||||
|
@ -6,12 +6,12 @@ import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
import java.lang.annotation.Target;
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@Retention(RetentionPolicy.RUNTIME)
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
@Target({ElementType.TYPE})
|
@Target({ElementType.TYPE})
|
||||||
public @interface BãßBȍőnAnnotationInfoʸᴰ {
|
public @interface BãßBȍőnAnnotation注 {
|
||||||
|
|
||||||
Class<? extends Annotation>[] required();
|
Class<? extends Annotation>[] required() default {};
|
||||||
|
|
||||||
Class<? extends Annotation>[] optional() default {};
|
Class<? extends Annotation>[] optional() default {};
|
||||||
}
|
}
|
|
@ -0,0 +1,34 @@
|
||||||
|
package love.distributedrebirth.bassboonyd.info;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboonyd.BãßBȍőn;
|
||||||
|
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinStoreKeyʸᴰ;
|
||||||
|
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕ;
|
||||||
|
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ;
|
||||||
|
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕInit注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
@BãßBȍőnAnnotation注(optional = {BãßBȍőnAuthor注.class})
|
||||||
|
public interface BãßBȍőnAuthorʸᴰ<T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends BãßBȍőn<T,K> {
|
||||||
|
|
||||||
|
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||||
|
private static final String GHOST_KEY_AUTHOR_NAME = "authorName";
|
||||||
|
private static final String GHOST_KEY_AUTHOR_COPYRIGHT = "authorCopyright";
|
||||||
|
private static final String DEFAULT_AUTHOR_NAME = "奴隸來自 仙上主天";
|
||||||
|
private static final String DEFAULT_AUTHOR_COPYRIGHT = "©Δ∞ 仙上主天";
|
||||||
|
|
||||||
|
@BãßBȍőnꝐŕḯṿª₮ḕInit注(phase = BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ.BOON_PRE_BOOT)
|
||||||
|
private static void init(BãßBȍőn<?,?> boon) {
|
||||||
|
BãßBȍőnAuthor注 anno = boon.getClass().getAnnotation(BãßBȍőnAuthor注.class);
|
||||||
|
boon.GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_KEY_AUTHOR_NAME, anno!=null?anno.name():DEFAULT_AUTHOR_NAME);
|
||||||
|
boon.GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_KEY_AUTHOR_COPYRIGHT, anno!=null?anno.copyright():DEFAULT_AUTHOR_COPYRIGHT);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
default String BãßAuthorNaam() {
|
||||||
|
return GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_STR(Ꝑŕḯṿª₮ḕ.GHOST_KEY_AUTHOR_NAME);
|
||||||
|
}
|
||||||
|
|
||||||
|
default String BãßAuthorCopyright() {
|
||||||
|
return GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_STR(Ꝑŕḯṿª₮ḕ.GHOST_KEY_AUTHOR_COPYRIGHT);
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,4 +1,4 @@
|
||||||
package love.distributedrebirth.bassboonyd;
|
package love.distributedrebirth.bassboonyd.info;
|
||||||
|
|
||||||
import java.lang.annotation.ElementType;
|
import java.lang.annotation.ElementType;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
|
@ -8,10 +8,10 @@ import java.lang.annotation.Target;
|
||||||
/**
|
/**
|
||||||
* Moves copyright into runtime class info.
|
* Moves copyright into runtime class info.
|
||||||
*/
|
*/
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@Retention(RetentionPolicy.RUNTIME)
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
@Target({ElementType.TYPE})
|
@Target({ElementType.TYPE})
|
||||||
public @interface BãßBȍőnAuthorInfoʸᴰ {
|
public @interface BãßBȍőnAuthor注 {
|
||||||
|
|
||||||
String name();
|
String name();
|
||||||
|
|
|
@ -0,0 +1,33 @@
|
||||||
|
package love.distributedrebirth.bassboonyd.info;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboonyd.BãßBȍőn;
|
||||||
|
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinStoreKeyʸᴰ;
|
||||||
|
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕ;
|
||||||
|
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ;
|
||||||
|
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕInit注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
@BãßBȍőnAnnotation注(optional = {BãßBȍőnName注.class})
|
||||||
|
public interface BãßBȍőnNameʸᴰ<T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends BãßBȍőn<T, K> {
|
||||||
|
|
||||||
|
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||||
|
private static final String GHOST_KEY_BEAN_NAME = "beanName";
|
||||||
|
private static final String GHOST_KEY_BEAN_PURPOSE = "beanPurpose";
|
||||||
|
private static final String DEFAULT_BEAN_PURPOSE = "Undefined";
|
||||||
|
|
||||||
|
@BãßBȍőnꝐŕḯṿª₮ḕInit注(phase = BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ.BOON_PRE_BOOT)
|
||||||
|
private static void init(BãßBȍőn<?,?> boon) {
|
||||||
|
BãßBȍőnName注 anno = boon.getClass().getAnnotation(BãßBȍőnName注.class);
|
||||||
|
boon.GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_KEY_BEAN_NAME, anno!=null?anno.name():boon.getClass().getSimpleName());
|
||||||
|
boon.GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_KEY_BEAN_PURPOSE, anno!=null?anno.purpose():DEFAULT_BEAN_PURPOSE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
default String BãßClassNaam() {
|
||||||
|
return GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_STR(Ꝑŕḯṿª₮ḕ.GHOST_KEY_BEAN_NAME);
|
||||||
|
}
|
||||||
|
|
||||||
|
default String BãßClassPurpose() {
|
||||||
|
return GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_STR(Ꝑŕḯṿª₮ḕ.GHOST_KEY_BEAN_PURPOSE);
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,14 +1,14 @@
|
||||||
package love.distributedrebirth.bassboonyd;
|
package love.distributedrebirth.bassboonyd.info;
|
||||||
|
|
||||||
import java.lang.annotation.ElementType;
|
import java.lang.annotation.ElementType;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
import java.lang.annotation.Target;
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@Retention(RetentionPolicy.RUNTIME)
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
@Target({ElementType.TYPE})
|
@Target({ElementType.TYPE})
|
||||||
public @interface BãßBȍőnClassInfoʸᴰ {
|
public @interface BãßBȍőnName注 {
|
||||||
|
|
||||||
String name();
|
String name();
|
||||||
|
|
|
@ -0,0 +1,26 @@
|
||||||
|
package love.distributedrebirth.bassboonyd.info;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboonyd.BãßBȍőn;
|
||||||
|
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinStoreKeyʸᴰ;
|
||||||
|
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕ;
|
||||||
|
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ;
|
||||||
|
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕInit注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
@BãßBȍőnAnnotation注(optional = {BãßBȍőnPackage注.class})
|
||||||
|
public interface BãßBȍőnPackageʸᴰ<T, K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends BãßBȍőn<T, K> {
|
||||||
|
|
||||||
|
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||||
|
private static final String GHOST_KEY_PACKAGE_NAME = "packageName";
|
||||||
|
|
||||||
|
@BãßBȍőnꝐŕḯṿª₮ḕInit注(phase = BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ.BOON_PRE_BOOT)
|
||||||
|
private static void init(BãßBȍőn<?,?> boon) {
|
||||||
|
BãßBȍőnPackage注 anno = boon.getClass().getAnnotation(BãßBȍőnPackage注.class);
|
||||||
|
boon.GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_KEY_PACKAGE_NAME, anno!=null?anno.name():boon.getClass().getPackage().getName());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
default String BãßPackageNaam() {
|
||||||
|
return GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_STR(Ꝑŕḯṿª₮ḕ.GHOST_KEY_PACKAGE_NAME);
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,14 +1,14 @@
|
||||||
package love.distributedrebirth.bassboonyd;
|
package love.distributedrebirth.bassboonyd.info;
|
||||||
|
|
||||||
import java.lang.annotation.ElementType;
|
import java.lang.annotation.ElementType;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
import java.lang.annotation.Target;
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@Retention(RetentionPolicy.RUNTIME)
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
@Target({ElementType.TYPE})
|
@Target({ElementType.TYPE})
|
||||||
public @interface BãßBȍőnPackageInfoʸᴰ {
|
public @interface BãßBȍőnPackage注 {
|
||||||
|
|
||||||
String name();
|
String name();
|
||||||
}
|
}
|
|
@ -1,8 +1,8 @@
|
||||||
package love.distributedrebirth.bassboonyd.jmx;
|
package love.distributedrebirth.bassboonyd.jmx;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
abstract public class AbstractMBeanAttributeᴶᴹˣ implements MBeanAttributeᴶᴹˣ {
|
abstract public class AbstractMBeanAttributeᴶᴹˣ implements MBeanAttributeᴶᴹˣ {
|
||||||
private final String name;
|
private final String name;
|
||||||
private final String description;
|
private final String description;
|
||||||
|
|
|
@ -0,0 +1,25 @@
|
||||||
|
package love.distributedrebirth.bassboonyd.jmx;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
@MBeanAttributeType注(Boolean.class)
|
||||||
|
public class AttributeBooleanᴶᴹˣ extends AbstractMBeanAttributeᴶᴹˣ {
|
||||||
|
private Boolean value;
|
||||||
|
|
||||||
|
public AttributeBooleanᴶᴹˣ(String name, String description) {
|
||||||
|
super(name, description);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValueBoolean(Boolean value) {
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Boolean getValueBoolean() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Object getValue() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,25 @@
|
||||||
|
package love.distributedrebirth.bassboonyd.jmx;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
@MBeanAttributeType注(Integer.class)
|
||||||
|
public class AttributeIntegerᴶᴹˣ extends AbstractMBeanAttributeᴶᴹˣ {
|
||||||
|
private Integer value;
|
||||||
|
|
||||||
|
public AttributeIntegerᴶᴹˣ(String name, String description) {
|
||||||
|
super(name, description);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValueInteger(Integer value) {
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Integer getValueInteger() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Object getValue() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,25 @@
|
||||||
|
package love.distributedrebirth.bassboonyd.jmx;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
@MBeanAttributeType注(String.class)
|
||||||
|
public class AttributeStringᴶᴹˣ extends AbstractMBeanAttributeᴶᴹˣ {
|
||||||
|
private String value;
|
||||||
|
|
||||||
|
public AttributeStringᴶᴹˣ(String name, String description) {
|
||||||
|
super(name, description);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setValueString(String value) {
|
||||||
|
this.value = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getValueString() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Object getValue() {
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,25 +0,0 @@
|
||||||
package love.distributedrebirth.bassboonyd.jmx;
|
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
|
||||||
@MBeanAttributeTypeᴶᴹˣ(Boolean.class)
|
|
||||||
public class BooleanAttributeᴶᴹˣ extends AbstractMBeanAttributeᴶᴹˣ {
|
|
||||||
private Boolean value;
|
|
||||||
|
|
||||||
public BooleanAttributeᴶᴹˣ(String name, String description) {
|
|
||||||
super(name, description);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setValueBoolean(Boolean value) {
|
|
||||||
this.value = value;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Boolean getValueBoolean() {
|
|
||||||
return value;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Object getValue() {
|
|
||||||
return value;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -0,0 +1,25 @@
|
||||||
|
package love.distributedrebirth.bassboonyd.jmx;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
@MBeanAttributeType注(Long.class)
|
||||||
|
public class CounterGuageᴶᴹˣ extends AbstractMBeanAttributeᴶᴹˣ {
|
||||||
|
private volatile long counter;
|
||||||
|
|
||||||
|
public CounterGuageᴶᴹˣ(String name, String description) {
|
||||||
|
super(name, description);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void increment() {
|
||||||
|
counter++;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void increment(long value) {
|
||||||
|
counter = counter + value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Object getValue() {
|
||||||
|
return Long.valueOf(counter);
|
||||||
|
}
|
||||||
|
}
|
|
@ -3,24 +3,52 @@ package love.distributedrebirth.bassboonyd.jmx;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAnnotationInfoʸᴰ;
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinStoreKeyʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinStoreKeyʸᴰ;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnConstantsʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinʸᴰ;
|
||||||
|
import love.distributedrebirth.bassboonyd.BãßBȍőnSpiderEgg注;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕ;
|
||||||
import love.distributedrebirth.bassboonyd.DefaultEnumBaseʸᴰ;
|
import love.distributedrebirth.bassboonyd.DefaultEnumBaseʸᴰ;
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAnnotation注;
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnName注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@BãßBȍőnAnnotationInfoʸᴰ(required = {BãßBȍőnClassInfoʸᴰ.class, BãßBȍőnAuthorInfoʸᴰ.class})
|
@BãßBȍőnAnnotation注(required = {BãßBȍőnName注.class, BãßBȍőnAuthor注.class})
|
||||||
public interface DefaultEnumBaseᴶᴹˣ<T,K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends DefaultEnumBaseʸᴰ<T,K> {
|
public interface DefaultEnumBaseᴶᴹˣ<T,K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends DefaultEnumBaseʸᴰ<T,K> {
|
||||||
|
|
||||||
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||||
private static final String GHOST_KEY_JMX = "JMX";
|
private static final String GHOST_KEY_JMX = "JMX";
|
||||||
|
|
||||||
|
@BãßBȍőnSpiderEgg注()
|
||||||
|
private static CounterGuageᴶᴹˣ buildGuageCounter(DefaultEnumBaseᴶᴹˣ<?,?> boon, String name, String description) {
|
||||||
|
CounterGuageᴶᴹˣ result = new CounterGuageᴶᴹˣ(name, description);
|
||||||
|
boon.GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_MAP_OBJ(Ꝑŕḯṿª₮ḕ.GHOST_KEY_JMX).put(name, result);
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Map<String, Object> GHOST_MAP(BãßBȍőnCoffinOpenʸᴰ<?> BBC) {
|
@BãßBȍőnSpiderEgg注()
|
||||||
|
private static AttributeStringᴶᴹˣ buildStringAttribute(DefaultEnumBaseᴶᴹˣ<?,?> boon, String name, String description) {
|
||||||
|
AttributeStringᴶᴹˣ result = new AttributeStringᴶᴹˣ(name, description);
|
||||||
|
boon.GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_MAP_OBJ(Ꝑŕḯṿª₮ḕ.GHOST_KEY_JMX).put(name, result);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
@BãßBȍőnSpiderEgg注()
|
||||||
|
private static AttributeBooleanᴶᴹˣ buildBooleanAttribute(DefaultEnumBaseᴶᴹˣ<?,?> boon, String name, String description) {
|
||||||
|
AttributeBooleanᴶᴹˣ result = new AttributeBooleanᴶᴹˣ(name, description);
|
||||||
|
boon.GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_MAP_OBJ(Ꝑŕḯṿª₮ḕ.GHOST_KEY_JMX).put(name, result);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
@BãßBȍőnSpiderEgg注()
|
||||||
|
private static AttributeIntegerᴶᴹˣ buildIntegerAttribute(DefaultEnumBaseᴶᴹˣ<?,?> boon, String name, String description) {
|
||||||
|
AttributeIntegerᴶᴹˣ result = new AttributeIntegerᴶᴹˣ(name, description);
|
||||||
|
boon.GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_MAP_OBJ(Ꝑŕḯṿª₮ḕ.GHOST_KEY_JMX).put(name, result);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static Map<String, Object> GHOST_MAP(BãßBȍőnCoffinʸᴰ<?> BBC) {
|
||||||
Map<String, Object> result = BBC.UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_MAP_OBJ(Ꝑŕḯṿª₮ḕ.GHOST_KEY_JMX);
|
Map<String, Object> result = BBC.UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_MAP_OBJ(Ꝑŕḯṿª₮ḕ.GHOST_KEY_JMX);
|
||||||
if (result == null) {
|
if (result == null) {
|
||||||
result = new HashMap<>();
|
result = new HashMap<>();
|
||||||
|
@ -28,34 +56,4 @@ public interface DefaultEnumBaseᴶᴹˣ<T,K extends BãßBȍőnCoffinStoreKeyʸ
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
default GuageCounterᴶᴹˣ BȍőnJmxInitGuageCounter(String name) {
|
|
||||||
return BȍőnJmxInitGuageCounter(name, BãßBȍőnConstantsʸᴰ.STR_EMPTY);
|
|
||||||
}
|
|
||||||
|
|
||||||
default GuageCounterᴶᴹˣ BȍőnJmxInitGuageCounter(String name, String description) {
|
|
||||||
GuageCounterᴶᴹˣ result = new GuageCounterᴶᴹˣ(name, description);
|
|
||||||
GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_MAP_OBJ(Ꝑŕḯṿª₮ḕ.GHOST_KEY_JMX).put(name, result);
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
default StringAttributeᴶᴹˣ BȍőnJmxInitStringAttribute(String name) {
|
|
||||||
return BȍőnJmxInitStringAttribute(name, BãßBȍőnConstantsʸᴰ.STR_EMPTY);
|
|
||||||
}
|
|
||||||
|
|
||||||
default StringAttributeᴶᴹˣ BȍőnJmxInitStringAttribute(String name, String description) {
|
|
||||||
StringAttributeᴶᴹˣ result = new StringAttributeᴶᴹˣ(name, description);
|
|
||||||
GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_MAP_OBJ(Ꝑŕḯṿª₮ḕ.GHOST_KEY_JMX).put(name, result);
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
default BooleanAttributeᴶᴹˣ BȍőnJmxInitBooleanAttribute(String name) {
|
|
||||||
return BȍőnJmxInitBooleanAttribute(name, BãßBȍőnConstantsʸᴰ.STR_EMPTY);
|
|
||||||
}
|
|
||||||
|
|
||||||
default BooleanAttributeᴶᴹˣ BȍőnJmxInitBooleanAttribute(String name, String description) {
|
|
||||||
BooleanAttributeᴶᴹˣ result = new BooleanAttributeᴶᴹˣ(name, description);
|
|
||||||
GET_BBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).GHOST_MAP_OBJ(Ꝑŕḯṿª₮ḕ.GHOST_KEY_JMX).put(name, result);
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,26 +5,24 @@ import java.lang.management.ManagementFactory;
|
||||||
import javax.management.MBeanServer;
|
import javax.management.MBeanServer;
|
||||||
import javax.management.ObjectName;
|
import javax.management.ObjectName;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAnnotationInfoʸᴰ;
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinStoreKeyʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinStoreKeyʸᴰ;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnConstantsʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnConstantsʸᴰ;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕ;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕInitArgsʸᴰ;
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕInitʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕInit注;
|
||||||
import love.distributedrebirth.bassboonyd.DefaultEnumInstanceʸᴰ;
|
import love.distributedrebirth.bassboonyd.DefaultEnumInstanceʸᴰ;
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAnnotation注;
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnName注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@BãßBȍőnAnnotationInfoʸᴰ(required = {BãßBȍőnClassInfoʸᴰ.class, BãßBȍőnAuthorInfoʸᴰ.class})
|
@BãßBȍőnAnnotation注(required = {BãßBȍőnName注.class, BãßBȍőnAuthor注.class})
|
||||||
public interface DefaultEnumInstanceᴶᴹˣ<T,K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends DefaultEnumBaseᴶᴹˣ<T,K>,DefaultEnumInstanceʸᴰ<T,K> {
|
public interface DefaultEnumInstanceᴶᴹˣ<T,K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends DefaultEnumBaseᴶᴹˣ<T,K>,DefaultEnumInstanceʸᴰ<T,K> {
|
||||||
|
|
||||||
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||||
|
|
||||||
@BãßBȍőnꝐŕḯṿª₮ḕInitʸᴰ(phase = BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ.BOON_PRE_SERVICE, args = BãßBȍőnꝐŕḯṿª₮ḕInitArgsʸᴰ.BOON_AND_BBC)
|
@BãßBȍőnꝐŕḯṿª₮ḕInit注(phase = BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ.BOON_PRE_SERVICE)
|
||||||
private static void init(DefaultEnumBaseᴶᴹˣ<?,?> boon, BãßBȍőnCoffinOpenʸᴰ<?> BBC) {
|
private static void init(DefaultEnumBaseᴶᴹˣ<?,?> boon) {
|
||||||
try {
|
try {
|
||||||
StringBuilder name = new StringBuilder();
|
StringBuilder name = new StringBuilder();
|
||||||
name.append(boon.BãßPackageNaam());
|
name.append(boon.BãßPackageNaam());
|
||||||
|
@ -35,7 +33,7 @@ public interface DefaultEnumInstanceᴶᴹˣ<T,K extends BãßBȍőnCoffinStoreK
|
||||||
|
|
||||||
MBeanServer server = ManagementFactory.getPlatformMBeanServer();
|
MBeanServer server = ManagementFactory.getPlatformMBeanServer();
|
||||||
ObjectName objectName1 = new ObjectName(name.toString());
|
ObjectName objectName1 = new ObjectName(name.toString());
|
||||||
server.registerMBean(new MBeanDynamicᴶᴹˣ(boon.BãßClassPurpose(), DefaultEnumBaseᴶᴹˣ.GHOST_MAP(BBC)), objectName1);
|
server.registerMBean(new MBeanDynamicᴶᴹˣ(boon.BãßClassPurpose(), DefaultEnumBaseᴶᴹˣ.GHOST_MAP(boon.GET_BBC())), objectName1);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,26 +5,24 @@ import java.lang.management.ManagementFactory;
|
||||||
import javax.management.MBeanServer;
|
import javax.management.MBeanServer;
|
||||||
import javax.management.ObjectName;
|
import javax.management.ObjectName;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAnnotationInfoʸᴰ;
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinStoreKeyʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinStoreKeyʸᴰ;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnConstantsʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnConstantsʸᴰ;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕ;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕInitArgsʸᴰ;
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕInitʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnꝐŕḯṿª₮ḕInit注;
|
||||||
import love.distributedrebirth.bassboonyd.DefaultEnumSetʸᴰ;
|
import love.distributedrebirth.bassboonyd.DefaultEnumSetʸᴰ;
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAnnotation注;
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnName注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@BãßBȍőnAnnotationInfoʸᴰ(required = {BãßBȍőnClassInfoʸᴰ.class, BãßBȍőnAuthorInfoʸᴰ.class})
|
@BãßBȍőnAnnotation注(required = {BãßBȍőnName注.class, BãßBȍőnAuthor注.class})
|
||||||
public interface DefaultEnumSetᴶᴹˣ<T,K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends DefaultEnumBaseᴶᴹˣ<T,K>,DefaultEnumSetʸᴰ<T,K> {
|
public interface DefaultEnumSetᴶᴹˣ<T,K extends BãßBȍőnCoffinStoreKeyʸᴰ> extends DefaultEnumBaseᴶᴹˣ<T,K>,DefaultEnumSetʸᴰ<T,K> {
|
||||||
|
|
||||||
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||||
|
|
||||||
@BãßBȍőnꝐŕḯṿª₮ḕInitʸᴰ(phase = BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ.BOON_PRE_SERVICE, args = BãßBȍőnꝐŕḯṿª₮ḕInitArgsʸᴰ.BOON_AND_BBC)
|
@BãßBȍőnꝐŕḯṿª₮ḕInit注(phase = BãßBȍőnꝐŕḯṿª₮ḕInitPhaseʸᴰ.BOON_PRE_SERVICE)
|
||||||
private static void init(DefaultEnumBaseᴶᴹˣ<?,?> boon, BãßBȍőnCoffinOpenʸᴰ<?> BBC) {
|
private static void init(DefaultEnumBaseᴶᴹˣ<?,?> boon) {
|
||||||
try {
|
try {
|
||||||
StringBuilder name = new StringBuilder();
|
StringBuilder name = new StringBuilder();
|
||||||
name.append(boon.BãßPackageNaam());
|
name.append(boon.BãßPackageNaam());
|
||||||
|
@ -39,7 +37,7 @@ public interface DefaultEnumSetᴶᴹˣ<T,K extends BãßBȍőnCoffinStoreKeyʸ
|
||||||
|
|
||||||
MBeanServer server = ManagementFactory.getPlatformMBeanServer();
|
MBeanServer server = ManagementFactory.getPlatformMBeanServer();
|
||||||
ObjectName objectName1 = new ObjectName(name.toString());
|
ObjectName objectName1 = new ObjectName(name.toString());
|
||||||
server.registerMBean(new MBeanDynamicᴶᴹˣ(boon.BãßClassPurpose(), DefaultEnumBaseᴶᴹˣ.GHOST_MAP(BBC)), objectName1);
|
server.registerMBean(new MBeanDynamicᴶᴹˣ(boon.BãßClassPurpose(), DefaultEnumBaseᴶᴹˣ.GHOST_MAP(boon.GET_BBC())), objectName1);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,25 +0,0 @@
|
||||||
package love.distributedrebirth.bassboonyd.jmx;
|
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
|
||||||
@MBeanAttributeTypeᴶᴹˣ(Long.class)
|
|
||||||
public class GuageCounterᴶᴹˣ extends AbstractMBeanAttributeᴶᴹˣ {
|
|
||||||
private volatile long counter;
|
|
||||||
|
|
||||||
public GuageCounterᴶᴹˣ(String name, String description) {
|
|
||||||
super(name, description);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void increment() {
|
|
||||||
counter++;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void increment(long value) {
|
|
||||||
counter = counter + value;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Object getValue() {
|
|
||||||
return Long.valueOf(counter);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -5,12 +5,12 @@ import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
import java.lang.annotation.Target;
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@Retention(RetentionPolicy.RUNTIME)
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
@Target({ElementType.TYPE})
|
@Target({ElementType.TYPE})
|
||||||
public @interface MBeanAttributeTypeᴶᴹˣ {
|
public @interface MBeanAttributeType注 {
|
||||||
|
|
||||||
Class<?> value();
|
Class<?> value();
|
||||||
}
|
}
|
|
@ -1,12 +1,12 @@
|
||||||
package love.distributedrebirth.bassboonyd.jmx;
|
package love.distributedrebirth.bassboonyd.jmx;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface MBeanAttributeᴶᴹˣ {
|
public interface MBeanAttributeᴶᴹˣ {
|
||||||
|
|
||||||
default Class<?> BãßValueType() {
|
default Class<?> BãßValueType() {
|
||||||
return getClass().getAnnotation(MBeanAttributeTypeᴶᴹˣ.class).value();
|
return getClass().getAnnotation(MBeanAttributeType注.class).value();
|
||||||
}
|
}
|
||||||
|
|
||||||
Object getValue();
|
Object getValue();
|
||||||
|
|
|
@ -15,26 +15,26 @@ import javax.management.MBeanInfo;
|
||||||
import javax.management.MBeanNotificationInfo;
|
import javax.management.MBeanNotificationInfo;
|
||||||
import javax.management.ReflectionException;
|
import javax.management.ReflectionException;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class MBeanDynamicᴶᴹˣ implements DynamicMBean {
|
public class MBeanDynamicᴶᴹˣ implements DynamicMBean {
|
||||||
|
|
||||||
private final String description;
|
private final String description;
|
||||||
private final Map<String, Object> guages;
|
private final Map<String, Object> attributeMap;
|
||||||
|
|
||||||
public MBeanDynamicᴶᴹˣ(String description, Map<String, Object> guages) {
|
public MBeanDynamicᴶᴹˣ(String description, Map<String, Object> attributeMap) {
|
||||||
this.description = description;
|
this.description = description;
|
||||||
this.guages = guages;
|
this.attributeMap = attributeMap;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public MBeanInfo getMBeanInfo() {
|
public MBeanInfo getMBeanInfo() {
|
||||||
MBeanAttributeInfo[] dAttributes = new MBeanAttributeInfo[guages.keySet().size()];
|
MBeanAttributeInfo[] dAttributes = new MBeanAttributeInfo[attributeMap.keySet().size()];
|
||||||
List<String> keySet = guages.keySet().stream().collect(Collectors.toList());
|
List<String> keySet = attributeMap.keySet().stream().collect(Collectors.toList());
|
||||||
for (int i = 0; i < dAttributes.length; i++) {
|
for (int i = 0; i < dAttributes.length; i++) {
|
||||||
String name = keySet.get(i);
|
String name = keySet.get(i);
|
||||||
MBeanAttributeᴶᴹˣ gc = MBeanAttributeᴶᴹˣ.class.cast(guages.get(name));
|
MBeanAttributeᴶᴹˣ gc = MBeanAttributeᴶᴹˣ.class.cast(attributeMap.get(name));
|
||||||
dAttributes[i] = new MBeanAttributeInfo(gc.getName(), gc.BãßValueType().getSimpleName(),
|
dAttributes[i] = new MBeanAttributeInfo(gc.getName(), gc.BãßValueType().getSimpleName(),
|
||||||
gc.getDescription(), true, false, false);
|
gc.getDescription(), true, false, false);
|
||||||
}
|
}
|
||||||
|
@ -44,7 +44,7 @@ public class MBeanDynamicᴶᴹˣ implements DynamicMBean {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Object getAttribute(String name) throws AttributeNotFoundException, MBeanException, ReflectionException {
|
public Object getAttribute(String name) throws AttributeNotFoundException, MBeanException, ReflectionException {
|
||||||
MBeanAttributeᴶᴹˣ gc = MBeanAttributeᴶᴹˣ.class.cast(guages.get(name));
|
MBeanAttributeᴶᴹˣ gc = MBeanAttributeᴶᴹˣ.class.cast(attributeMap.get(name));
|
||||||
return gc.getValue();
|
return gc.getValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,25 +0,0 @@
|
||||||
package love.distributedrebirth.bassboonyd.jmx;
|
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
|
||||||
@MBeanAttributeTypeᴶᴹˣ(String.class)
|
|
||||||
public class StringAttributeᴶᴹˣ extends AbstractMBeanAttributeᴶᴹˣ {
|
|
||||||
private String value;
|
|
||||||
|
|
||||||
public StringAttributeᴶᴹˣ(String name, String description) {
|
|
||||||
super(name, description);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setValueString(String value) {
|
|
||||||
this.value = value;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getValueString() {
|
|
||||||
return value;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Object getValue() {
|
|
||||||
return value;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,8 +1,8 @@
|
||||||
package love.distributedrebirth.imxmi;
|
package love.distributedrebirth.imxmi;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class ImXmiSetup {
|
public class ImXmiSetup {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,9 +2,9 @@ package love.distributedrebirth.imxmi.lang;
|
||||||
|
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
abstract public class AbstractImComponentDataˣᴹᴵ implements ImComponentDataˣᴹᴵ {
|
abstract public class AbstractImComponentDataˣᴹᴵ implements ImComponentDataˣᴹᴵ {
|
||||||
|
|
||||||
private Function<Object, Object> dataExtractor;
|
private Function<Object, Object> dataExtractor;
|
||||||
|
|
|
@ -3,9 +3,9 @@ package love.distributedrebirth.imxmi.lang;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
abstract public class AbstractImComponentSetˣᴹᴵ implements ImComponentSetˣᴹᴵ {
|
abstract public class AbstractImComponentSetˣᴹᴵ implements ImComponentSetˣᴹᴵ {
|
||||||
|
|
||||||
protected List<ImComponentˣᴹᴵ> components = new ArrayList<>();
|
protected List<ImComponentˣᴹᴵ> components = new ArrayList<>();
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
package love.distributedrebirth.imxmi.lang;
|
package love.distributedrebirth.imxmi.lang;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
abstract public class AbstractImComponentˣᴹᴵ implements ImComponentˣᴹᴵ {
|
abstract public class AbstractImComponentˣᴹᴵ implements ImComponentˣᴹᴵ {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
package love.distributedrebirth.imxmi.lang;
|
package love.distributedrebirth.imxmi.lang;
|
||||||
|
|
||||||
import imgui.ImGui;
|
import imgui.ImGui;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class ImButtonˣᴹᴵ extends AbstractImComponentˣᴹᴵ {
|
public class ImButtonˣᴹᴵ extends AbstractImComponentˣᴹᴵ {
|
||||||
|
|
||||||
private String label;
|
private String label;
|
||||||
|
|
|
@ -2,9 +2,9 @@ package love.distributedrebirth.imxmi.lang;
|
||||||
|
|
||||||
import imgui.ImGui;
|
import imgui.ImGui;
|
||||||
import imgui.type.ImInt;
|
import imgui.type.ImInt;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class ImComboˣᴹᴵ extends AbstractImComponentˣᴹᴵ {
|
public class ImComboˣᴹᴵ extends AbstractImComponentˣᴹᴵ {
|
||||||
|
|
||||||
private String label;
|
private String label;
|
||||||
|
|
|
@ -2,9 +2,9 @@ package love.distributedrebirth.imxmi.lang;
|
||||||
|
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface ImComponentDataˣᴹᴵ extends ImComponentˣᴹᴵ {
|
public interface ImComponentDataˣᴹᴵ extends ImComponentˣᴹᴵ {
|
||||||
|
|
||||||
void setDataExtractor(Function<Object, Object> dataExtractor);
|
void setDataExtractor(Function<Object, Object> dataExtractor);
|
||||||
|
|
|
@ -2,9 +2,9 @@ package love.distributedrebirth.imxmi.lang;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface ImComponentSetˣᴹᴵ extends ImComponentˣᴹᴵ {
|
public interface ImComponentSetˣᴹᴵ extends ImComponentˣᴹᴵ {
|
||||||
|
|
||||||
void addComponent(ImComponentˣᴹᴵ comp);
|
void addComponent(ImComponentˣᴹᴵ comp);
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
package love.distributedrebirth.imxmi.lang;
|
package love.distributedrebirth.imxmi.lang;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface ImComponentˣᴹᴵ {
|
public interface ImComponentˣᴹᴵ {
|
||||||
|
|
||||||
void renderBegin();
|
void renderBegin();
|
||||||
|
|
|
@ -3,9 +3,9 @@ package love.distributedrebirth.imxmi.lang;
|
||||||
import imgui.ImGui;
|
import imgui.ImGui;
|
||||||
import imgui.flag.ImGuiCond;
|
import imgui.flag.ImGuiCond;
|
||||||
import imgui.type.ImBoolean;
|
import imgui.type.ImBoolean;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class ImFrameˣᴹᴵ extends AbstractImComponentSetˣᴹᴵ {
|
public class ImFrameˣᴹᴵ extends AbstractImComponentSetˣᴹᴵ {
|
||||||
|
|
||||||
private String title;
|
private String title;
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
package love.distributedrebirth.imxmi.lang;
|
package love.distributedrebirth.imxmi.lang;
|
||||||
|
|
||||||
import imgui.ImGui;
|
import imgui.ImGui;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class ImSameLineˣᴹᴵ extends AbstractImComponentˣᴹᴵ {
|
public class ImSameLineˣᴹᴵ extends AbstractImComponentˣᴹᴵ {
|
||||||
|
|
||||||
public ImSameLineˣᴹᴵ() {
|
public ImSameLineˣᴹᴵ() {
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
package love.distributedrebirth.imxmi.lang;
|
package love.distributedrebirth.imxmi.lang;
|
||||||
|
|
||||||
import imgui.ImGui;
|
import imgui.ImGui;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class ImSeparatorˣᴹᴵ extends AbstractImComponentˣᴹᴵ {
|
public class ImSeparatorˣᴹᴵ extends AbstractImComponentˣᴹᴵ {
|
||||||
|
|
||||||
public ImSeparatorˣᴹᴵ() {
|
public ImSeparatorˣᴹᴵ() {
|
||||||
|
|
|
@ -6,9 +6,9 @@ import java.util.function.Supplier;
|
||||||
|
|
||||||
import imgui.ImGui;
|
import imgui.ImGui;
|
||||||
import imgui.flag.ImGuiTableFlags;
|
import imgui.flag.ImGuiTableFlags;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class ImTableˣᴹᴵ extends AbstractImComponentˣᴹᴵ {
|
public class ImTableˣᴹᴵ extends AbstractImComponentˣᴹᴵ {
|
||||||
|
|
||||||
private String id;
|
private String id;
|
||||||
|
|
|
@ -3,9 +3,9 @@ package love.distributedrebirth.imxmi.lang;
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
|
|
||||||
import imgui.ImGui;
|
import imgui.ImGui;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class ImTextDataˣᴹᴵ extends AbstractImComponentDataˣᴹᴵ {
|
public class ImTextDataˣᴹᴵ extends AbstractImComponentDataˣᴹᴵ {
|
||||||
|
|
||||||
private String text;
|
private String text;
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
package love.distributedrebirth.imxmi.lang;
|
package love.distributedrebirth.imxmi.lang;
|
||||||
|
|
||||||
import imgui.ImGui;
|
import imgui.ImGui;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class ImTextˣᴹᴵ extends AbstractImComponentˣᴹᴵ {
|
public class ImTextˣᴹᴵ extends AbstractImComponentˣᴹᴵ {
|
||||||
|
|
||||||
private String text;
|
private String text;
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
package love.distributedrebirth.numberxd;
|
package love.distributedrebirth.numberxd;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
abstract public class AbstractBaseGetậlMatrix1<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> implements BaseGetậlMatrix1<T,V> {
|
abstract public class AbstractBaseGetậlMatrix1<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> implements BaseGetậlMatrix1<T,V> {
|
||||||
|
|
||||||
protected int matrix1;
|
protected int matrix1;
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
package love.distributedrebirth.numberxd;
|
package love.distributedrebirth.numberxd;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
abstract public class AbstractBaseGetậlMatrix2<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends AbstractBaseGetậlMatrix1<T,V> implements BaseGetậlMatrix2<T,V> {
|
abstract public class AbstractBaseGetậlMatrix2<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends AbstractBaseGetậlMatrix1<T,V> implements BaseGetậlMatrix2<T,V> {
|
||||||
|
|
||||||
protected int matrix2;
|
protected int matrix2;
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
package love.distributedrebirth.numberxd;
|
package love.distributedrebirth.numberxd;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
abstract public class AbstractBaseGetậlMatrix3<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends AbstractBaseGetậlMatrix2<T,V> implements BaseGetậlMatrix3<T,V> {
|
abstract public class AbstractBaseGetậlMatrix3<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends AbstractBaseGetậlMatrix2<T,V> implements BaseGetậlMatrix3<T,V> {
|
||||||
|
|
||||||
protected int matrix3;
|
protected int matrix3;
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
package love.distributedrebirth.numberxd;
|
package love.distributedrebirth.numberxd;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
abstract public class AbstractBaseGetậlMatrix4<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends AbstractBaseGetậlMatrix3<T,V> implements BaseGetậlMatrix4<T,V> {
|
abstract public class AbstractBaseGetậlMatrix4<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends AbstractBaseGetậlMatrix3<T,V> implements BaseGetậlMatrix4<T,V> {
|
||||||
|
|
||||||
protected int matrix4;
|
protected int matrix4;
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
package love.distributedrebirth.numberxd;
|
package love.distributedrebirth.numberxd;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||||
import love.distributedrebirth.numberxd.base2t.part.T16PartHex;
|
import love.distributedrebirth.numberxd.base2t.part.T16PartHex;
|
||||||
import love.distributedrebirth.numberxd.base2t.type.V009Tyte;
|
import love.distributedrebirth.numberxd.base2t.type.V009Tyte;
|
||||||
import love.distributedrebirth.numberxd.base2t.type.V144Tocta;
|
import love.distributedrebirth.numberxd.base2t.type.V144Tocta;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
abstract public class AbstractGroßGetậlŌṁ1ⁿᴰ<T extends BaseGetậl<T,V009Tyte>> extends AbstractBaseGetậlMatrix2<T,V009Tyte> {
|
abstract public class AbstractGroßGetậlŌṁ1ⁿᴰ<T extends BaseGetậl<T,V009Tyte>> extends AbstractBaseGetậlMatrix2<T,V009Tyte> {
|
||||||
|
|
||||||
private V144Tocta[] values;
|
private V144Tocta[] values;
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
package love.distributedrebirth.numberxd;
|
package love.distributedrebirth.numberxd;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||||
import love.distributedrebirth.numberxd.base2t.part.T12PartUncial;
|
import love.distributedrebirth.numberxd.base2t.part.T12PartUncial;
|
||||||
import love.distributedrebirth.numberxd.base2t.part.T16PartHex;
|
import love.distributedrebirth.numberxd.base2t.part.T16PartHex;
|
||||||
import love.distributedrebirth.numberxd.base2t.type.V009Tyte;
|
import love.distributedrebirth.numberxd.base2t.type.V009Tyte;
|
||||||
import love.distributedrebirth.numberxd.base2t.type.V144Tocta;
|
import love.distributedrebirth.numberxd.base2t.type.V144Tocta;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
abstract public class AbstractGroßGetậlŌṁ6ˢᴰ<T extends BaseGetậl<T,V009Tyte>> extends AbstractBaseGetậlMatrix3<T,V009Tyte> {
|
abstract public class AbstractGroßGetậlŌṁ6ˢᴰ<T extends BaseGetậl<T,V009Tyte>> extends AbstractBaseGetậlMatrix3<T,V009Tyte> {
|
||||||
|
|
||||||
private V144Tocta[][] values;
|
private V144Tocta[][] values;
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
package love.distributedrebirth.numberxd;
|
package love.distributedrebirth.numberxd;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface BaseGetậl<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> {
|
public interface BaseGetậl<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> {
|
||||||
|
|
||||||
V getValue();
|
V getValue();
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
package love.distributedrebirth.numberxd;
|
package love.distributedrebirth.numberxd;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface BaseGetậlMatrix1<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậl<T,V> {
|
public interface BaseGetậlMatrix1<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậl<T,V> {
|
||||||
|
|
||||||
void setMatrix1(int valueIndex0);
|
void setMatrix1(int valueIndex0);
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
package love.distributedrebirth.numberxd;
|
package love.distributedrebirth.numberxd;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface BaseGetậlMatrix2<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậlMatrix1<T,V> {
|
public interface BaseGetậlMatrix2<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậlMatrix1<T,V> {
|
||||||
|
|
||||||
void setMatrix2(int valueIndex1);
|
void setMatrix2(int valueIndex1);
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
package love.distributedrebirth.numberxd;
|
package love.distributedrebirth.numberxd;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface BaseGetậlMatrix3<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậlMatrix2<T,V> {
|
public interface BaseGetậlMatrix3<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậlMatrix2<T,V> {
|
||||||
|
|
||||||
void setMatrix3(int valueIndex1);
|
void setMatrix3(int valueIndex1);
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
package love.distributedrebirth.numberxd;
|
package love.distributedrebirth.numberxd;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface BaseGetậlMatrix4<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậlMatrix3<T,V> {
|
public interface BaseGetậlMatrix4<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậlMatrix3<T,V> {
|
||||||
|
|
||||||
void setMatrix4(int valueIndex1);
|
void setMatrix4(int valueIndex1);
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
package love.distributedrebirth.numberxd;
|
package love.distributedrebirth.numberxd;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.info.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorTyte;
|
import love.distributedrebirth.numberxd.base2t.BaseIteratorTyte;
|
||||||
import love.distributedrebirth.numberxd.base2t.part.T16PartHex;
|
import love.distributedrebirth.numberxd.base2t.part.T16PartHex;
|
||||||
|
@ -10,7 +10,7 @@ import love.distributedrebirth.numberxd.base2t.type.V144Tocta;
|
||||||
/**
|
/**
|
||||||
* Holds an 144 bit fraction.
|
* Holds an 144 bit fraction.
|
||||||
*/
|
*/
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public class GroßGetậl1ⁿᴰ extends AbstractBaseGetậlMatrix1<GroßGetậl1ⁿᴰ,V009Tyte> {
|
public class GroßGetậl1ⁿᴰ extends AbstractBaseGetậlMatrix1<GroßGetậl1ⁿᴰ,V009Tyte> {
|
||||||
|
|
||||||
//public static int NUMERATOR_SIZE = 7;
|
//public static int NUMERATOR_SIZE = 7;
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue