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.ManagedNamespaceWithLifecycleImplements 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.HistoryUpdateContext
-
Nested 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.WriteContext
-
Nested classes/interfaces inherited from interface org.eclipse.milo.opcua.sdk.server.api.services.MethodServices
org.eclipse.milo.opcua.sdk.server.api.services.MethodServices.CallContext
-
Nested 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.DeleteReferencesContext
-
Nested 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 java.lang.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 java.lang.StringNAME_EVENT_NODEprivate static java.lang.StringNAME_METHOD_ENDprivate static java.lang.StringNAME_METHOD_STARTprivate static java.lang.StringNAME_TOP_FOLDERprivate static java.lang.StringNAME_VAR_LOT_SIZEprivate static java.lang.StringNAME_VAR_POWER_CONSUMPTIONprivate static java.lang.StringNAME_VAR_STRUCTstatic java.lang.StringNAMESPACE_URIprivate org.eclipse.milo.opcua.sdk.server.nodes.UaVariableNodepowConsumptionstatic java.lang.StringQNAME_EVENT_NODEstatic java.lang.StringQNAME_METHOD_ENDstatic java.lang.StringQNAME_METHOD_STARTstatic java.lang.StringQNAME_TOP_FOLDERstatic java.lang.StringQNAME_VAR_LOT_SIZEstatic java.lang.StringQNAME_VAR_POWER_CONSUMPTIONstatic java.lang.StringQNAME_VAR_STRUCTprivate org.eclipse.milo.opcua.sdk.server.util.SubscriptionModelsubscriptionModelstatic java.lang.StringVENDOR_NAME
-
Constructor Summary
Constructors Constructor Description Namespace(org.eclipse.milo.opcua.sdk.server.OpcUaServer server)Creates a test namespace.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidaddCustomStructTypeVariable(org.eclipse.milo.opcua.sdk.server.nodes.UaFolderNode parent, java.lang.String name, org.eclipse.milo.opcua.stack.core.types.builtin.ExpandedNodeId type, org.eclipse.milo.opcua.stack.core.types.builtin.ExpandedNodeId encoding, java.lang.Object value)Adds a variable of a custom type.private voidaddMethod(org.eclipse.milo.opcua.sdk.server.nodes.UaFolderNode parent, java.lang.String name, java.lang.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, java.lang.String name)Creates a folder node.private org.eclipse.milo.opcua.sdk.server.nodes.UaVariableNodecreateVariable(org.eclipse.milo.opcua.sdk.server.nodes.UaFolderNode parent, java.lang.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(java.util.List<org.eclipse.milo.opcua.sdk.server.api.DataItem> dataItems)voidonDataItemsDeleted(java.util.List<org.eclipse.milo.opcua.sdk.server.api.DataItem> dataItems)voidonDataItemsModified(java.util.List<org.eclipse.milo.opcua.sdk.server.api.DataItem> dataItems)voidonMonitoringModeChanged(java.util.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, unregisterNodeManager
-
Methods inherited from class org.eclipse.milo.opcua.sdk.server.api.ManagedNamespace
getFilter, getNamespaceIndex, getNamespaceUri, newNodeId, newNodeId, newNodeId, newNodeId, newNodeId, newQualifiedName
-
Methods inherited from class org.eclipse.milo.opcua.sdk.server.api.ManagedAddressSpace
browse, call, createNodeFactory, getInvocationHandler, getNodeContext, getNodeFactory, getNodeManager, getReferences, getServer, read, registerNodes, unregisterNodes, write
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.eclipse.milo.opcua.sdk.server.api.services.AttributeHistoryServices
historyRead, historyUpdate
-
Methods inherited from interface org.eclipse.milo.opcua.sdk.server.api.services.AttributeServices
read, write
-
Methods inherited from interface org.eclipse.milo.opcua.sdk.server.api.services.MonitoredItemServices
onCreateDataItem, onCreateEventItem, onEventItemsCreated, onEventItemsDeleted, onEventItemsModified, onModifyDataItem, onModifyEventItem
-
-
-
-
Field Detail
-
NAMESPACE_URI
public static final java.lang.String NAMESPACE_URI
- See Also:
- Constant Field Values
-
QNAME_TOP_FOLDER
public static final java.lang.String QNAME_TOP_FOLDER
-
QNAME_VAR_LOT_SIZE
public static final java.lang.String QNAME_VAR_LOT_SIZE
-
QNAME_VAR_POWER_CONSUMPTION
public static final java.lang.String QNAME_VAR_POWER_CONSUMPTION
-
QNAME_VAR_STRUCT
public static final java.lang.String QNAME_VAR_STRUCT
-
QNAME_EVENT_NODE
public static final java.lang.String QNAME_EVENT_NODE
-
QNAME_METHOD_START
public static final java.lang.String QNAME_METHOD_START
-
QNAME_METHOD_END
public static final java.lang.String QNAME_METHOD_END
-
VENDOR_NAME
public static final java.lang.String VENDOR_NAME
- See Also:
- Constant Field Values
-
NAME_TOP_FOLDER
private static final java.lang.String NAME_TOP_FOLDER
- See Also:
- Constant Field Values
-
NAME_VAR_LOT_SIZE
private static final java.lang.String NAME_VAR_LOT_SIZE
- See Also:
- Constant Field Values
-
NAME_VAR_POWER_CONSUMPTION
private static final java.lang.String NAME_VAR_POWER_CONSUMPTION
- See Also:
- Constant Field Values
-
NAME_VAR_STRUCT
private static final java.lang.String NAME_VAR_STRUCT
- See Also:
- Constant Field Values
-
NAME_EVENT_NODE
private static final java.lang.String NAME_EVENT_NODE
- See Also:
- Constant Field Values
-
NAME_METHOD_START
private static final java.lang.String NAME_METHOD_START
- See Also:
- Constant Field Values
-
NAME_METHOD_END
private static final java.lang.String NAME_METHOD_END
- See Also:
- Constant Field Values
-
LOT_SIZE
private static final org.eclipse.milo.opcua.stack.core.types.structured.Argument LOT_SIZE
Defines 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
private final DataTypeDictionaryManager dictionaryManager
-
eventThread
private volatile java.lang.Thread 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
-
-
Method Detail
-
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, java.lang.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, java.lang.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, java.lang.String name, java.lang.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, java.lang.String name, org.eclipse.milo.opcua.stack.core.types.builtin.ExpandedNodeId type, org.eclipse.milo.opcua.stack.core.types.builtin.ExpandedNodeId encoding, java.lang.Object value) throws java.lang.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:
java.lang.Exception- in case of a problem (called methods also just throw an Exception)
-
startBogusEventNotifier
private void startBogusEventNotifier()
Starts an event notifier.
-
onDataItemsCreated
public void onDataItemsCreated(java.util.List<org.eclipse.milo.opcua.sdk.server.api.DataItem> dataItems)
-
onDataItemsModified
public void onDataItemsModified(java.util.List<org.eclipse.milo.opcua.sdk.server.api.DataItem> dataItems)
-
onDataItemsDeleted
public void onDataItemsDeleted(java.util.List<org.eclipse.milo.opcua.sdk.server.api.DataItem> dataItems)
-
onMonitoringModeChanged
public void onMonitoringModeChanged(java.util.List<org.eclipse.milo.opcua.sdk.server.api.MonitoredItem> monitoredItems)
-
-