Engine Connector Interface 1 (ECI1) is an interface for mediate communication of some information between scripting engines and plug-ins.
Scripting engines pass an object implementing this interface to arguments of initialization/finalization methods of plug-ins.
The status of this interface is "FINALIZED".
The specification of this interface had been finalized at 2022/08/31. No modifications will be applied for this interface, excluding documents/comments.
This interface is currently supported by the scripting engine of Vnano. You can use this interface for development of plug-ins of applications equipped with the Vnano engine.
This interface is published under CC0, which is almost the same as the so-called "copyright-free" (domain).
Name | INTERFACE_TYPE_ID |
---|---|
Value | The type ID of this interface (value: "ECI") referred when the plug-in will be loaded. |
Type | static final String |
Name | INTERFACE_GENERATION |
---|---|
Value | The generation of this interface (value: "1"). |
Type | static final String |
Name | hasOptionValue |
---|---|
Signature | boolean hasOptionValue(String optionName) |
Description | Returns whether the engine has the value of the option with the specified name. |
Parameters | optionName: The name of the option. |
Return | Returns true if the engine has the value of the specified option. |
Exception | None |
Name | getOptionValue |
---|---|
Signature | Object getOptionValue(String optionName) |
Description |
Gets the value of the specified option. Before calling this method, check that the value of the specified option exists and is accessible, by hasOptionValue(String optionName) method. |
Parameters | optionName: The name of the option. |
Return | The value of the specified option. |
Exception | ConnectorFatalException (Unchecked): Thrown when the value of the specified option does not exist, or is not accessible. |
Name | requestPermission |
---|---|
Signature | void requestPermission(String permissionName, Object requester, Object metaInformation) throws ConnectorException |
Description |
Requests the specified permission. If the requested permission is allowed, nothing will occur. On the other hand, when the requested permission has been denied, this method throws a ConnectorException. Whether the request will be allowed or denied depends on settings of an application, or decision of its user. Hence, in principle, it is necessary to assume that any request may be denied. So it requires to catch (or rethrow) the exception explicitly. |
Parameters |
permissionName: The name of the permission item to request.
requester: The plug-in requesting the permission. metaInformation: The information to be notified to the user (especially when the current value of the permission is set to "ASK"). |
Return | None |
Exception | ConnectorException: Thrown when the requested permission has been denied. |
Name | isOtherEngineConnectorAvailable |
---|---|
Signature | boolean isOtherEngineConnectorAvailable(Class<?> engineConnectorClass) |
Description | Returns whether the other type of engine connector is available. |
Parameters | engineConnectorClass: The class of the engine connector you want to use. |
Return | Returns true if the specified engine connector is available. |
Exception | None |
Name | getOtherEngineConnector |
---|---|
Signature | <T> T getOtherEngineConnector(Class<T> engineConnectorClass) |
Description |
Gets the other type of engine connector. Before calling this method, check that the specified type of the engine connector is available, by isOtherEngineConnectorAvailable(Class<?> engineConnectorClass) method. |
Parameters | engineConnectorClass: The class of the engine connector you want to use. |
Return | The specified type of engine connector. |
Exception | ConnectorFatalException (Unchecked): Thrown if the specified engine connector is not available. |