Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
f20bcc4
Update to JCOBridge 2.6.4-rc1
masesdevelopers Sep 16, 2025
67e139e
Update to report exception if it was raised within class construction
masesdevelopers Sep 16, 2025
75483ca
Exception classes shall be built with 3 different constructors
masesdevelopers Sep 16, 2025
392f036
Use local version
masesdevelopers Sep 16, 2025
bdd0ea7
Alignment classes to latest available feature
masesdevelopers Sep 16, 2025
1667fe1
Update template using global in definition of System.Exception
masesdevelopers Sep 16, 2025
9426c6e
Update Throwable with latest needs
masesdevelopers Sep 16, 2025
6e53462
Many fixes on classes
masesdevelopers Sep 16, 2025
c3d2857
Update to JCOBridge 2.6.4-rc2
masesdevelopers Sep 16, 2025
ca2d17e
Updates to JCOBridge 2.6.4-rc3 and reviews how JNetReflector builds c…
masesdevelopers Sep 16, 2025
370a4ac
Removed local version
masesdevelopers Sep 16, 2025
3b15944
Fix class definition
masesdevelopers Sep 16, 2025
45c1fe0
Applied modifications
masesdevelopers Sep 16, 2025
2ca97c6
Update manual made classes
masesdevelopers Sep 16, 2025
ad2cd6e
Update to JCOBridge 2.6.4-rc4
masesdevelopers Sep 16, 2025
e2753ae
Test fix
masesdevelopers Sep 17, 2025
86d37e3
Update to JCOBridge 2.6.4-rc6 and updated templates to generate liste…
masesdevelopers Sep 17, 2025
205d87e
Update generated classes after commit 76e6ed4 (#729)
github-actions[bot] Sep 17, 2025
0a3ca8c
Reviewed with usage of Dispose pattern
masesdevelopers Sep 17, 2025
d535727
Update to JCOBridge 2.6.4-rc7
masesdevelopers Sep 18, 2025
5b7f798
Update Program.cs
masesdevelopers Sep 18, 2025
4053c0d
Avoid Dispose of underlying JCOBridgeDirectBuffer: if the user needs …
masesdevelopers Sep 19, 2025
6053bcd
Update
masesdevelopers Sep 19, 2025
b88e967
https://github.com/masesgroup/JNet/issues/717#issuecomment-3310057769…
masesdevelopers Sep 19, 2025
b36e671
Added new available properties of SetupJVMWrapper
masesdevelopers Sep 19, 2025
23348e0
Updates for changes introduced from JCOBridge 2.6.4-rc5
masesdevelopers Sep 19, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 2 additions & 4 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -350,8 +350,6 @@ jobs:
framework: net462
- jdk_vendor: oracle
jdk_version: 11
- jdk_vendor: oracle
jdk_version: 17
- jdk_vendor: graalvm
jdk_version: 11

Expand All @@ -364,7 +362,7 @@ jobs:
DOTNET_CreateDumpVerboseDiagnostics: ${{ inputs.EnableVerboseDiagnosticProcessDump }}
DOTNET_EnableCrashReport: ${{ inputs.EnableProcessDump }}
DOTNET_CreateDumpLogToFile: ${{ github.workspace }}/coredump.diagnostic
JCOBRIDGE_LicensePath: ${{ secrets.JCOBRIDGE_ENCODED_2_6_3 }}
JCOBRIDGE_LicensePath: ${{ secrets.JCOBRIDGE_ENCODED_2_6_4 }}

steps:
- name: Restore JNet bin from cache
Expand Down Expand Up @@ -466,7 +464,7 @@ jobs:
DOTNET_CreateDumpVerboseDiagnostics: ${{ inputs.EnableVerboseDiagnosticProcessDump }}
DOTNET_EnableCrashReport: ${{ inputs.EnableProcessDump }}
DOTNET_CreateDumpLogToFile: ${{ github.workspace }}/coredump.diagnostic
JCOBRIDGE_LicensePath: ${{ secrets.JCOBRIDGE_ENCODED_2_6_3 }}
JCOBRIDGE_LicensePath: ${{ secrets.JCOBRIDGE_ENCODED_2_6_4 }}

steps:
- uses: actions/setup-dotnet@v5
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/generateclasses.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
DOTNET_CreateDumpDiagnostics: 1
DOTNET_CreateDumpVerboseDiagnostics: 1
DOTNET_EnableCrashReport: 1
JCOBRIDGE_LicensePath: ${{ secrets.JCOBRIDGE_ENCODED_2_6_3 }}
JCOBRIDGE_LicensePath: ${{ secrets.JCOBRIDGE_ENCODED_2_6_4 }}

# Steps represent a sequence of tasks that will be executed as part of the job
steps:
Expand Down
18 changes: 4 additions & 14 deletions src/net/JNet/Developed/Java/Awt/Container.cs
Original file line number Diff line number Diff line change
Expand Up @@ -24,14 +24,6 @@ public partial class Container
{
// can be extended with methods not reflected or not available in Java;

/// <summary>
/// Finalizer of <see cref="Container"/>
/// </summary>
~Container()
{
Dispose();
}

IJCGraphicContainer _container = null;
/// <summary>
/// Creates the <see cref="HostedContainer"/> and returns <see cref="IJCGraphicContainer.GraphicObject"/>
Expand All @@ -55,11 +47,9 @@ public object CreateHostedContainer(bool isWPF, JCWindowsManager manager = null)
/// <summary>
/// Returns the hostable <see cref="IJCGraphicContainer"/>
/// </summary>
public IJCGraphicContainer HostedContainer => _container;
/// <summary>
/// Dispose this resource
/// </summary>
public override void Dispose()
public IJCGraphicContainer HostedContainer { get { lock (this) { return _container; } } }
/// <inheritdoc/>
protected override void Dispose(bool disposing)
{
lock (this)
{
Expand All @@ -69,7 +59,7 @@ public override void Dispose()
_container = null;
}
}
base.Dispose();
base.Dispose(disposing);
}

// TODO: complete the class
Expand Down
4 changes: 4 additions & 0 deletions src/net/JNet/Developed/Java/Lang/Annotation/Annotation.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,10 @@ namespace Java.Lang.Annotation
#if JNETREFLECTOR
public class Annotation : JVMBridgeBase<Annotation>
{
/// <inheritdoc/>
public Annotation() { }
/// <inheritdoc/>
public Annotation(IJVMBridgeBaseInitializer initializer) : base(initializer) { }
/// <inheritdoc />
public override string BridgeClassName => "java.lang.annotation.Annotation";
/// <summary>
Expand Down
5 changes: 5 additions & 0 deletions src/net/JNet/Developed/Java/Lang/Class.cs
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,11 @@ namespace Java.Lang
/// </summary>
public class Class : JVMBridgeBase<Class>
{
/// <inheritdoc/>
public Class() { }
/// <inheritdoc/>
public Class(IJVMBridgeBaseInitializer initializer) : base(initializer) { }

static readonly Java.Lang.ClassLoader _loader = storeLoader();
static Java.Lang.ClassLoader storeLoader()
{
Expand Down
6 changes: 6 additions & 0 deletions src/net/JNet/Developed/Java/Lang/ClassFormatError.cs
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,12 @@ namespace Java.Lang
/// </summary>
public class ClassFormatError : LinkageError
{
/// <inheritdoc cref="global::System.Exception()"/>
public ClassFormatError() { }
/// <inheritdoc cref="global::System.Exception(string)"/>
public ClassFormatError(string message) : base(message) { }
/// <inheritdoc cref="global::System.Exception(string, global::System.Exception)"/>
public ClassFormatError(string message, global::System.Exception innerException) : base(message, innerException) { }
/// <inheritdoc />
public override string BridgeClassName => "java.lang.ClassFormatError";
}
Expand Down
2 changes: 2 additions & 0 deletions src/net/JNet/Developed/Java/Lang/ClassLoader.cs
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@ public class ClassLoader : JVMBridgeBase<ClassLoader>
/// Default constructor: even if the corresponding Java class does not have one, it is mandatory for JCOBridge
/// </summary>
public ClassLoader() { }
/// <inheritdoc/>
public ClassLoader(IJVMBridgeBaseInitializer initializer) : base(initializer) { }
/// <summary>
/// Generic constructor: it is useful for JCOBridge when there is a derived class which needs to pass arguments to the highest JVMBridgeBase class
/// </summary>
Expand Down
6 changes: 6 additions & 0 deletions src/net/JNet/Developed/Java/Lang/ClassNotFoundException.cs
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,12 @@ namespace Java.Lang
/// </summary>
public class ClassNotFoundException : ReflectiveOperationException
{
/// <inheritdoc cref="global::System.Exception()"/>
public ClassNotFoundException() { }
/// <inheritdoc cref="global::System.Exception(string)"/>
public ClassNotFoundException(string message) : base(message) { }
/// <inheritdoc cref="global::System.Exception(string, global::System.Exception)"/>
public ClassNotFoundException(string message, global::System.Exception innerException) : base(message, innerException) { }
/// <inheritdoc />
public override string BridgeClassName => "java.lang.ClassNotFoundException";
}
Expand Down
4 changes: 4 additions & 0 deletions src/net/JNet/Developed/Java/Lang/Compiler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,10 @@ namespace Java.Lang
/// </summary>
public class Compiler : JVMBridgeBase<Compiler>
{
/// <inheritdoc/>
public Compiler() { }
/// <inheritdoc/>
public Compiler(IJVMBridgeBaseInitializer initializer) : base(initializer) { }
/// <inheritdoc />
public override string BridgeClassName => "java.lang.Compiler";
/// <inheritdoc />
Expand Down
6 changes: 6 additions & 0 deletions src/net/JNet/Developed/Java/Lang/Error.cs
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,12 @@ namespace Java.Lang
/// </summary>
public class Error : Throwable
{
/// <inheritdoc cref="global::System.Exception()"/>
public Error() { }
/// <inheritdoc cref="global::System.Exception(string)"/>
public Error(string message) : base(message) { }
/// <inheritdoc cref="global::System.Exception(string, global::System.Exception)"/>
public Error(string message, global::System.Exception innerException) : base(message, innerException) { }
/// <inheritdoc />
public override string BridgeClassName => "java.lang.Error";
}
Expand Down
6 changes: 6 additions & 0 deletions src/net/JNet/Developed/Java/Lang/Exception.cs
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,12 @@ namespace Java.Lang
/// </summary>
public class Exception : Throwable
{
/// <inheritdoc cref="global::System.Exception()"/>
public Exception() { }
/// <inheritdoc cref="global::System.Exception(string)"/>
public Exception(string message) : base(message) { }
/// <inheritdoc cref="global::System.Exception(string, global::System.Exception)"/>
public Exception(string message, global::System.Exception innerException) : base(message, innerException) { }
/// <inheritdoc />
public override string BridgeClassName => "java.lang.Exception";
}
Expand Down
4 changes: 4 additions & 0 deletions src/net/JNet/Developed/Java/Lang/Iterable.cs
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,8 @@ public class Iterable : JVMBridgeBaseEnumerable<Iterable>, IIterable
/// Default constructor: even if the corresponding Java class does not have one, it is mandatory for JCOBridge
/// </summary>
public Iterable() { }
/// <inheritdoc/>
public Iterable(IJVMBridgeBaseInitializer initializer) : base(initializer) { }
/// <summary>
/// Generic constructor: it is useful for JCOBridge when there is a derived class which needs to pass arguments to the highest JVMBridgeBase class
/// </summary>
Expand Down Expand Up @@ -86,6 +88,8 @@ public class Iterable<T> : MASES.JNet.Specific.JNetAsyncEnumerable<Iterable<T>,
/// Default constructor: even if the corresponding Java class does not have one, it is mandatory for JCOBridge
/// </summary>
public Iterable() { }
/// <inheritdoc/>
public Iterable(IJVMBridgeBaseInitializer initializer) : base(initializer) { }
/// <summary>
/// Generic constructor: it is useful for JCOBridge when there is a derived class which needs to pass arguments to the highest JVMBridgeBase class
/// </summary>
Expand Down
6 changes: 6 additions & 0 deletions src/net/JNet/Developed/Java/Lang/LinkageError.cs
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,12 @@ namespace Java.Lang
/// </summary>
public class LinkageError : Error
{
/// <inheritdoc cref="global::System.Exception()"/>
public LinkageError() { }
/// <inheritdoc cref="global::System.Exception(string)"/>
public LinkageError(string message) : base(message) { }
/// <inheritdoc cref="global::System.Exception(string, global::System.Exception)"/>
public LinkageError(string message, global::System.Exception innerException) : base(message, innerException) { }
/// <inheritdoc />
public override string BridgeClassName => "java.lang.LinkageError";
}
Expand Down
4 changes: 4 additions & 0 deletions src/net/JNet/Developed/Java/Lang/Module.cs
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,10 @@ namespace Java.Lang
/// </summary>
public sealed class Module : JVMBridgeBase<Module>
{
/// <inheritdoc/>
public Module() { }
/// <inheritdoc/>
public Module(IJVMBridgeBaseInitializer initializer) : base(initializer) { }
/// <inheritdoc />
public override string BridgeClassName => "java.lang.Module";
/// <summary>
Expand Down
6 changes: 6 additions & 0 deletions src/net/JNet/Developed/Java/Lang/NoClassDefFoundError.cs
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,12 @@ namespace Java.Lang
/// </summary>
public class NoClassDefFoundError : LinkageError
{
/// <inheritdoc cref="global::System.Exception()"/>
public NoClassDefFoundError() { }
/// <inheritdoc cref="global::System.Exception(string)"/>
public NoClassDefFoundError(string message) : base(message) { }
/// <inheritdoc cref="global::System.Exception(string, global::System.Exception)"/>
public NoClassDefFoundError(string message, global::System.Exception innerException) : base(message, innerException) { }
/// <inheritdoc />
public override string BridgeClassName => "java.lang.NoClassDefFoundError";
}
Expand Down
6 changes: 6 additions & 0 deletions src/net/JNet/Developed/Java/Lang/NoSuchMethodException.cs
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,12 @@ namespace Java.Lang
/// </summary>
public class NoSuchMethodException : ReflectiveOperationException
{
/// <inheritdoc cref="global::System.Exception()"/>
public NoSuchMethodException() { }
/// <inheritdoc cref="global::System.Exception(string)"/>
public NoSuchMethodException(string message) : base(message) { }
/// <inheritdoc cref="global::System.Exception(string, global::System.Exception)"/>
public NoSuchMethodException(string message, global::System.Exception innerException) : base(message, innerException) { }
/// <inheritdoc />
public override string BridgeClassName => "java.lang.NoSuchMethodException";
}
Expand Down
4 changes: 4 additions & 0 deletions src/net/JNet/Developed/Java/Lang/Object.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,10 @@ namespace Java.Lang
/// </summary>
public sealed class Object : JVMBridgeBase<Object>
{
/// <inheritdoc/>
public Object() { }
/// <inheritdoc/>
public Object(IJVMBridgeBaseInitializer initializer) : base(initializer) { }
/// <inheritdoc />
public override string BridgeClassName => "java.lang.Object";
}
Expand Down
4 changes: 4 additions & 0 deletions src/net/JNet/Developed/Java/Lang/Package.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,10 @@ namespace Java.Lang
/// </summary>
public sealed class Package : JVMBridgeBase<Package>
{
/// <inheritdoc/>
public Package() { }
/// <inheritdoc/>
public Package(IJVMBridgeBaseInitializer initializer) : base(initializer) { }
/// <inheritdoc />
public override string BridgeClassName => "java.lang.Package";
/// <summary>
Expand Down
4 changes: 4 additions & 0 deletions src/net/JNet/Developed/Java/Lang/Reflect/AccessibleObject.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,10 @@ namespace Java.Lang.Reflect
#if JNETREFLECTOR
public class AccessibleObject : JVMBridgeBase<AccessibleObject>
{
/// <inheritdoc/>
public AccessibleObject() { }
/// <inheritdoc/>
public AccessibleObject(IJVMBridgeBaseInitializer initializer) : base(initializer) { }
/// <inheritdoc />
public override string BridgeClassName => "java.lang.reflect.AccessibleObject";
/// <summary>
Expand Down
4 changes: 4 additions & 0 deletions src/net/JNet/Developed/Java/Lang/Reflect/AnnotatedElement.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,10 @@ namespace Java.Lang.Reflect
#if JNETREFLECTOR
public class AnnotatedElement : JVMBridgeBase<AnnotatedElement>
{
/// <inheritdoc/>
public AnnotatedElement() { }
/// <inheritdoc/>
public AnnotatedElement(IJVMBridgeBaseInitializer initializer) : base(initializer) { }
/// <inheritdoc />
public override string BridgeClassName => "java.lang.reflect.AnnotatedElement";
/// <inheritdoc />
Expand Down
6 changes: 6 additions & 0 deletions src/net/JNet/Developed/Java/Lang/Reflect/AnnotatedType.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@
* Refer to LICENSE for more information.
*/

using MASES.JCOBridge.C2JBridge;

namespace Java.Lang.Reflect
{
/// <summary>
Expand All @@ -24,6 +26,10 @@ namespace Java.Lang.Reflect
#if JNETREFLECTOR
public class AnnotatedType : AnnotatedElement
{
/// <inheritdoc/>
public AnnotatedType() { }
/// <inheritdoc/>
public AnnotatedType(IJVMBridgeBaseInitializer initializer) : base(initializer) { }
/// <inheritdoc />
public override string BridgeClassName => "java.lang.reflect.AnnotatedType";

Expand Down
10 changes: 10 additions & 0 deletions src/net/JNet/Developed/Java/Lang/Reflect/Constructor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@
* Refer to LICENSE for more information.
*/

using MASES.JCOBridge.C2JBridge;

namespace Java.Lang.Reflect
{
/// <summary>
Expand All @@ -24,6 +26,10 @@ namespace Java.Lang.Reflect
#if JNETREFLECTOR
public class Constructor : Executable
{
/// <inheritdoc/>
public Constructor() { }
/// <inheritdoc/>
public Constructor(IJVMBridgeBaseInitializer initializer) : base(initializer) { }
/// <inheritdoc />
public override string BridgeClassName => "java.lang.reflect.Constructor";
#else
Expand All @@ -37,6 +43,10 @@ public partial class Constructor
/// </summary>
public class Constructor<T> : Constructor
{
/// <inheritdoc/>
public Constructor() { }
/// <inheritdoc/>
public Constructor(IJVMBridgeBaseInitializer initializer) : base(initializer) { }
/// <summary>
/// Uses the constructor represented by this <see cref="Constructor"/> object to create and initialize a new instance of the constructor's declaring class, with the specified initialization parameters.
/// </summary>
Expand Down
6 changes: 6 additions & 0 deletions src/net/JNet/Developed/Java/Lang/Reflect/Executable.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@
* Refer to LICENSE for more information.
*/

using MASES.JCOBridge.C2JBridge;

namespace Java.Lang.Reflect
{
/// <summary>
Expand All @@ -24,6 +26,10 @@ namespace Java.Lang.Reflect
#if JNETREFLECTOR
public class Executable : AccessibleObject
{
/// <inheritdoc/>
public Executable() { }
/// <inheritdoc/>
public Executable(IJVMBridgeBaseInitializer initializer) : base(initializer) { }
/// <inheritdoc />
public override string BridgeClassName => "java.lang.reflect.Executable";
/// <summary>
Expand Down
6 changes: 6 additions & 0 deletions src/net/JNet/Developed/Java/Lang/Reflect/Field.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@
* Refer to LICENSE for more information.
*/

using MASES.JCOBridge.C2JBridge;

namespace Java.Lang.Reflect
{
/// <summary>
Expand All @@ -24,6 +26,10 @@ namespace Java.Lang.Reflect
#if JNETREFLECTOR
public class Field : AccessibleObject
{
/// <inheritdoc/>
public Field() { }
/// <inheritdoc/>
public Field(IJVMBridgeBaseInitializer initializer) : base(initializer) { }
/// <inheritdoc />
public override string BridgeClassName => "java.lang.reflect.Field";
/// <summary>
Expand Down
6 changes: 6 additions & 0 deletions src/net/JNet/Developed/Java/Lang/Reflect/GenericArrayType.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@
* Refer to LICENSE for more information.
*/

using MASES.JCOBridge.C2JBridge;

namespace Java.Lang.Reflect
{
/// <summary>
Expand All @@ -24,6 +26,10 @@ namespace Java.Lang.Reflect
#if JNETREFLECTOR
public class GenericArrayType : Type
{
/// <inheritdoc/>
public GenericArrayType() { }
/// <inheritdoc/>
public GenericArrayType(IJVMBridgeBaseInitializer initializer) : base(initializer) { }
/// <inheritdoc />
public override string BridgeClassName => "java.lang.reflect.GenericArrayType";
/// <summary>
Expand Down
Loading
Loading