Package com.ultikits.ultitools
Class InvokeKindAlignmentRule
java.lang.Object
com.ultikits.ultitools.InvokeKindAlignmentRule
- All Implemented Interfaces:
ClassRewriteRule
Aligns server-owned method references with the real owner's class/interface kind.
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ServerApiProbeprivate final ConcurrentMap<String, Integer> private static final String[] -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleancovers(ServerApiReference reference) Whether this rule actually repairs a particular reference for the running server.private BooleanNull means either no known owner or no mismatch, never a guessed replacement.byte[]Returns the replacement bytes; never mutates the input and never returns null.(package private) intrewrittenSites(String binaryName) Read only after defineClass succeeds; a failed definition contributes no startup counts.private static booleanserverOwned(String owner) booleanwouldChange(String binaryName, byte[] bytes) Inspects the current bytes without changing them or initializing any module class.
-
Field Details
-
SERVER_NAMESPACES
-
probe
-
rewrittenSites
-
-
Constructor Details
-
InvokeKindAlignmentRule
InvokeKindAlignmentRule(ServerApiProbe probe)
-
-
Method Details
-
wouldChange
Description copied from interface:ClassRewriteRuleInspects the current bytes without changing them or initializing any module class.- Specified by:
wouldChangein interfaceClassRewriteRule
-
rewrite
Description copied from interface:ClassRewriteRuleReturns the replacement bytes; never mutates the input and never returns null.- Specified by:
rewritein interfaceClassRewriteRule
-
covers
Description copied from interface:ClassRewriteRuleWhether this rule actually repairs a particular reference for the running server. A rule must not claim to cover a missing member merely because it can align the owner's type kind.- Specified by:
coversin interfaceClassRewriteRule
-
rewrittenSites
Read only after defineClass succeeds; a failed definition contributes no startup counts. -
serverOwned
-
mismatch
Null means either no known owner or no mismatch, never a guessed replacement.
-