Package org.ghost4j
Class AbstractRemoteComponent
- java.lang.Object
-
- org.ghost4j.AbstractComponent
-
- org.ghost4j.AbstractRemoteComponent
-
- All Implemented Interfaces:
Component
- Direct Known Subclasses:
AbstractRemoteAnalyzer
,AbstractRemoteConverter
,AbstractRemoteModifier
,AbstractRemoteRenderer
public abstract class AbstractRemoteComponent extends AbstractComponent
Abstract remote converter component. Used as base class for remote components.
-
-
Field Summary
Fields Modifier and Type Field Description private org.slf4j.Logger
logger
Logger used to log messages.protected int
maxProcessCount
Maximum number of parallel processes allowed for the converter.protected int
processCount
Number of parallel processes running.-
Fields inherited from class org.ghost4j.AbstractComponent
supportedDocumentClasses
-
-
Constructor Summary
Constructors Constructor Description AbstractRemoteComponent()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected JavaFork
buildJavaFork()
Create and return a new JavaFork for remote processing.int
getMaxProcessCount()
int
getProcessCount()
protected java.lang.Object
getRemoteComponent(int serverPort, java.lang.Class<?> clazz)
Get a client proxy of a remote componentboolean
isStandAloneModeSupported()
Checks if the current class has a proper 'main' method declared.void
setMaxProcessCount(int maxProcessCount)
protected int
startRemoteServer(JavaFork fork)
Start a remote component server on a Javafork object.void
waitForFreeProcess()
Wait for a process to get free.-
Methods inherited from class org.ghost4j.AbstractComponent
assertDeviceSupported, assertDocumentSupported, copySettings, extractSettings, isDeviceSupported
-
-
-
-
Method Detail
-
waitForFreeProcess
public void waitForFreeProcess()
Wait for a process to get free.
-
isStandAloneModeSupported
public boolean isStandAloneModeSupported()
Checks if the current class has a proper 'main' method declared.- Returns:
- true id 'main' method was found
-
startRemoteServer
protected int startRemoteServer(JavaFork fork) throws java.io.IOException
Start a remote component server on a Javafork object.- Parameters:
fork
- JavaFork used to run the server- Returns:
- Port number used by the server
- Throws:
java.io.IOException
-
getRemoteComponent
protected java.lang.Object getRemoteComponent(int serverPort, java.lang.Class<?> clazz) throws java.lang.Exception
Get a client proxy of a remote component- Parameters:
serverPort
- Server portclazz
- Interface of the proxy- Returns:
- The proxy object
- Throws:
java.lang.Exception
-
buildJavaFork
protected JavaFork buildJavaFork()
Create and return a new JavaFork for remote processing.- Returns:
- A JavaFork
-
getMaxProcessCount
public int getMaxProcessCount()
-
setMaxProcessCount
public void setMaxProcessCount(int maxProcessCount)
-
getProcessCount
public int getProcessCount()
-
-