Class Namespace
java.lang.Object
org.eclipse.milo.opcua.sdk.server.api.ManagedAddressSpace
org.eclipse.milo.opcua.sdk.server.api.ManagedAddressSpaceFragment
org.eclipse.milo.opcua.sdk.server.api.ManagedNamespace
org.eclipse.milo.opcua.sdk.server.api.ManagedNamespaceWithLifecycle
test.de.iip_ecosphere.platform.connectors.opcuav1.simpleMachineNamespace.Namespace
- All Implemented Interfaces:
org.eclipse.milo.opcua.sdk.server.api.AddressSpace,org.eclipse.milo.opcua.sdk.server.api.AddressSpaceFragment,org.eclipse.milo.opcua.sdk.server.api.Namespace,org.eclipse.milo.opcua.sdk.server.api.services.AttributeHistoryServices,org.eclipse.milo.opcua.sdk.server.api.services.AttributeServices,org.eclipse.milo.opcua.sdk.server.api.services.MethodServices,org.eclipse.milo.opcua.sdk.server.api.services.MonitoredItemServices,org.eclipse.milo.opcua.sdk.server.api.services.NodeManagementServices,org.eclipse.milo.opcua.sdk.server.api.services.ViewServices,org.eclipse.milo.opcua.sdk.server.Lifecycle
public class Namespace
extends org.eclipse.milo.opcua.sdk.server.api.ManagedNamespaceWithLifecycle
Implements an OPC namespace for testing. This class is based on the Milo examples.
- Author:
- Holger Eichelberger, SSE
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classNamespace.ReconfigureMethodA method to stop processing (of a virtual machine).classNamespace.StartProcessingMethodA method to stop processing (of a virtual machine).classNamespace.StopProcessingMethodA method to stop processing (of a virtual machine).Nested classes/interfaces inherited from interface org.eclipse.milo.opcua.sdk.server.api.services.AttributeHistoryServices
org.eclipse.milo.opcua.sdk.server.api.services.AttributeHistoryServices.HistoryReadContext, org.eclipse.milo.opcua.sdk.server.api.services.AttributeHistoryServices.HistoryUpdateContextNested classes/interfaces inherited from interface org.eclipse.milo.opcua.sdk.server.api.services.AttributeServices
org.eclipse.milo.opcua.sdk.server.api.services.AttributeServices.ReadContext, org.eclipse.milo.opcua.sdk.server.api.services.AttributeServices.WriteContextNested classes/interfaces inherited from interface org.eclipse.milo.opcua.sdk.server.api.services.MethodServices
org.eclipse.milo.opcua.sdk.server.api.services.MethodServices.CallContextNested classes/interfaces inherited from interface org.eclipse.milo.opcua.sdk.server.api.services.NodeManagementServices
org.eclipse.milo.opcua.sdk.server.api.services.NodeManagementServices.AddNodesContext, org.eclipse.milo.opcua.sdk.server.api.services.NodeManagementServices.AddReferencesContext, org.eclipse.milo.opcua.sdk.server.api.services.NodeManagementServices.DeleteNodesContext, org.eclipse.milo.opcua.sdk.server.api.services.NodeManagementServices.DeleteReferencesContextNested classes/interfaces inherited from interface org.eclipse.milo.opcua.sdk.server.api.services.ViewServices
org.eclipse.milo.opcua.sdk.server.api.services.ViewServices.BrowseContext, org.eclipse.milo.opcua.sdk.server.api.services.ViewServices.RegisterNodesContext, org.eclipse.milo.opcua.sdk.server.api.services.ViewServices.UnregisterNodesContext -
Field Summary
Fields Modifier and Type Field Description private DataTypeDictionaryManagerdictionaryManagerprivate ThreadeventThreadprivate booleankeepPostingEventsprivate org.slf4j.Loggerloggerprivate static org.eclipse.milo.opcua.stack.core.types.structured.ArgumentLOT_SIZEDefines the lot size argument of theNamespace.ReconfigureMethod.private org.eclipse.milo.opcua.sdk.server.nodes.UaVariableNodelotSizeprivate static StringNAME_EVENT_NODEprivate static StringNAME_METHOD_ENDprivate static StringNAME_METHOD_STARTprivate static StringNAME_TOP_FOLDERprivate static StringNAME_VAR_LOT_SIZEprivate static StringNAME_VAR_POWER_CONSUMPTIONprivate static StringNAME_VAR_STRUCTstatic StringNAMESPACE_URIprivate org.eclipse.milo.opcua.sdk.server.nodes.UaVariableNodepowConsumptionstatic StringQNAME_EVENT_NODEstatic StringQNAME_METHOD_ENDstatic StringQNAME_METHOD_STARTstatic StringQNAME_TOP_FOLDERstatic StringQNAME_VAR_LOT_SIZEstatic StringQNAME_VAR_POWER_CONSUMPTIONstatic StringQNAME_VAR_STRUCTprivate org.eclipse.milo.opcua.sdk.server.util.SubscriptionModelsubscriptionModelstatic StringVENDOR_NAME -
Constructor Summary
Constructors Constructor Description Namespace(org.eclipse.milo.opcua.sdk.server.OpcUaServer server)Creates a test namespace. -
Method Summary
Modifier and Type Method Description private voidaddCustomStructTypeVariable(org.eclipse.milo.opcua.sdk.server.nodes.UaFolderNode parent, String name, org.eclipse.milo.opcua.stack.core.types.builtin.ExpandedNodeId type, org.eclipse.milo.opcua.stack.core.types.builtin.ExpandedNodeId encoding, Object value)Adds a variable of a custom type.private voidaddMethod(org.eclipse.milo.opcua.sdk.server.nodes.UaFolderNode parent, String name, String description, MethodCreator<?> creator)Adds a method declaration toparent.private voidcreateAndAddNodes()Creates the nodes for in the namespace.private org.eclipse.milo.opcua.sdk.server.nodes.UaFolderNodecreateFolder(org.eclipse.milo.opcua.sdk.server.nodes.UaFolderNode parent, String name)Creates a folder node.private org.eclipse.milo.opcua.sdk.server.nodes.UaVariableNodecreateVariable(org.eclipse.milo.opcua.sdk.server.nodes.UaFolderNode parent, String name, org.eclipse.milo.opcua.stack.core.types.builtin.NodeId type, org.eclipse.milo.opcua.stack.core.types.builtin.Variant value, com.google.common.collect.ImmutableSet<org.eclipse.milo.opcua.sdk.core.AccessLevel> access)Creates a variable.voidonDataItemsCreated(List<org.eclipse.milo.opcua.sdk.server.api.DataItem> dataItems)voidonDataItemsDeleted(List<org.eclipse.milo.opcua.sdk.server.api.DataItem> dataItems)voidonDataItemsModified(List<org.eclipse.milo.opcua.sdk.server.api.DataItem> dataItems)voidonMonitoringModeChanged(List<org.eclipse.milo.opcua.sdk.server.api.MonitoredItem> monitoredItems)private voidstartBogusEventNotifier()Starts an event notifier.Methods inherited from class org.eclipse.milo.opcua.sdk.server.api.ManagedNamespaceWithLifecycle
getLifecycleManager, registerAddressSpace, registerNodeManager, shutdown, startup, unregisterAddressSpace, unregisterNodeManagerMethods inherited from class org.eclipse.milo.opcua.sdk.server.api.ManagedNamespace
getFilter, getNamespaceIndex, getNamespaceUri, newNodeId, newNodeId, newNodeId, newNodeId, newNodeId, newQualifiedNameMethods inherited from class org.eclipse.milo.opcua.sdk.server.api.ManagedAddressSpace
browse, call, createNodeFactory, getInvocationHandler, getNodeContext, getNodeFactory, getNodeManager, getReferences, getServer, read, registerNodes, unregisterNodes, writeMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.eclipse.milo.opcua.sdk.server.api.services.AttributeHistoryServices
historyRead, historyUpdateMethods inherited from interface org.eclipse.milo.opcua.sdk.server.api.services.AttributeServices
read, writeMethods inherited from interface org.eclipse.milo.opcua.sdk.server.api.services.MonitoredItemServices
onCreateDataItem, onCreateEventItem, onEventItemsCreated, onEventItemsDeleted, onEventItemsModified, onModifyDataItem, onModifyEventItem
-
Field Details
-
NAMESPACE_URI
- See Also:
- Constant Field Values
-
QNAME_TOP_FOLDER
-
QNAME_VAR_LOT_SIZE
-
QNAME_VAR_POWER_CONSUMPTION
-
QNAME_VAR_STRUCT
-
QNAME_EVENT_NODE
-
QNAME_METHOD_START
-
QNAME_METHOD_END
-
VENDOR_NAME
- See Also:
- Constant Field Values
-
NAME_TOP_FOLDER
- See Also:
- Constant Field Values
-
NAME_VAR_LOT_SIZE
- See Also:
- Constant Field Values
-
NAME_VAR_POWER_CONSUMPTION
- See Also:
- Constant Field Values
-
NAME_VAR_STRUCT
- See Also:
- Constant Field Values
-
NAME_EVENT_NODE
- See Also:
- Constant Field Values
-
NAME_METHOD_START
- See Also:
- Constant Field Values
-
NAME_METHOD_END
- See Also:
- Constant Field Values
-
LOT_SIZE
private static final org.eclipse.milo.opcua.stack.core.types.structured.Argument LOT_SIZEDefines the lot size argument of theNamespace.ReconfigureMethod. -
logger
private final org.slf4j.Logger logger -
subscriptionModel
private final org.eclipse.milo.opcua.sdk.server.util.SubscriptionModel subscriptionModel -
dictionaryManager
-
eventThread
-
keepPostingEvents
private volatile boolean keepPostingEvents -
lotSize
private org.eclipse.milo.opcua.sdk.server.nodes.UaVariableNode lotSize -
powConsumption
private org.eclipse.milo.opcua.sdk.server.nodes.UaVariableNode powConsumption
-
-
Constructor Details
-
Namespace
public Namespace(org.eclipse.milo.opcua.sdk.server.OpcUaServer server)Creates a test namespace.- Parameters:
server- the server to create the namespace for
-
-
Method Details
-
createAndAddNodes
private void createAndAddNodes()Creates the nodes for in the namespace. -
createFolder
private org.eclipse.milo.opcua.sdk.server.nodes.UaFolderNode createFolder(org.eclipse.milo.opcua.sdk.server.nodes.UaFolderNode parent, String name)Creates a folder node.- Parameters:
parent- the parent folder (may be null for top-level parent)name- the name of the node (we will just use that also as nodeId, qualified name and localized name)- Returns:
- the created folder node
-
createVariable
private org.eclipse.milo.opcua.sdk.server.nodes.UaVariableNode createVariable(org.eclipse.milo.opcua.sdk.server.nodes.UaFolderNode parent, String name, org.eclipse.milo.opcua.stack.core.types.builtin.NodeId type, org.eclipse.milo.opcua.stack.core.types.builtin.Variant value, com.google.common.collect.ImmutableSet<org.eclipse.milo.opcua.sdk.core.AccessLevel> access)Creates a variable.- Parameters:
parent- the parent folder containing the new variablename- the name of the variable (we will just use that also as nodeId, qualified name and localized name)type- the type of the variablevalue- the initial valueaccess- the access level- Returns:
- the created variable node
-
addMethod
private void addMethod(org.eclipse.milo.opcua.sdk.server.nodes.UaFolderNode parent, String name, String description, MethodCreator<?> creator)Adds a method declaration toparent.- Parameters:
parent- the parent nodename- the name of the methoddescription- a textual description of the methodcreator- the method creator functor
-
addCustomStructTypeVariable
private void addCustomStructTypeVariable(org.eclipse.milo.opcua.sdk.server.nodes.UaFolderNode parent, String name, org.eclipse.milo.opcua.stack.core.types.builtin.ExpandedNodeId type, org.eclipse.milo.opcua.stack.core.types.builtin.ExpandedNodeId encoding, Object value) throws ExceptionAdds a variable of a custom type.- Parameters:
parent- the parent folder containing the new variablename- the name of the variable (we will just use that also as nodeId, qualified name and localized name)type- the type of the variableencoding- the encoding type of the variablevalue- the initial value- Throws:
Exception- in case of a problem (called methods also just throw an Exception)
-
startBogusEventNotifier
private void startBogusEventNotifier()Starts an event notifier. -
onDataItemsCreated
-
onDataItemsModified
-
onDataItemsDeleted
-
onMonitoringModeChanged
public void onMonitoringModeChanged(List<org.eclipse.milo.opcua.sdk.server.api.MonitoredItem> monitoredItems)
-