Package org.jrd.backend.data.cli
Class Lib
- java.lang.Object
-
- org.jrd.backend.data.cli.Lib
-
public final class Lib extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Lib.HandhshakeResult
-
Constructor Summary
Constructors Modifier Constructor Description private
Lib()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.String
addByteClassesViaJar(VmInfo vmInfo, java.util.List<io.github.mkoncek.classpathless.api.IdentifiedBytecode> toJar, boolean isBoot, VmManager vmManager)
static java.lang.String
addClass(VmInfo vmInfo, java.lang.String className, java.lang.String clazzBytesInBase64, VmManager vmManager)
static java.lang.String
addFileClassesViaJar(VmInfo vmInfo, java.util.List<FqnAndClassToJar> toJar, boolean isBoot, VmManager vmManager)
static java.lang.String
addJar(VmInfo vmInfo, boolean isBoot, java.lang.String jarName, java.lang.String jarBytesInBase64, VmManager vmManager)
static java.lang.String
decompileBytesByDecompilerName(byte[] bytes, java.lang.String pluginName, java.lang.String className, VmInfo vmInfo, VmManager vmManager, PluginManager pluginManager)
static java.lang.String
decompileBytesByDecompilerName(java.lang.String base64Bytes, java.lang.String pluginName, java.lang.String className, VmInfo vmInfo, VmManager vmManager, PluginManager pluginManager)
static void
detach(java.lang.String host, int port, VmManager vmManager)
static DecompilerWrapper
findDecompiler(java.lang.String decompilerName, PluginManager pluginManager)
static int
getBuildJavaPerVersion(byte[] source)
static int
getByteCodeVersion(byte[] source)
static int[]
getByteCodeVersions(ClassInfo clazz, VmInfo vmInfo, VmManager vmManager)
static PluginWithOptions
getDecompilerFromString(java.lang.String plugin, PluginManager pm)
static java.lang.Integer
getDefaultRemoteBytecodelevel(VmInfo vmInfo, VmManager vmManager)
static java.lang.Integer
getDefaultRemoteBytecodelevel(VmInfo vmInfo, VmManager vmManager, java.lang.String className)
static java.lang.Integer
getDefaultRemoteBytecodelevelCatched(VmInfo vmInfo, VmManager vmManager)
static int
getJavaFromBytelevel(int bytecodeVersion)
static PluginWrapperWithMetaInfo
getPluginWrapper(PluginManager pluginManager, java.lang.String pluginIdOrNonsense, boolean doThrow)
static java.lang.String
getPrefixByBoot(boolean boot)
static java.lang.String
guessName(byte[] fileContents)
static java.lang.String[]
guessNameImpl(byte[] fileContents)
static Lib.HandhshakeResult
handshakeAgent(KnownAgent agent, VmInfo vmInfo, VmManager vmManager)
static Lib.HandhshakeResult
handshakeAgent(KnownAgent agent, VmManager vmManager)
static void
initClass(VmInfo vmInfo, VmManager vmManager, java.lang.String fqn, java.io.PrintStream outputMessageStream)
static java.lang.String
initClassNoThrow(VmInfo vmInfo, VmManager vmManager, java.lang.String fqn)
static InMemoryJar
jarFromClasses(java.lang.String[] fqnFilePairs, java.lang.Object[] lastCarier)
(package private) static boolean
matchesAtLeastOne(ClassInfo clazz, java.util.List<java.util.regex.Pattern> filter)
static VmDecompilerStatus
obtainClass(VmInfo vmInfo, java.lang.String clazz, VmManager manager)
static java.lang.String[]
obtainClasses(VmInfo vmInfo, VmManager manager)
static ClassInfo[]
obtainClassesDetails(VmInfo vmInfo, VmManager manager)
static java.util.List<ClassInfo>
obtainFilteredClasses(VmInfo vmInfo, VmManager vmManager, java.util.List<java.util.regex.Pattern> filter, boolean details, java.util.Optional<java.lang.String> search)
static java.lang.String[]
obtainOverrides(VmInfo vmInfo, VmManager manager)
static VmDecompilerStatus
obtainVersion(VmInfo vmInfo, VmManager manager)
static java.lang.String
readClassNameFromClass(byte[] b)
static void
removeOverrides(VmInfo vmInfo, VmManager manager, java.lang.String regex)
static java.lang.String[]
searchClasses(VmInfo vmInfo, VmManager manager, java.lang.String searchedSusbtring, java.lang.String regex)
static ClassInfo[]
searchWithClassesDetails(VmInfo vmInfo, VmManager manager, java.lang.String searchedSusbtring, java.lang.String regex)
static java.lang.String
uploadClass(VmInfo vmInfo, java.lang.String className, byte[] bytes, VmManager vmManager)
static java.lang.String
uploadClass(VmInfo vmInfo, java.lang.String className, java.lang.String clazzBytesInBase64, VmManager vmManager)
-
-
-
Method Detail
-
initClass
public static void initClass(VmInfo vmInfo, VmManager vmManager, java.lang.String fqn, java.io.PrintStream outputMessageStream)
-
initClassNoThrow
public static java.lang.String initClassNoThrow(VmInfo vmInfo, VmManager vmManager, java.lang.String fqn)
-
guessName
public static java.lang.String guessName(byte[] fileContents) throws java.io.IOException
- Throws:
java.io.IOException
-
guessNameImpl
public static java.lang.String[] guessNameImpl(byte[] fileContents) throws java.io.IOException
- Throws:
java.io.IOException
-
findDecompiler
public static DecompilerWrapper findDecompiler(java.lang.String decompilerName, PluginManager pluginManager)
-
obtainFilteredClasses
public static java.util.List<ClassInfo> obtainFilteredClasses(VmInfo vmInfo, VmManager vmManager, java.util.List<java.util.regex.Pattern> filter, boolean details, java.util.Optional<java.lang.String> search) throws java.io.IOException
- Throws:
java.io.IOException
-
getByteCodeVersions
public static int[] getByteCodeVersions(ClassInfo clazz, VmInfo vmInfo, VmManager vmManager)
-
matchesAtLeastOne
static boolean matchesAtLeastOne(ClassInfo clazz, java.util.List<java.util.regex.Pattern> filter)
-
searchClasses
public static java.lang.String[] searchClasses(VmInfo vmInfo, VmManager manager, java.lang.String searchedSusbtring, java.lang.String regex)
-
removeOverrides
public static void removeOverrides(VmInfo vmInfo, VmManager manager, java.lang.String regex)
-
obtainClassesDetails
public static ClassInfo[] obtainClassesDetails(VmInfo vmInfo, VmManager manager)
-
searchWithClassesDetails
public static ClassInfo[] searchWithClassesDetails(VmInfo vmInfo, VmManager manager, java.lang.String searchedSusbtring, java.lang.String regex)
-
obtainClass
public static VmDecompilerStatus obtainClass(VmInfo vmInfo, java.lang.String clazz, VmManager manager)
-
obtainVersion
public static VmDecompilerStatus obtainVersion(VmInfo vmInfo, VmManager manager)
-
detach
public static void detach(java.lang.String host, int port, VmManager vmManager)
-
getDecompilerFromString
public static PluginWithOptions getDecompilerFromString(java.lang.String plugin, PluginManager pm)
-
decompileBytesByDecompilerName
public static java.lang.String decompileBytesByDecompilerName(java.lang.String base64Bytes, java.lang.String pluginName, java.lang.String className, VmInfo vmInfo, VmManager vmManager, PluginManager pluginManager) throws java.lang.Exception
- Throws:
java.lang.Exception
-
decompileBytesByDecompilerName
public static java.lang.String decompileBytesByDecompilerName(byte[] bytes, java.lang.String pluginName, java.lang.String className, VmInfo vmInfo, VmManager vmManager, PluginManager pluginManager) throws java.lang.Exception
- Throws:
java.lang.Exception
-
uploadClass
public static java.lang.String uploadClass(VmInfo vmInfo, java.lang.String className, byte[] bytes, VmManager vmManager)
-
uploadClass
public static java.lang.String uploadClass(VmInfo vmInfo, java.lang.String className, java.lang.String clazzBytesInBase64, VmManager vmManager)
-
addClass
public static java.lang.String addClass(VmInfo vmInfo, java.lang.String className, java.lang.String clazzBytesInBase64, VmManager vmManager)
-
addJar
public static java.lang.String addJar(VmInfo vmInfo, boolean isBoot, java.lang.String jarName, java.lang.String jarBytesInBase64, VmManager vmManager)
-
getPluginWrapper
public static PluginWrapperWithMetaInfo getPluginWrapper(PluginManager pluginManager, java.lang.String pluginIdOrNonsense, boolean doThrow)
-
handshakeAgent
public static Lib.HandhshakeResult handshakeAgent(KnownAgent agent, VmManager vmManager)
-
handshakeAgent
public static Lib.HandhshakeResult handshakeAgent(KnownAgent agent, VmInfo vmInfo, VmManager vmManager)
-
getBuildJavaPerVersion
public static int getBuildJavaPerVersion(byte[] source)
-
getJavaFromBytelevel
public static int getJavaFromBytelevel(int bytecodeVersion)
-
getByteCodeVersion
public static int getByteCodeVersion(byte[] source)
-
jarFromClasses
public static InMemoryJar jarFromClasses(java.lang.String[] fqnFilePairs, java.lang.Object[] lastCarier) throws java.io.IOException
- Throws:
java.io.IOException
-
getPrefixByBoot
public static java.lang.String getPrefixByBoot(boolean boot)
-
readClassNameFromClass
public static java.lang.String readClassNameFromClass(byte[] b)
-
addFileClassesViaJar
public static java.lang.String addFileClassesViaJar(VmInfo vmInfo, java.util.List<FqnAndClassToJar> toJar, boolean isBoot, VmManager vmManager) throws java.io.IOException
- Throws:
java.io.IOException
-
addByteClassesViaJar
public static java.lang.String addByteClassesViaJar(VmInfo vmInfo, java.util.List<io.github.mkoncek.classpathless.api.IdentifiedBytecode> toJar, boolean isBoot, VmManager vmManager) throws java.io.IOException
- Throws:
java.io.IOException
-
getDefaultRemoteBytecodelevelCatched
public static java.lang.Integer getDefaultRemoteBytecodelevelCatched(VmInfo vmInfo, VmManager vmManager)
-
getDefaultRemoteBytecodelevel
public static java.lang.Integer getDefaultRemoteBytecodelevel(VmInfo vmInfo, VmManager vmManager)
-
-