Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
4 changes: 3 additions & 1 deletion src/configuration.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,9 @@
{
"ClassName": "org.apache.pdfbox.pdmodel.common.function.type4.Parser$AbstractSyntaxHandler",
"Patterns": [
".*"
"^comment.*",
"^newLine.*",
"^whitespace.*"
]
}
],
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
/*
* Copyright 2024 MASES s.r.l.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
* Refer to LICENSE for more information.
*/

/*
* This file is generated by MASES.JNetReflector (ver. 2.5.11.0)
*/

package org.mases.netpdf.generated.org.apache.pdfbox.pdmodel.common.function.type4;

public final class Parser_AbstractSyntaxHandler extends org.apache.pdfbox.pdmodel.common.function.type4.Parser.AbstractSyntaxHandler implements org.mases.jcobridge.IJCListener {
final org.mases.jcobridge.JCListener _internalListener;

public Parser_AbstractSyntaxHandler(String key) throws org.mases.jcobridge.JCNativeException {
super();
_internalListener = new org.mases.jcobridge.JCListener(key);
}

public synchronized void release() {
_internalListener.release();
}

public synchronized void raiseEvent(String eventName) {
_internalListener.raiseEvent(eventName);
}

public synchronized void raiseEvent(String eventName, Object e) {
_internalListener.raiseEvent(eventName, e);
}

public synchronized void raiseEvent(String eventName, Object e, Object... objects) {
_internalListener.raiseEvent(eventName, e, objects);
}

public Object getEventData() {
return _internalListener.getEventData();
}

public boolean hasExtraData() {
return _internalListener.hasExtraData();
}

public int extraDataLength() {
return _internalListener.extraDataLength();
}

public Object[] extraData() {
return _internalListener.extraData();
}

public Object getReturnData() {
return _internalListener.getReturnData();
}

public void setReturnData(Object retData) {
_internalListener.setReturnData(retData);
}

//@Override
public void token(java.lang.CharSequence arg0) {
org.mases.jnet.developed.JNetEventResult eventDataExchange = new org.mases.jnet.developed.JNetEventResult();
raiseEvent("token", eventDataExchange, arg0); if (!eventDataExchange.getHasOverride()) throw new UnsupportedOperationException("The method shall be implemented in .NET side since does not have a default implementation within the JVM");
}
//@Override
public void tokenBase(java.lang.CharSequence arg0) {
super.token(arg0);
}
//@Override
public void comment(java.lang.CharSequence arg0) {
org.mases.jnet.developed.JNetEventResult eventDataExchange = new org.mases.jnet.developed.JNetEventResult();
raiseEvent("comment", eventDataExchange, arg0); if (!eventDataExchange.getHasOverride()) super.comment(arg0);
}
//@Override
public void commentBase(java.lang.CharSequence arg0) {
super.comment(arg0);
}
//@Override
public void newLine(java.lang.CharSequence arg0) {
org.mases.jnet.developed.JNetEventResult eventDataExchange = new org.mases.jnet.developed.JNetEventResult();
raiseEvent("newLine", eventDataExchange, arg0); if (!eventDataExchange.getHasOverride()) super.newLine(arg0);
}
//@Override
public void newLineBase(java.lang.CharSequence arg0) {
super.newLine(arg0);
}
//@Override
public void whitespace(java.lang.CharSequence arg0) {
org.mases.jnet.developed.JNetEventResult eventDataExchange = new org.mases.jnet.developed.JNetEventResult();
raiseEvent("whitespace", eventDataExchange, arg0); if (!eventDataExchange.getHasOverride()) super.whitespace(arg0);
}
//@Override
public void whitespaceBase(java.lang.CharSequence arg0) {
super.whitespace(arg0);
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -70,25 +70,48 @@ public Parser(params object[] args) : base(args) { }
/// <summary>
/// <see href="https://www.javadoc.io/doc/org.apache.pdfbox/pdfbox/3.0.4/org/apache/pdfbox/pdmodel/common/function/type4/Parser.AbstractSyntaxHandler.html"/>
/// </summary>
public partial class AbstractSyntaxHandler : MASES.JCOBridge.C2JBridge.JVMBridgeBase<AbstractSyntaxHandler>
public partial class AbstractSyntaxHandler : MASES.JCOBridge.C2JBridge.JVMBridgeListener
{
const string _bridgeClassName = "org.apache.pdfbox.pdmodel.common.function.type4.Parser$AbstractSyntaxHandler";
/// <summary>
/// Default constructor: even if the corresponding Java class does not have one, it is mandatory for JCOBridge
/// </summary>
[global::System.Obsolete("AbstractSyntaxHandler class represents, in .NET, an instance of a JVM interface or abstract class. This public initializer is needed for JCOBridge internal use, other uses can produce unidentible behaviors.")]
public AbstractSyntaxHandler() { }
public AbstractSyntaxHandler() { InitializeHandlers(); }

const string _bridgeClassName = "org.mases.netpdf.generated.org.apache.pdfbox.pdmodel.common.function.type4.Parser_AbstractSyntaxHandler";
private static readonly MASES.JCOBridge.C2JBridge.JVMInterop.IJavaType _LocalBridgeClazz = ClazzOf(_bridgeClassName);
private static MASES.JCOBridge.C2JBridge.JVMInterop.IJavaType LocalBridgeClazz => _LocalBridgeClazz ?? throw new global::System.InvalidOperationException($"Class {_bridgeClassName} was not found.");

/// <summary>
/// <see href="https://www.jcobridge.com/api-clr/html/P_MASES_JCOBridge_C2JBridge_JVMBridgeListener_BridgeClassName.htm"/>
/// </summary>
public override string BridgeClassName => _bridgeClassName;


// TODO: complete the class

}
#endregion

#region AbstractSyntaxHandlerDirect declaration
/// <summary>
/// Direct override of <see cref="AbstractSyntaxHandler"/> or its generic type if there is one
/// </summary>
public partial class AbstractSyntaxHandlerDirect : AbstractSyntaxHandler
{
/// <summary>
/// Generic constructor: it is useful for JCOBridge when there is a derived class which needs to pass arguments to the highest JVMBridgeBase class
/// <see href="https://www.jcobridge.com/api-clr/html/P_MASES_JCOBridge_C2JBridge_JVMBridgeListener_AutoInit.htm"/>
/// </summary>
[global::System.Obsolete("AbstractSyntaxHandler class represents, in .NET, an instance of a JVM interface or abstract class. This public initializer is needed for JCOBridge internal use, other uses can produce unidentible behaviors.")]
public AbstractSyntaxHandler(params object[] args) : base(args) { }
public override bool AutoInit => false;

/// <inheritdoc />
protected override void InitializeHandlers() { }

const string _bridgeClassName = "org.apache.pdfbox.pdmodel.common.function.type4.Parser$AbstractSyntaxHandler";
private static readonly MASES.JCOBridge.C2JBridge.JVMInterop.IJavaType _LocalBridgeClazz = JVMBridgeBase.ClazzOf(_bridgeClassName);
private static MASES.JCOBridge.C2JBridge.JVMInterop.IJavaType LocalBridgeClazz => _LocalBridgeClazz ?? throw new global::System.InvalidOperationException($"Class {_bridgeClassName} was not found.");

/// <summary>
/// <see href="https://www.jcobridge.com/api-clr/html/P_MASES_JCOBridge_C2JBridge_JVMBridgeBase_BridgeClassName.htm"/>
/// <see href="https://www.jcobridge.com/api-clr/html/P_MASES_JCOBridge_C2JBridge_JVMBridgeListener_BridgeClassName.htm"/>
/// </summary>
public override string BridgeClassName => _bridgeClassName;
/// <summary>
Expand All @@ -107,9 +130,6 @@ public AbstractSyntaxHandler(params object[] args) : base(args) { }
/// <see href="https://www.jcobridge.com/api-clr/html/P_MASES_JCOBridge_C2JBridge_JVMBridgeBase_IsBridgeStatic.htm"/>
/// </summary>
public override bool IsBridgeStatic => true;

// TODO: complete the class

}
#endregion

Expand Down Expand Up @@ -238,28 +258,151 @@ public partial class AbstractSyntaxHandler

#region Instance methods
/// <summary>
/// Handlers initializer for <see cref="AbstractSyntaxHandler"/>
/// </summary>
protected virtual void InitializeHandlers()
{
AddEventHandler("token", new global::System.EventHandler<CLRListenerEventArgs<CLREventData<MASES.JNet.Specific.JNetEventResult>>>(TokenEventHandler));
AddEventHandler("comment", new global::System.EventHandler<CLRListenerEventArgs<CLREventData<MASES.JNet.Specific.JNetEventResult>>>(CommentEventHandler));
AddEventHandler("newLine", new global::System.EventHandler<CLRListenerEventArgs<CLREventData<MASES.JNet.Specific.JNetEventResult>>>(NewLineEventHandler));
AddEventHandler("whitespace", new global::System.EventHandler<CLRListenerEventArgs<CLREventData<MASES.JNet.Specific.JNetEventResult>>>(WhitespaceEventHandler));

}
/// <summary>
/// <see href="https://www.javadoc.io/doc/org.apache.pdfbox/pdfbox/3.0.4/org/apache/pdfbox/pdmodel/common/function/type4/Parser.SyntaxHandler.html#token-java.lang.CharSequence-"/>
/// </summary>
/// <param name="arg0"><see cref="Java.Lang.CharSequence"/></param>
/// <remarks>The method invokes the default implementation in the JVM interface</remarks>
public void TokenBase(Java.Lang.CharSequence arg0)
{
IExecuteWithSignature("tokenBase", "(Ljava/lang/CharSequence;)V", arg0);
}

/// <summary>
/// Handler for <see href="https://www.javadoc.io/doc/org.apache.pdfbox/pdfbox/3.0.4/org/apache/pdfbox/pdmodel/common/function/type4/Parser.SyntaxHandler.html#token-java.lang.CharSequence-"/>
/// </summary>
/// <remarks>If <see cref="OnToken"/> has a value it takes precedence over corresponding class method</remarks>
public global::System.Action<Java.Lang.CharSequence> OnToken { get; set; } = null;

bool hasOverrideToken = true;
void TokenEventHandler(object sender, CLRListenerEventArgs<CLREventData<MASES.JNet.Specific.JNetEventResult>> data)
{
hasOverrideToken = true;
var methodToExecute = (OnToken != null) ? OnToken : Token;
methodToExecute.Invoke(data.EventData.GetAt<Java.Lang.CharSequence>(0));
data.EventData.TypedEventData.HasOverride = hasOverrideToken;
}

/// <summary>
/// <see href="https://www.javadoc.io/doc/org.apache.pdfbox/pdfbox/3.0.4/org/apache/pdfbox/pdmodel/common/function/type4/Parser.SyntaxHandler.html#token-java.lang.CharSequence-"/>
/// </summary>
/// <param name="arg0"><see cref="Java.Lang.CharSequence"/></param>
/// <remarks>The method invokes the default implementation in the JVM interface using <see cref="TokenBase"/>; override the method to implement a different behavior</remarks>
public virtual void Token(Java.Lang.CharSequence arg0)
{
hasOverrideToken = false;
}
/// <summary>
/// <see href="https://www.javadoc.io/doc/org.apache.pdfbox/pdfbox/3.0.4/org/apache/pdfbox/pdmodel/common/function/type4/Parser.AbstractSyntaxHandler.html#comment-java.lang.CharSequence-"/>
/// </summary>
/// <param name="arg0"><see cref="Java.Lang.CharSequence"/></param>
public void Comment(Java.Lang.CharSequence arg0)
/// <remarks>The method invokes the default implementation in the JVM interface</remarks>
public void CommentBase(Java.Lang.CharSequence arg0)
{
IExecuteWithSignature("comment", "(Ljava/lang/CharSequence;)V", arg0);
IExecuteWithSignature("commentBase", "(Ljava/lang/CharSequence;)V", arg0);
}

/// <summary>
/// Handler for <see href="https://www.javadoc.io/doc/org.apache.pdfbox/pdfbox/3.0.4/org/apache/pdfbox/pdmodel/common/function/type4/Parser.AbstractSyntaxHandler.html#comment-java.lang.CharSequence-"/>
/// </summary>
/// <remarks>If <see cref="OnComment"/> has a value it takes precedence over corresponding class method</remarks>
public global::System.Action<Java.Lang.CharSequence> OnComment { get; set; } = null;

bool hasOverrideComment = true;
void CommentEventHandler(object sender, CLRListenerEventArgs<CLREventData<MASES.JNet.Specific.JNetEventResult>> data)
{
hasOverrideComment = true;
var methodToExecute = (OnComment != null) ? OnComment : Comment;
methodToExecute.Invoke(data.EventData.GetAt<Java.Lang.CharSequence>(0));
data.EventData.TypedEventData.HasOverride = hasOverrideComment;
}

/// <summary>
/// <see href="https://www.javadoc.io/doc/org.apache.pdfbox/pdfbox/3.0.4/org/apache/pdfbox/pdmodel/common/function/type4/Parser.AbstractSyntaxHandler.html#comment-java.lang.CharSequence-"/>
/// </summary>
/// <param name="arg0"><see cref="Java.Lang.CharSequence"/></param>
/// <remarks>The method invokes the default implementation in the JVM interface using <see cref="CommentBase"/>; override the method to implement a different behavior</remarks>
public virtual void Comment(Java.Lang.CharSequence arg0)
{
hasOverrideComment = false;
}
/// <summary>
/// <see href="https://www.javadoc.io/doc/org.apache.pdfbox/pdfbox/3.0.4/org/apache/pdfbox/pdmodel/common/function/type4/Parser.AbstractSyntaxHandler.html#newLine-java.lang.CharSequence-"/>
/// </summary>
/// <param name="arg0"><see cref="Java.Lang.CharSequence"/></param>
public void NewLine(Java.Lang.CharSequence arg0)
/// <remarks>The method invokes the default implementation in the JVM interface</remarks>
public void NewLineBase(Java.Lang.CharSequence arg0)
{
IExecuteWithSignature("newLine", "(Ljava/lang/CharSequence;)V", arg0);
IExecuteWithSignature("newLineBase", "(Ljava/lang/CharSequence;)V", arg0);
}

/// <summary>
/// Handler for <see href="https://www.javadoc.io/doc/org.apache.pdfbox/pdfbox/3.0.4/org/apache/pdfbox/pdmodel/common/function/type4/Parser.AbstractSyntaxHandler.html#newLine-java.lang.CharSequence-"/>
/// </summary>
/// <remarks>If <see cref="OnNewLine"/> has a value it takes precedence over corresponding class method</remarks>
public global::System.Action<Java.Lang.CharSequence> OnNewLine { get; set; } = null;

bool hasOverrideNewLine = true;
void NewLineEventHandler(object sender, CLRListenerEventArgs<CLREventData<MASES.JNet.Specific.JNetEventResult>> data)
{
hasOverrideNewLine = true;
var methodToExecute = (OnNewLine != null) ? OnNewLine : NewLine;
methodToExecute.Invoke(data.EventData.GetAt<Java.Lang.CharSequence>(0));
data.EventData.TypedEventData.HasOverride = hasOverrideNewLine;
}

/// <summary>
/// <see href="https://www.javadoc.io/doc/org.apache.pdfbox/pdfbox/3.0.4/org/apache/pdfbox/pdmodel/common/function/type4/Parser.AbstractSyntaxHandler.html#newLine-java.lang.CharSequence-"/>
/// </summary>
/// <param name="arg0"><see cref="Java.Lang.CharSequence"/></param>
/// <remarks>The method invokes the default implementation in the JVM interface using <see cref="NewLineBase"/>; override the method to implement a different behavior</remarks>
public virtual void NewLine(Java.Lang.CharSequence arg0)
{
hasOverrideNewLine = false;
}
/// <summary>
/// <see href="https://www.javadoc.io/doc/org.apache.pdfbox/pdfbox/3.0.4/org/apache/pdfbox/pdmodel/common/function/type4/Parser.AbstractSyntaxHandler.html#whitespace-java.lang.CharSequence-"/>
/// </summary>
/// <param name="arg0"><see cref="Java.Lang.CharSequence"/></param>
public void Whitespace(Java.Lang.CharSequence arg0)
/// <remarks>The method invokes the default implementation in the JVM interface</remarks>
public void WhitespaceBase(Java.Lang.CharSequence arg0)
{
IExecuteWithSignature("whitespace", "(Ljava/lang/CharSequence;)V", arg0);
IExecuteWithSignature("whitespaceBase", "(Ljava/lang/CharSequence;)V", arg0);
}

/// <summary>
/// Handler for <see href="https://www.javadoc.io/doc/org.apache.pdfbox/pdfbox/3.0.4/org/apache/pdfbox/pdmodel/common/function/type4/Parser.AbstractSyntaxHandler.html#whitespace-java.lang.CharSequence-"/>
/// </summary>
/// <remarks>If <see cref="OnWhitespace"/> has a value it takes precedence over corresponding class method</remarks>
public global::System.Action<Java.Lang.CharSequence> OnWhitespace { get; set; } = null;

bool hasOverrideWhitespace = true;
void WhitespaceEventHandler(object sender, CLRListenerEventArgs<CLREventData<MASES.JNet.Specific.JNetEventResult>> data)
{
hasOverrideWhitespace = true;
var methodToExecute = (OnWhitespace != null) ? OnWhitespace : Whitespace;
methodToExecute.Invoke(data.EventData.GetAt<Java.Lang.CharSequence>(0));
data.EventData.TypedEventData.HasOverride = hasOverrideWhitespace;
}

/// <summary>
/// <see href="https://www.javadoc.io/doc/org.apache.pdfbox/pdfbox/3.0.4/org/apache/pdfbox/pdmodel/common/function/type4/Parser.AbstractSyntaxHandler.html#whitespace-java.lang.CharSequence-"/>
/// </summary>
/// <param name="arg0"><see cref="Java.Lang.CharSequence"/></param>
/// <remarks>The method invokes the default implementation in the JVM interface using <see cref="WhitespaceBase"/>; override the method to implement a different behavior</remarks>
public virtual void Whitespace(Java.Lang.CharSequence arg0)
{
hasOverrideWhitespace = false;
}

#endregion
Expand Down