├── opc-ua-sdk ├── sdk-tests │ └── src │ │ └── test │ │ └── resources │ │ ├── example-certs.pfx │ │ └── test-identity.pfx ├── findbugs-exclude.xml ├── sdk-server │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── eclipse │ │ │ └── milo │ │ │ └── opcua │ │ │ └── sdk │ │ │ └── server │ │ │ ├── model │ │ │ └── types │ │ │ │ ├── objects │ │ │ │ ├── FolderType.java │ │ │ │ ├── InitialStateType.java │ │ │ │ ├── CertificateType.java │ │ │ │ ├── SystemEventType.java │ │ │ │ ├── TripAlarmType.java │ │ │ │ ├── DataTypeSystemType.java │ │ │ │ ├── DiscreteAlarmType.java │ │ │ │ ├── AggregateFunctionType.java │ │ │ │ ├── AuditUpdateEventType.java │ │ │ │ ├── DataTypeEncodingType.java │ │ │ │ ├── HttpsCertificateType.java │ │ │ │ ├── RefreshEndEventType.java │ │ │ │ ├── RefreshStartEventType.java │ │ │ │ ├── VendorServerInfoType.java │ │ │ │ ├── AuditSecurityEventType.java │ │ │ │ ├── BaseConditionClassType.java │ │ │ │ ├── BaseModelChangeEventType.java │ │ │ │ ├── DeviceFailureEventType.java │ │ │ │ ├── ApplicationCertificateType.java │ │ │ │ ├── EventQueueOverflowEventType.java │ │ │ │ ├── RefreshRequiredEventType.java │ │ │ │ ├── SystemOffNormalAlarmType.java │ │ │ │ ├── AuditConditionEventType.java │ │ │ │ ├── AuditNodeManagementEventType.java │ │ │ │ ├── ExclusiveLevelAlarmType.java │ │ │ │ ├── ProcessConditionClassType.java │ │ │ │ ├── SystemConditionClassType.java │ │ │ │ ├── AuditConditionEnableEventType.java │ │ │ │ ├── MaintenanceConditionClassType.java │ │ │ │ ├── NonExclusiveLevelAlarmType.java │ │ │ │ ├── ExclusiveRateOfChangeAlarmType.java │ │ │ │ ├── TrustListUpdatedAuditEventType.java │ │ │ │ ├── AuditCertificateExpiredEventType.java │ │ │ │ ├── AuditCertificateInvalidEventType.java │ │ │ │ ├── AuditCertificateMismatchEventType.java │ │ │ │ ├── AuditCertificateRevokedEventType.java │ │ │ │ ├── NonExclusiveRateOfChangeAlarmType.java │ │ │ │ ├── RsaMinApplicationCertificateType.java │ │ │ │ ├── AuditCertificateUntrustedEventType.java │ │ │ │ ├── RsaSha256ApplicationCertificateType.java │ │ │ │ ├── BaseObjectType.java │ │ │ │ ├── NamespacesType.java │ │ │ │ ├── AddressSpaceFileType.java │ │ │ │ ├── CertificateGroupFolderType.java │ │ │ │ ├── FileDirectoryType.java │ │ │ │ ├── ProgramTransitionAuditEventType.java │ │ │ │ ├── ExclusiveLimitAlarmType.java │ │ │ │ ├── ExclusiveLimitStateMachineType.java │ │ │ │ ├── StateMachineType.java │ │ │ │ ├── FiniteStateMachineType.java │ │ │ │ ├── AuditSessionEventType.java │ │ │ │ ├── OffNormalAlarmType.java │ │ │ │ ├── AuditUrlMismatchEventType.java │ │ │ │ ├── AuditHistoryDeleteEventType.java │ │ │ │ ├── ExclusiveDeviationAlarmType.java │ │ │ │ └── AuditChannelEventType.java │ │ │ │ └── variables │ │ │ │ ├── PropertyType.java │ │ │ │ ├── DiscreteItemType.java │ │ │ │ ├── BaseDataVariableType.java │ │ │ │ ├── ServerVendorCapabilityType.java │ │ │ │ ├── BaseVariableType.java │ │ │ │ ├── SessionDiagnosticsArrayType.java │ │ │ │ ├── SubscriptionDiagnosticsArrayType.java │ │ │ │ ├── SessionSecurityDiagnosticsArrayType.java │ │ │ │ ├── SamplingIntervalDiagnosticsArrayType.java │ │ │ │ ├── FiniteStateVariableType.java │ │ │ │ ├── FiniteTransitionVariableType.java │ │ │ │ └── ConditionVariableType.java │ │ │ ├── UaNodeManager.java │ │ │ ├── Lifecycle.java │ │ │ ├── events │ │ │ ├── FilterContext.java │ │ │ ├── ValidationException.java │ │ │ └── OperatorContext.java │ │ │ ├── api │ │ │ ├── EventItem.java │ │ │ ├── nodes │ │ │ │ ├── ViewNode.java │ │ │ │ ├── ReferenceTypeNode.java │ │ │ │ ├── ObjectTypeNode.java │ │ │ │ ├── ObjectNode.java │ │ │ │ └── VariableTypeNode.java │ │ │ ├── AccessContext.java │ │ │ ├── Namespace.java │ │ │ ├── AddressSpace.java │ │ │ ├── EventManager.java │ │ │ └── DataItem.java │ │ │ ├── annotations │ │ │ ├── UaMethod.java │ │ │ ├── UaInputArgument.java │ │ │ └── UaOutputArgument.java │ │ │ ├── services │ │ │ └── ServiceAttributes.java │ │ │ ├── nodes │ │ │ ├── AttributeObserver.java │ │ │ ├── delegates │ │ │ │ └── AttributeDelegateChain.java │ │ │ └── UaNodeContext.java │ │ │ ├── namespaces │ │ │ └── loader │ │ │ │ └── UaViewLoader.java │ │ │ └── util │ │ │ ├── PendingRead.java │ │ │ └── PendingWrite.java │ │ └── test │ │ └── java │ │ └── org │ │ └── eclipse │ │ └── milo │ │ └── opcua │ │ └── sdk │ │ ├── core │ │ └── CefactEngineeringUnitsTest.java │ │ └── server │ │ ├── util │ │ └── HostnameUtilTest.java │ │ └── events │ │ └── conversions │ │ ├── LocalizedTextConversionsTest.java │ │ └── ImplicitConversionsTest.java ├── sdk-client │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── eclipse │ │ └── milo │ │ └── opcua │ │ └── sdk │ │ └── client │ │ ├── model │ │ ├── types │ │ │ ├── objects │ │ │ │ ├── FolderType.java │ │ │ │ ├── InitialStateType.java │ │ │ │ ├── CertificateType.java │ │ │ │ ├── FileDirectoryType.java │ │ │ │ ├── SystemEventType.java │ │ │ │ ├── TripAlarmType.java │ │ │ │ ├── AddressSpaceFileType.java │ │ │ │ ├── DataTypeSystemType.java │ │ │ │ ├── DiscreteAlarmType.java │ │ │ │ ├── AggregateFunctionType.java │ │ │ │ ├── AuditUpdateEventType.java │ │ │ │ ├── DataTypeEncodingType.java │ │ │ │ ├── HttpsCertificateType.java │ │ │ │ ├── RefreshEndEventType.java │ │ │ │ ├── RefreshStartEventType.java │ │ │ │ ├── VendorServerInfoType.java │ │ │ │ ├── AuditSecurityEventType.java │ │ │ │ ├── BaseConditionClassType.java │ │ │ │ ├── BaseModelChangeEventType.java │ │ │ │ ├── DeviceFailureEventType.java │ │ │ │ ├── ApplicationCertificateType.java │ │ │ │ ├── EventQueueOverflowEventType.java │ │ │ │ ├── RefreshRequiredEventType.java │ │ │ │ ├── SystemOffNormalAlarmType.java │ │ │ │ ├── AuditConditionEventType.java │ │ │ │ ├── AuditNodeManagementEventType.java │ │ │ │ ├── ExclusiveLevelAlarmType.java │ │ │ │ ├── ProcessConditionClassType.java │ │ │ │ ├── SystemConditionClassType.java │ │ │ │ ├── AuditConditionEnableEventType.java │ │ │ │ ├── MaintenanceConditionClassType.java │ │ │ │ ├── NonExclusiveLevelAlarmType.java │ │ │ │ ├── ExclusiveRateOfChangeAlarmType.java │ │ │ │ ├── TrustListUpdatedAuditEventType.java │ │ │ │ ├── AuditCertificateExpiredEventType.java │ │ │ │ ├── AuditCertificateInvalidEventType.java │ │ │ │ ├── AuditCertificateMismatchEventType.java │ │ │ │ ├── AuditCertificateRevokedEventType.java │ │ │ │ ├── NonExclusiveRateOfChangeAlarmType.java │ │ │ │ ├── RsaMinApplicationCertificateType.java │ │ │ │ ├── AuditCertificateUntrustedEventType.java │ │ │ │ ├── RsaSha256ApplicationCertificateType.java │ │ │ │ ├── BaseObjectType.java │ │ │ │ ├── NamespacesType.java │ │ │ │ ├── CertificateGroupFolderType.java │ │ │ │ ├── ProgramTransitionAuditEventType.java │ │ │ │ ├── ExclusiveLimitAlarmType.java │ │ │ │ └── ExclusiveLimitStateMachineType.java │ │ │ └── variables │ │ │ │ ├── PropertyType.java │ │ │ │ ├── DiscreteItemType.java │ │ │ │ ├── BaseDataVariableType.java │ │ │ │ ├── ServerVendorCapabilityType.java │ │ │ │ ├── BaseVariableType.java │ │ │ │ ├── SessionDiagnosticsArrayType.java │ │ │ │ ├── SubscriptionDiagnosticsArrayType.java │ │ │ │ ├── SessionSecurityDiagnosticsArrayType.java │ │ │ │ └── SamplingIntervalDiagnosticsArrayType.java │ │ └── nodes │ │ │ ├── objects │ │ │ ├── FolderNode.java │ │ │ ├── TripAlarmNode.java │ │ │ ├── CertificateNode.java │ │ │ ├── InitialStateNode.java │ │ │ ├── SystemEventNode.java │ │ │ ├── FileDirectoryNode.java │ │ │ ├── DataTypeSystemNode.java │ │ │ ├── DiscreteAlarmNode.java │ │ │ ├── AddressSpaceFileNode.java │ │ │ ├── RefreshEndEventNode.java │ │ │ ├── AuditUpdateEventNode.java │ │ │ ├── DataTypeEncodingNode.java │ │ │ ├── HttpsCertificateNode.java │ │ │ ├── VendorServerInfoNode.java │ │ │ ├── AggregateFunctionNode.java │ │ │ ├── RefreshStartEventNode.java │ │ │ ├── AuditSecurityEventNode.java │ │ │ ├── BaseConditionClassNode.java │ │ │ ├── DeviceFailureEventNode.java │ │ │ ├── BaseModelChangeEventNode.java │ │ │ ├── RefreshRequiredEventNode.java │ │ │ ├── AuditConditionEventNode.java │ │ │ ├── ExclusiveLevelAlarmNode.java │ │ │ ├── SystemConditionClassNode.java │ │ │ ├── SystemOffNormalAlarmNode.java │ │ │ ├── ApplicationCertificateNode.java │ │ │ ├── ProcessConditionClassNode.java │ │ │ ├── BaseObjectNode.java │ │ │ ├── EventQueueOverflowEventNode.java │ │ │ ├── AuditNodeManagementEventNode.java │ │ │ ├── NonExclusiveLevelAlarmNode.java │ │ │ ├── MaintenanceConditionClassNode.java │ │ │ ├── AuditConditionEnableEventNode.java │ │ │ ├── ExclusiveRateOfChangeAlarmNode.java │ │ │ ├── TrustListUpdatedAuditEventNode.java │ │ │ ├── AuditCertificateExpiredEventNode.java │ │ │ ├── AuditCertificateInvalidEventNode.java │ │ │ ├── AuditCertificateRevokedEventNode.java │ │ │ ├── RsaMinApplicationCertificateNode.java │ │ │ ├── AuditCertificateMismatchEventNode.java │ │ │ ├── NonExclusiveRateOfChangeAlarmNode.java │ │ │ ├── AuditCertificateUntrustedEventNode.java │ │ │ ├── RsaSha256ApplicationCertificateNode.java │ │ │ └── NamespacesNode.java │ │ │ └── variables │ │ │ ├── PropertyNode.java │ │ │ ├── DiscreteItemNode.java │ │ │ ├── BaseDataVariableNode.java │ │ │ ├── ServerVendorCapabilityNode.java │ │ │ └── BaseVariableNode.java │ │ ├── session │ │ └── State.java │ │ ├── api │ │ ├── ServiceFaultListener.java │ │ ├── NodeCache.java │ │ └── identity │ │ │ └── SignedIdentityToken.java │ │ └── SessionActivityListener.java └── sdk-core │ ├── src │ └── main │ │ └── java │ │ └── org │ │ └── eclipse │ │ └── milo │ │ └── opcua │ │ └── sdk │ │ └── core │ │ ├── ValueRanks.java │ │ ├── ValueRank.java │ │ └── util │ │ └── StreamUtil.java │ └── pom.xml ├── opc-ua-stack ├── stack-tests │ └── src │ │ └── test │ │ └── resources │ │ ├── test-keystore.pfx │ │ └── simplelogger.properties ├── stack-client │ └── src │ │ └── main │ │ └── resources │ │ └── example-keystore.pfx ├── findbugs-exclude.xml ├── stack-core │ └── src │ │ ├── test │ │ ├── resources │ │ │ └── org │ │ │ │ └── eclipse │ │ │ │ └── milo │ │ │ │ └── opcua │ │ │ │ └── stack │ │ │ │ └── core │ │ │ │ └── util │ │ │ │ └── validation-certs.pfx │ │ └── java │ │ │ └── org │ │ │ └── eclipse │ │ │ └── milo │ │ │ └── opcua │ │ │ └── stack │ │ │ ├── core │ │ │ ├── types │ │ │ │ ├── BuiltinDataTypeDictionaryTest.java │ │ │ │ └── builtin │ │ │ │ │ └── QualifiedNameTest.java │ │ │ ├── AttributeIdTest.java │ │ │ ├── security │ │ │ │ └── DefaultCertificateManagerTest.java │ │ │ └── serialization │ │ │ │ ├── TestSerializationContext.java │ │ │ │ └── binary │ │ │ │ └── StringSerializationTest.java │ │ │ └── SerializationFixture2.java │ │ └── main │ │ └── java │ │ └── org │ │ └── eclipse │ │ └── milo │ │ └── opcua │ │ └── stack │ │ └── core │ │ ├── util │ │ ├── annotations │ │ │ ├── UBytePrimitive.java │ │ │ ├── UInt16Primitive.java │ │ │ ├── UInt64Primitive.java │ │ │ ├── UInt32Primitive.java │ │ │ └── Description.java │ │ ├── Unit.java │ │ └── Namespaces.java │ │ ├── serialization │ │ ├── UaEnumeration.java │ │ ├── UaSerializable.java │ │ ├── UaMessage.java │ │ ├── UaRequestMessage.java │ │ ├── UaResponseMessage.java │ │ └── UaStructure.java │ │ ├── UaSerializationException.java │ │ ├── channel │ │ └── MessageAbortedException.java │ │ ├── types │ │ ├── builtin │ │ │ └── unsigned │ │ │ │ └── UNumber.java │ │ └── DataTypeEncoding.java │ │ └── UaServiceFaultException.java ├── stack-server │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── eclipse │ │ └── milo │ │ └── opcua │ │ └── stack │ │ └── server │ │ └── services │ │ ├── ServiceRequestHandler.java │ │ ├── MethodServiceSet.java │ │ ├── AttributeServiceSet.java │ │ ├── QueryServiceSet.java │ │ ├── AttributeHistoryServiceSet.java │ │ └── DiscoveryServiceSet.java └── bsd-parser │ ├── pom.xml │ ├── bsd-parser-core │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── eclipse │ │ └── milo │ │ └── opcua │ │ └── binaryschema │ │ ├── parser │ │ └── CodecDescription.java │ │ └── GenericBsdParser.java │ └── bsd-parser-gson │ └── src │ └── main │ └── java │ └── org │ └── eclipse │ └── milo │ └── opcua │ └── binaryschema │ └── gson │ └── JsonBsdParser.java ├── .gitignore ├── SECURITY.md └── milo-examples ├── client-examples ├── README.md └── src │ └── main │ ├── resources │ └── logback.xml │ └── java │ └── org │ └── eclipse │ └── milo │ └── examples │ └── client │ └── EventSubscriptionExampleProsys.java └── server-examples └── src └── main └── resources └── logback.xml /opc-ua-sdk/sdk-tests/src/test/resources/example-certs.pfx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/milo/master/opc-ua-sdk/sdk-tests/src/test/resources/example-certs.pfx -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-tests/src/test/resources/test-identity.pfx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/milo/master/opc-ua-sdk/sdk-tests/src/test/resources/test-identity.pfx -------------------------------------------------------------------------------- /opc-ua-stack/stack-tests/src/test/resources/test-keystore.pfx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/milo/master/opc-ua-stack/stack-tests/src/test/resources/test-keystore.pfx -------------------------------------------------------------------------------- /opc-ua-stack/stack-client/src/main/resources/example-keystore.pfx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/milo/master/opc-ua-stack/stack-client/src/main/resources/example-keystore.pfx -------------------------------------------------------------------------------- /opc-ua-sdk/findbugs-exclude.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /opc-ua-stack/findbugs-exclude.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/FolderType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface FolderType extends BaseObjectType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/InitialStateType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface InitialStateType extends StateType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/CertificateType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface CertificateType extends BaseObjectType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/SystemEventType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface SystemEventType extends BaseEventType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/TripAlarmType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface TripAlarmType extends OffNormalAlarmType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/DataTypeSystemType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface DataTypeSystemType extends BaseObjectType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/DiscreteAlarmType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface DiscreteAlarmType extends AlarmConditionType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/test/resources/org/eclipse/milo/opcua/stack/core/util/validation-certs.pfx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drFabio/milo/master/opc-ua-stack/stack-core/src/test/resources/org/eclipse/milo/opcua/stack/core/util/validation-certs.pfx -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/AggregateFunctionType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface AggregateFunctionType extends BaseObjectType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/AuditUpdateEventType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface AuditUpdateEventType extends AuditEventType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/DataTypeEncodingType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface DataTypeEncodingType extends BaseObjectType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/HttpsCertificateType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface HttpsCertificateType extends CertificateType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/RefreshEndEventType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface RefreshEndEventType extends SystemEventType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/RefreshStartEventType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface RefreshStartEventType extends SystemEventType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/VendorServerInfoType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface VendorServerInfoType extends BaseObjectType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/AuditSecurityEventType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface AuditSecurityEventType extends AuditEventType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/BaseConditionClassType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface BaseConditionClassType extends BaseObjectType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/BaseModelChangeEventType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface BaseModelChangeEventType extends BaseEventType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/DeviceFailureEventType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface DeviceFailureEventType extends SystemEventType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/ApplicationCertificateType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface ApplicationCertificateType extends CertificateType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/EventQueueOverflowEventType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface EventQueueOverflowEventType extends BaseEventType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/RefreshRequiredEventType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface RefreshRequiredEventType extends SystemEventType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/SystemOffNormalAlarmType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface SystemOffNormalAlarmType extends OffNormalAlarmType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/AuditConditionEventType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface AuditConditionEventType extends AuditUpdateMethodEventType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/AuditNodeManagementEventType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface AuditNodeManagementEventType extends AuditEventType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/ExclusiveLevelAlarmType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface ExclusiveLevelAlarmType extends ExclusiveLimitAlarmType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/ProcessConditionClassType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface ProcessConditionClassType extends BaseConditionClassType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/SystemConditionClassType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface SystemConditionClassType extends BaseConditionClassType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/AuditConditionEnableEventType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface AuditConditionEnableEventType extends AuditConditionEventType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/MaintenanceConditionClassType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface MaintenanceConditionClassType extends BaseConditionClassType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/NonExclusiveLevelAlarmType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface NonExclusiveLevelAlarmType extends NonExclusiveLimitAlarmType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/ExclusiveRateOfChangeAlarmType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface ExclusiveRateOfChangeAlarmType extends ExclusiveLimitAlarmType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/TrustListUpdatedAuditEventType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface TrustListUpdatedAuditEventType extends AuditUpdateMethodEventType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/AuditCertificateExpiredEventType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface AuditCertificateExpiredEventType extends AuditCertificateEventType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/AuditCertificateInvalidEventType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface AuditCertificateInvalidEventType extends AuditCertificateEventType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/AuditCertificateMismatchEventType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface AuditCertificateMismatchEventType extends AuditCertificateEventType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/AuditCertificateRevokedEventType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface AuditCertificateRevokedEventType extends AuditCertificateEventType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/NonExclusiveRateOfChangeAlarmType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface NonExclusiveRateOfChangeAlarmType extends NonExclusiveLimitAlarmType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/RsaMinApplicationCertificateType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface RsaMinApplicationCertificateType extends ApplicationCertificateType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/AuditCertificateUntrustedEventType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface AuditCertificateUntrustedEventType extends AuditCertificateEventType { 4 | } 5 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/RsaSha256ApplicationCertificateType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | public interface RsaSha256ApplicationCertificateType extends ApplicationCertificateType { 4 | } 5 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.class 2 | 3 | # Package Files # 4 | *.jar 5 | *.war 6 | *.ear 7 | 8 | # Eclipse 9 | .settings/ 10 | .project 11 | .classpath 12 | .checkstyle 13 | 14 | # IntelliJ # 15 | *.iml 16 | .idea/* 17 | 18 | # Maven # 19 | target/ 20 | dependency-reduced-pom.xml 21 | 22 | # TestNG # 23 | test-output/ -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/BaseObjectType.java: -------------------------------------------------------------------------------- 1 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 2 | 3 | import org.eclipse.milo.opcua.sdk.server.api.nodes.ObjectNode; 4 | 5 | public interface BaseObjectType extends ObjectNode { 6 | } 7 | -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- 1 | # Security Policy 2 | 3 | ## Supported Versions 4 | 5 | | Version | Supported | 6 | | ------- | ------------------ | 7 | | 0.3.x | :white_check_mark: | 8 | | 0.2.x | :x: | 9 | | 0.1.x | :x: | 10 | 11 | ## Reporting a Vulnerability 12 | 13 | https://www.eclipse.org/security/ 14 | -------------------------------------------------------------------------------- /milo-examples/client-examples/README.md: -------------------------------------------------------------------------------- 1 | # Eclipse Milo client examples 2 | 3 | To run the examples in this project, do the following steps: 4 | 5 | 1. Import the project into your IDE of choice 6 | 7 | 2. Run any of the ClientExample implementations 8 | 9 | Note: When you run the clients, it takes care of starting a local Milo server, so you do not have to have a server up and running! -------------------------------------------------------------------------------- /milo-examples/client-examples/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /milo-examples/server-examples/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/main/java/org/eclipse/milo/opcua/stack/core/util/annotations/UBytePrimitive.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.util.annotations; 12 | 13 | public @interface UBytePrimitive { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/main/java/org/eclipse/milo/opcua/stack/core/util/annotations/UInt16Primitive.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.util.annotations; 12 | 13 | public @interface UInt16Primitive { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/main/java/org/eclipse/milo/opcua/stack/core/util/annotations/UInt64Primitive.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.util.annotations; 12 | 13 | public @interface UInt64Primitive { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/main/java/org/eclipse/milo/opcua/stack/core/util/annotations/UInt32Primitive.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.util.annotations; 12 | 13 | public @interface UInt32Primitive { 14 | 15 | } 16 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/FolderType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface FolderType extends BaseObjectType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/InitialStateType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface InitialStateType extends StateType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/CertificateType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface CertificateType extends BaseObjectType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/FileDirectoryType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface FileDirectoryType extends FolderType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/SystemEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface SystemEventType extends BaseEventType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/TripAlarmType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface TripAlarmType extends OffNormalAlarmType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/variables/PropertyType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.variables; 12 | 13 | public interface PropertyType extends BaseVariableType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/variables/PropertyType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.variables; 12 | 13 | public interface PropertyType extends BaseVariableType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/AddressSpaceFileType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface AddressSpaceFileType extends FileType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/DataTypeSystemType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface DataTypeSystemType extends BaseObjectType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/DiscreteAlarmType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface DiscreteAlarmType extends AlarmConditionType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/variables/DiscreteItemType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.variables; 12 | 13 | public interface DiscreteItemType extends DataItemType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/variables/DiscreteItemType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.variables; 12 | 13 | public interface DiscreteItemType extends DataItemType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/AggregateFunctionType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface AggregateFunctionType extends BaseObjectType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/AuditUpdateEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface AuditUpdateEventType extends AuditEventType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/DataTypeEncodingType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface DataTypeEncodingType extends BaseObjectType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/HttpsCertificateType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface HttpsCertificateType extends CertificateType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/RefreshEndEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface RefreshEndEventType extends SystemEventType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/RefreshStartEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface RefreshStartEventType extends SystemEventType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/VendorServerInfoType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface VendorServerInfoType extends BaseObjectType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/AuditSecurityEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface AuditSecurityEventType extends AuditEventType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/BaseConditionClassType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface BaseConditionClassType extends BaseObjectType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/BaseModelChangeEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface BaseModelChangeEventType extends BaseEventType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/DeviceFailureEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface DeviceFailureEventType extends SystemEventType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/variables/BaseDataVariableType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.variables; 12 | 13 | public interface BaseDataVariableType extends BaseVariableType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/variables/BaseDataVariableType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.variables; 12 | 13 | public interface BaseDataVariableType extends BaseVariableType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/ApplicationCertificateType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface ApplicationCertificateType extends CertificateType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/EventQueueOverflowEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface EventQueueOverflowEventType extends BaseEventType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/RefreshRequiredEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface RefreshRequiredEventType extends SystemEventType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/SystemOffNormalAlarmType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface SystemOffNormalAlarmType extends OffNormalAlarmType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/main/java/org/eclipse/milo/opcua/stack/core/serialization/UaEnumeration.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.serialization; 12 | 13 | public interface UaEnumeration extends UaSerializable { 14 | 15 | int getValue(); 16 | 17 | } 18 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/AuditConditionEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface AuditConditionEventType extends AuditUpdateMethodEventType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/AuditNodeManagementEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface AuditNodeManagementEventType extends AuditEventType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/ExclusiveLevelAlarmType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface ExclusiveLevelAlarmType extends ExclusiveLimitAlarmType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/ProcessConditionClassType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface ProcessConditionClassType extends BaseConditionClassType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/SystemConditionClassType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface SystemConditionClassType extends BaseConditionClassType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/variables/ServerVendorCapabilityType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.variables; 12 | 13 | public interface ServerVendorCapabilityType extends BaseDataVariableType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/variables/ServerVendorCapabilityType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.variables; 12 | 13 | public interface ServerVendorCapabilityType extends BaseDataVariableType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/AuditConditionEnableEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface AuditConditionEnableEventType extends AuditConditionEventType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/MaintenanceConditionClassType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface MaintenanceConditionClassType extends BaseConditionClassType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/NonExclusiveLevelAlarmType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface NonExclusiveLevelAlarmType extends NonExclusiveLimitAlarmType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/ExclusiveRateOfChangeAlarmType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface ExclusiveRateOfChangeAlarmType extends ExclusiveLimitAlarmType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/TrustListUpdatedAuditEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface TrustListUpdatedAuditEventType extends AuditUpdateMethodEventType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/main/java/org/eclipse/milo/opcua/stack/core/serialization/UaSerializable.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.serialization; 12 | 13 | /** 14 | * Super-interface for non-builtin serializable types. 15 | */ 16 | public interface UaSerializable { 17 | } 18 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/AuditCertificateExpiredEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface AuditCertificateExpiredEventType extends AuditCertificateEventType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/AuditCertificateInvalidEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface AuditCertificateInvalidEventType extends AuditCertificateEventType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/AuditCertificateMismatchEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface AuditCertificateMismatchEventType extends AuditCertificateEventType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/AuditCertificateRevokedEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface AuditCertificateRevokedEventType extends AuditCertificateEventType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/NonExclusiveRateOfChangeAlarmType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface NonExclusiveRateOfChangeAlarmType extends NonExclusiveLimitAlarmType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/RsaMinApplicationCertificateType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface RsaMinApplicationCertificateType extends ApplicationCertificateType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/AuditCertificateUntrustedEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface AuditCertificateUntrustedEventType extends AuditCertificateEventType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/RsaSha256ApplicationCertificateType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | public interface RsaSha256ApplicationCertificateType extends ApplicationCertificateType { 14 | } 15 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-tests/src/test/resources/simplelogger.properties: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (c) 2016 Kevin Herron 3 | # 4 | # All rights reserved. This program and the accompanying materials 5 | # are made available under the terms of the Eclipse Public License v1.0 6 | # and Eclipse Distribution License v1.0 which accompany this distribution. 7 | # 8 | # The Eclipse Public License is available at 9 | # http://www.eclipse.org/legal/epl-v10.html 10 | # and the Eclipse Distribution License is available at 11 | # http://www.eclipse.org/org/documents/edl-v10.html. 12 | # 13 | org.slf4j.simpleLogger.defaultLogLevel=info 14 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/NamespacesType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 12 | 13 | public interface NamespacesType extends BaseObjectType { 14 | AddressSpaceFileType getAddressSpaceFileNode(); 15 | } 16 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/BaseObjectType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.api.nodes.ObjectNode; 14 | 15 | public interface BaseObjectType extends ObjectNode { 16 | } 17 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/variables/BaseVariableType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.variables; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.api.nodes.VariableNode; 14 | 15 | public interface BaseVariableType extends VariableNode { 16 | } 17 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/variables/BaseVariableType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.variables; 12 | 13 | import org.eclipse.milo.opcua.sdk.server.api.nodes.VariableNode; 14 | 15 | public interface BaseVariableType extends VariableNode { 16 | } 17 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/session/State.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.session; 12 | 13 | enum State { 14 | 15 | Inactive, 16 | CreatingWait, 17 | Creating, 18 | Activating, 19 | Transferring, 20 | Initializing, 21 | Active, 22 | Closing 23 | 24 | } 25 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/UaNodeManager.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server; 12 | 13 | import org.eclipse.milo.opcua.sdk.server.api.AbstractNodeManager; 14 | import org.eclipse.milo.opcua.sdk.server.nodes.UaNode; 15 | 16 | public class UaNodeManager extends AbstractNodeManager {} 17 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/main/java/org/eclipse/milo/opcua/stack/core/serialization/UaMessage.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.serialization; 12 | 13 | /** 14 | * Super-interface indicating this is one of the service request/response structures. 15 | */ 16 | public interface UaMessage extends UaStructure { 17 | 18 | 19 | } 20 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/main/java/org/eclipse/milo/opcua/stack/core/util/Unit.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.util; 12 | 13 | /** 14 | * A once-inhabited alternative to {@link java.lang.Void}. 15 | */ 16 | public enum Unit { 17 | 18 | VALUE; 19 | 20 | public static Unit unit() { 21 | return VALUE; 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/main/java/org/eclipse/milo/opcua/stack/core/serialization/UaRequestMessage.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.serialization; 12 | 13 | import org.eclipse.milo.opcua.stack.core.types.structured.RequestHeader; 14 | 15 | public interface UaRequestMessage extends UaMessage { 16 | 17 | RequestHeader getRequestHeader(); 18 | 19 | } 20 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-server/src/main/java/org/eclipse/milo/opcua/stack/server/services/ServiceRequestHandler.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.server.services; 12 | 13 | import org.eclipse.milo.opcua.stack.core.UaException; 14 | 15 | public interface ServiceRequestHandler { 16 | 17 | void handle(ServiceRequest serviceRequest) throws UaException; 18 | 19 | } 20 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/Lifecycle.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server; 12 | 13 | public interface Lifecycle { 14 | 15 | /** 16 | * Call to start this Lifecycle. 17 | */ 18 | void startup(); 19 | 20 | /** 21 | * Call to stop this Lifecycle. 22 | */ 23 | void shutdown(); 24 | 25 | } 26 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/AddressSpaceFileType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.server.nodes.UaMethodNode; 14 | 15 | public interface AddressSpaceFileType extends FileType { 16 | UaMethodNode getExportNamespaceMethodNode(); 17 | } 18 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/main/java/org/eclipse/milo/opcua/stack/core/serialization/UaResponseMessage.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.serialization; 12 | 13 | import org.eclipse.milo.opcua.stack.core.types.structured.ResponseHeader; 14 | 15 | public interface UaResponseMessage extends UaMessage { 16 | 17 | ResponseHeader getResponseHeader(); 18 | 19 | } 20 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/NamespacesType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | import java.util.concurrent.CompletableFuture; 14 | 15 | public interface NamespacesType extends BaseObjectType { 16 | CompletableFuture getAddressSpaceFileNode(); 17 | } 18 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/events/FilterContext.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.events; 12 | 13 | import org.eclipse.milo.opcua.sdk.server.OpcUaServer; 14 | import org.eclipse.milo.opcua.sdk.server.api.AccessContext; 15 | 16 | public interface FilterContext extends AccessContext { 17 | 18 | OpcUaServer getServer(); 19 | 20 | } 21 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/api/EventItem.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.api; 12 | 13 | import com.google.common.eventbus.Subscribe; 14 | import org.eclipse.milo.opcua.sdk.server.model.nodes.objects.BaseEventNode; 15 | 16 | public interface EventItem extends MonitoredItem { 17 | 18 | @Subscribe 19 | void onEvent(BaseEventNode eventNode); 20 | 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/main/java/org/eclipse/milo/opcua/stack/core/util/annotations/Description.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.util.annotations; 12 | 13 | import java.lang.annotation.Retention; 14 | import java.lang.annotation.RetentionPolicy; 15 | 16 | /** 17 | * Description 18 | */ 19 | @Retention(RetentionPolicy.RUNTIME) 20 | public @interface Description { 21 | String value(); 22 | } 23 | -------------------------------------------------------------------------------- /opc-ua-stack/bsd-parser/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4.0.0 4 | 5 | 6 | org.eclipse.milo 7 | opc-ua-stack 8 | 0.3.9-SNAPSHOT 9 | 10 | 11 | bsd-parser 12 | pom 13 | 14 | 15 | bsd-parser-core 16 | bsd-parser-gson 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-core/src/main/java/org/eclipse/milo/opcua/sdk/core/ValueRanks.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.core; 12 | 13 | public class ValueRanks { 14 | 15 | public static final int OneDimension = 1; 16 | public static final int OneOrMoreDimensions = 0; 17 | public static final int Scalar = -1; 18 | public static final int Any = -2; 19 | public static final int ScalarOrOneDimension = -3; 20 | 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/annotations/UaMethod.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.annotations; 12 | 13 | import java.lang.annotation.ElementType; 14 | import java.lang.annotation.Retention; 15 | import java.lang.annotation.RetentionPolicy; 16 | import java.lang.annotation.Target; 17 | 18 | @Target(ElementType.METHOD) 19 | @Retention(RetentionPolicy.RUNTIME) 20 | public @interface UaMethod { 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/CertificateGroupFolderType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 12 | 13 | public interface CertificateGroupFolderType extends FolderType { 14 | CertificateGroupType getDefaultApplicationGroupNode(); 15 | 16 | CertificateGroupType getDefaultHttpsGroupNode(); 17 | 18 | CertificateGroupType getDefaultUserTokenGroupNode(); 19 | } 20 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/api/ServiceFaultListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.api; 12 | 13 | import org.eclipse.milo.opcua.stack.core.types.structured.ServiceFault; 14 | 15 | public interface ServiceFaultListener { 16 | 17 | /** 18 | * A {@link ServiceFault} has occurred. 19 | * 20 | * @param serviceFault the {@link ServiceFault}. 21 | */ 22 | void onServiceFault(ServiceFault serviceFault); 23 | 24 | } 25 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/main/java/org/eclipse/milo/opcua/stack/core/UaSerializationException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core; 12 | 13 | public class UaSerializationException extends UaRuntimeException { 14 | 15 | public UaSerializationException(long statusCode, Throwable cause) { 16 | super(statusCode, cause); 17 | } 18 | 19 | public UaSerializationException(long statusCode, String message) { 20 | super(statusCode, message); 21 | } 22 | 23 | } 24 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-core/src/main/java/org/eclipse/milo/opcua/sdk/core/ValueRank.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.core; 12 | 13 | public enum ValueRank { 14 | 15 | OneDimension(1), 16 | OneOrMoreDimensions(0), 17 | Scalar(-1), 18 | Any(-2), 19 | ScalarOrOneDimension(-3); 20 | 21 | private final int value; 22 | 23 | ValueRank(int value) { 24 | this.value = value; 25 | } 26 | 27 | public int getValue() { 28 | return value; 29 | } 30 | 31 | } 32 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/api/nodes/ViewNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.api.nodes; 12 | 13 | import org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UByte; 14 | 15 | public interface ViewNode extends Node { 16 | 17 | Boolean getContainsNoLoops(); 18 | 19 | UByte getEventNotifier(); 20 | 21 | void setContainsNoLoops(Boolean containsNoLoops); 22 | 23 | void setEventNotifier(UByte eventNotifier); 24 | 25 | } 26 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-server/src/main/java/org/eclipse/milo/opcua/stack/server/services/MethodServiceSet.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.server.services; 12 | 13 | import org.eclipse.milo.opcua.stack.core.StatusCodes; 14 | import org.eclipse.milo.opcua.stack.core.UaException; 15 | 16 | public interface MethodServiceSet { 17 | 18 | default void onCall(ServiceRequest serviceRequest) throws UaException { 19 | serviceRequest.setServiceFault(StatusCodes.Bad_ServiceUnsupported); 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/FileDirectoryType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.server.nodes.UaMethodNode; 14 | 15 | public interface FileDirectoryType extends FolderType { 16 | UaMethodNode getDeleteMethodNode(); 17 | 18 | UaMethodNode getMoveOrCopyMethodNode(); 19 | 20 | UaMethodNode getCreateDirectoryMethodNode(); 21 | 22 | UaMethodNode getCreateFileMethodNode(); 23 | } 24 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-core/src/main/java/org/eclipse/milo/opcua/sdk/core/util/StreamUtil.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.core.util; 12 | 13 | import java.util.Optional; 14 | import java.util.stream.Stream; 15 | 16 | public class StreamUtil { 17 | 18 | /** 19 | * Turns an Optional into a Stream of length zero or one depending upon whether a value is present. 20 | */ 21 | public static Stream opt2stream(Optional opt) { 22 | return opt.map(Stream::of).orElseGet(Stream::empty); 23 | } 24 | 25 | } 26 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/services/ServiceAttributes.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.services; 12 | 13 | import io.netty.util.AttributeKey; 14 | import org.eclipse.milo.opcua.sdk.server.OpcUaServer; 15 | import org.eclipse.milo.opcua.sdk.server.Session; 16 | 17 | public interface ServiceAttributes { 18 | 19 | AttributeKey SERVER_KEY = AttributeKey.valueOf("server"); 20 | 21 | AttributeKey SESSION_KEY = AttributeKey.valueOf("session"); 22 | 23 | } 24 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/annotations/UaInputArgument.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.annotations; 12 | 13 | import java.lang.annotation.ElementType; 14 | import java.lang.annotation.Retention; 15 | import java.lang.annotation.RetentionPolicy; 16 | import java.lang.annotation.Target; 17 | 18 | @Target(ElementType.PARAMETER) 19 | @Retention(RetentionPolicy.RUNTIME) 20 | public @interface UaInputArgument { 21 | 22 | String name(); 23 | 24 | String description() default ""; 25 | 26 | } 27 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/annotations/UaOutputArgument.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.annotations; 12 | 13 | import java.lang.annotation.ElementType; 14 | import java.lang.annotation.Retention; 15 | import java.lang.annotation.RetentionPolicy; 16 | import java.lang.annotation.Target; 17 | 18 | @Target(ElementType.PARAMETER) 19 | @Retention(RetentionPolicy.RUNTIME) 20 | public @interface UaOutputArgument { 21 | 22 | String name(); 23 | 24 | String description() default ""; 25 | 26 | } 27 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/FolderNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.FolderType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class FolderNode extends BaseObjectNode implements FolderType { 18 | public FolderNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/variables/PropertyNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.variables; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.variables.PropertyType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class PropertyNode extends BaseVariableNode implements PropertyType { 18 | public PropertyNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/variables/SessionDiagnosticsArrayType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.variables; 12 | 13 | import org.eclipse.milo.opcua.stack.core.types.structured.SessionDiagnosticsDataType; 14 | 15 | public interface SessionDiagnosticsArrayType extends BaseDataVariableType { 16 | SessionDiagnosticsVariableType getSessionDiagnosticsNode(); 17 | 18 | SessionDiagnosticsDataType getSessionDiagnostics(); 19 | 20 | void setSessionDiagnostics(SessionDiagnosticsDataType value); 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/TripAlarmNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.TripAlarmType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class TripAlarmNode extends OffNormalAlarmNode implements TripAlarmType { 18 | public TripAlarmNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/CertificateNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.CertificateType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class CertificateNode extends BaseObjectNode implements CertificateType { 18 | public CertificateNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/InitialStateNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.InitialStateType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class InitialStateNode extends StateNode implements InitialStateType { 18 | public InitialStateNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/SystemEventNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.SystemEventType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class SystemEventNode extends BaseEventNode implements SystemEventType { 18 | public SystemEventNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/FileDirectoryNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.FileDirectoryType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class FileDirectoryNode extends FolderNode implements FileDirectoryType { 18 | public FileDirectoryNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/CertificateGroupFolderType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | import java.util.concurrent.CompletableFuture; 14 | 15 | public interface CertificateGroupFolderType extends FolderType { 16 | CompletableFuture getDefaultApplicationGroupNode(); 17 | 18 | CompletableFuture getDefaultHttpsGroupNode(); 19 | 20 | CompletableFuture getDefaultUserTokenGroupNode(); 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/api/nodes/ReferenceTypeNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.api.nodes; 12 | 13 | import org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText; 14 | 15 | public interface ReferenceTypeNode extends Node { 16 | 17 | Boolean getIsAbstract(); 18 | 19 | Boolean getSymmetric(); 20 | 21 | LocalizedText getInverseName(); 22 | 23 | void setIsAbstract(Boolean isAbstract); 24 | 25 | void setSymmetric(Boolean isSymmetric); 26 | 27 | void setInverseName(LocalizedText inverseName); 28 | 29 | } 30 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/variables/DiscreteItemNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.variables; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.variables.DiscreteItemType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class DiscreteItemNode extends DataItemNode implements DiscreteItemType { 18 | public DiscreteItemNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/DataTypeSystemNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.DataTypeSystemType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class DataTypeSystemNode extends BaseObjectNode implements DataTypeSystemType { 18 | public DataTypeSystemNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/DiscreteAlarmNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.DiscreteAlarmType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class DiscreteAlarmNode extends AlarmConditionNode implements DiscreteAlarmType { 18 | public DiscreteAlarmNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/test/java/org/eclipse/milo/opcua/sdk/core/CefactEngineeringUnitsTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.core; 12 | 13 | import org.eclipse.milo.opcua.stack.core.types.structured.EUInformation; 14 | import org.testng.annotations.Test; 15 | 16 | import static org.testng.Assert.assertEquals; 17 | 18 | public class CefactEngineeringUnitsTest { 19 | 20 | @Test 21 | public void test() { 22 | for (EUInformation eu : CefactEngineeringUnits.getAll()) { 23 | assertEquals(CefactEngineeringUnits.getByUnitId(eu.getUnitId()), eu); 24 | } 25 | } 26 | 27 | } -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/AddressSpaceFileNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.AddressSpaceFileType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class AddressSpaceFileNode extends FileNode implements AddressSpaceFileType { 18 | public AddressSpaceFileNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/RefreshEndEventNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.RefreshEndEventType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class RefreshEndEventNode extends SystemEventNode implements RefreshEndEventType { 18 | public RefreshEndEventNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/AuditUpdateEventNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.AuditUpdateEventType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class AuditUpdateEventNode extends AuditEventNode implements AuditUpdateEventType { 18 | public AuditUpdateEventNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/DataTypeEncodingNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.DataTypeEncodingType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class DataTypeEncodingNode extends BaseObjectNode implements DataTypeEncodingType { 18 | public DataTypeEncodingNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/HttpsCertificateNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.HttpsCertificateType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class HttpsCertificateNode extends CertificateNode implements HttpsCertificateType { 18 | public HttpsCertificateNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/VendorServerInfoNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.VendorServerInfoType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class VendorServerInfoNode extends BaseObjectNode implements VendorServerInfoType { 18 | public VendorServerInfoNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/ProgramTransitionAuditEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.server.model.types.variables.FiniteTransitionVariableType; 14 | import org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText; 15 | 16 | public interface ProgramTransitionAuditEventType extends AuditUpdateStateEventType { 17 | FiniteTransitionVariableType getTransitionNode(); 18 | 19 | LocalizedText getTransition(); 20 | 21 | void setTransition(LocalizedText value); 22 | } 23 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/variables/SubscriptionDiagnosticsArrayType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.variables; 12 | 13 | import org.eclipse.milo.opcua.stack.core.types.structured.SubscriptionDiagnosticsDataType; 14 | 15 | public interface SubscriptionDiagnosticsArrayType extends BaseDataVariableType { 16 | SubscriptionDiagnosticsType getSubscriptionDiagnosticsNode(); 17 | 18 | SubscriptionDiagnosticsDataType getSubscriptionDiagnostics(); 19 | 20 | void setSubscriptionDiagnostics(SubscriptionDiagnosticsDataType value); 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/AggregateFunctionNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.AggregateFunctionType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class AggregateFunctionNode extends BaseObjectNode implements AggregateFunctionType { 18 | public AggregateFunctionNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/RefreshStartEventNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.RefreshStartEventType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class RefreshStartEventNode extends SystemEventNode implements RefreshStartEventType { 18 | public RefreshStartEventNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/variables/BaseDataVariableNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.variables; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.variables.BaseDataVariableType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class BaseDataVariableNode extends BaseVariableNode implements BaseDataVariableType { 18 | public BaseDataVariableNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/AuditSecurityEventNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.AuditSecurityEventType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class AuditSecurityEventNode extends AuditEventNode implements AuditSecurityEventType { 18 | public AuditSecurityEventNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/BaseConditionClassNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.BaseConditionClassType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class BaseConditionClassNode extends BaseObjectNode implements BaseConditionClassType { 18 | public BaseConditionClassNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/DeviceFailureEventNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.DeviceFailureEventType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class DeviceFailureEventNode extends SystemEventNode implements DeviceFailureEventType { 18 | public DeviceFailureEventNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /milo-examples/client-examples/src/main/java/org/eclipse/milo/examples/client/EventSubscriptionExampleProsys.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.examples.client; 12 | 13 | public class EventSubscriptionExampleProsys extends EventSubscriptionExample { 14 | 15 | public static void main(String[] args) throws Exception { 16 | EventSubscriptionExampleProsys example = new EventSubscriptionExampleProsys(); 17 | 18 | new ClientExampleRunner(example, false).run(); 19 | } 20 | 21 | @Override 22 | public String getEndpointUrl() { 23 | return "opc.tcp://localhost:53530/OPCUA/SimulationServer"; 24 | } 25 | 26 | } 27 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/BaseModelChangeEventNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.BaseModelChangeEventType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class BaseModelChangeEventNode extends BaseEventNode implements BaseModelChangeEventType { 18 | public BaseModelChangeEventNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/RefreshRequiredEventNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.RefreshRequiredEventType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class RefreshRequiredEventNode extends SystemEventNode implements RefreshRequiredEventType { 18 | public RefreshRequiredEventNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/AuditConditionEventNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.AuditConditionEventType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class AuditConditionEventNode extends AuditUpdateMethodEventNode implements AuditConditionEventType { 18 | public AuditConditionEventNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/ExclusiveLevelAlarmNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.ExclusiveLevelAlarmType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class ExclusiveLevelAlarmNode extends ExclusiveLimitAlarmNode implements ExclusiveLevelAlarmType { 18 | public ExclusiveLevelAlarmNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/SystemConditionClassNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.SystemConditionClassType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class SystemConditionClassNode extends BaseConditionClassNode implements SystemConditionClassType { 18 | public SystemConditionClassNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/SystemOffNormalAlarmNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.SystemOffNormalAlarmType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class SystemOffNormalAlarmNode extends OffNormalAlarmNode implements SystemOffNormalAlarmType { 18 | public SystemOffNormalAlarmNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/api/nodes/ObjectTypeNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.api.nodes; 12 | 13 | public interface ObjectTypeNode extends Node { 14 | 15 | /** 16 | * The IsAbstract attribute indicates if this ObjectType is abstract or not. 17 | * 18 | * @return {@code true} if this ObjectType is abstract. 19 | */ 20 | Boolean getIsAbstract(); 21 | 22 | /** 23 | * Set the IsAbstract attribute of this ObjectType. 24 | * 25 | * @param isAbstract {@code true} if this 26 | */ 27 | void setIsAbstract(Boolean isAbstract); 28 | 29 | } 30 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/variables/SessionSecurityDiagnosticsArrayType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.variables; 12 | 13 | import org.eclipse.milo.opcua.stack.core.types.structured.SessionSecurityDiagnosticsDataType; 14 | 15 | public interface SessionSecurityDiagnosticsArrayType extends BaseDataVariableType { 16 | SessionSecurityDiagnosticsType getSessionSecurityDiagnosticsNode(); 17 | 18 | SessionSecurityDiagnosticsDataType getSessionSecurityDiagnostics(); 19 | 20 | void setSessionSecurityDiagnostics(SessionSecurityDiagnosticsDataType value); 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/ApplicationCertificateNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.ApplicationCertificateType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class ApplicationCertificateNode extends CertificateNode implements ApplicationCertificateType { 18 | public ApplicationCertificateNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/ProcessConditionClassNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.ProcessConditionClassType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class ProcessConditionClassNode extends BaseConditionClassNode implements ProcessConditionClassType { 18 | public ProcessConditionClassNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/ExclusiveLimitAlarmType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.server.model.types.variables.TwoStateVariableType; 14 | import org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText; 15 | 16 | public interface ExclusiveLimitAlarmType extends LimitAlarmType { 17 | TwoStateVariableType getActiveStateNode(); 18 | 19 | LocalizedText getActiveState(); 20 | 21 | void setActiveState(LocalizedText value); 22 | 23 | ExclusiveLimitStateMachineType getLimitStateNode(); 24 | } 25 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/ExclusiveLimitStateMachineType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 12 | 13 | public interface ExclusiveLimitStateMachineType extends FiniteStateMachineType { 14 | StateType getLowNode(); 15 | 16 | StateType getHighNode(); 17 | 18 | TransitionType getLowLowToLowNode(); 19 | 20 | StateType getLowLowNode(); 21 | 22 | TransitionType getHighHighToHighNode(); 23 | 24 | TransitionType getLowToLowLowNode(); 25 | 26 | StateType getHighHighNode(); 27 | 28 | TransitionType getHighToHighHighNode(); 29 | } 30 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/BaseObjectNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.BaseObjectType; 15 | import org.eclipse.milo.opcua.sdk.client.nodes.UaObjectNode; 16 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 17 | 18 | public class BaseObjectNode extends UaObjectNode implements BaseObjectType { 19 | public BaseObjectNode(OpcUaClient client, NodeId nodeId) { 20 | super(client, nodeId); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/EventQueueOverflowEventNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.EventQueueOverflowEventType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class EventQueueOverflowEventNode extends BaseEventNode implements EventQueueOverflowEventType { 18 | public EventQueueOverflowEventNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/variables/SamplingIntervalDiagnosticsArrayType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.variables; 12 | 13 | import org.eclipse.milo.opcua.stack.core.types.structured.SamplingIntervalDiagnosticsDataType; 14 | 15 | public interface SamplingIntervalDiagnosticsArrayType extends BaseDataVariableType { 16 | SamplingIntervalDiagnosticsType getSamplingIntervalDiagnosticsNode(); 17 | 18 | SamplingIntervalDiagnosticsDataType getSamplingIntervalDiagnostics(); 19 | 20 | void setSamplingIntervalDiagnostics(SamplingIntervalDiagnosticsDataType value); 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/AuditNodeManagementEventNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.AuditNodeManagementEventType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class AuditNodeManagementEventNode extends AuditEventNode implements AuditNodeManagementEventType { 18 | public AuditNodeManagementEventNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/NonExclusiveLevelAlarmNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.NonExclusiveLevelAlarmType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class NonExclusiveLevelAlarmNode extends NonExclusiveLimitAlarmNode implements NonExclusiveLevelAlarmType { 18 | public NonExclusiveLevelAlarmNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/variables/ServerVendorCapabilityNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.variables; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.variables.ServerVendorCapabilityType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class ServerVendorCapabilityNode extends BaseDataVariableNode implements ServerVendorCapabilityType { 18 | public ServerVendorCapabilityNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/api/AccessContext.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.api; 12 | 13 | import java.util.Optional; 14 | 15 | import org.eclipse.milo.opcua.sdk.server.Session; 16 | 17 | public interface AccessContext { 18 | 19 | /** 20 | * Get the {@link Session} associated with this operation, if present. 21 | *

22 | * If empty, the operation is internal and no user- or session-related restrictions should be applied. 23 | * 24 | * @return the {@link Session} associated with this operation, if present. 25 | */ 26 | Optional getSession(); 27 | 28 | } 29 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/main/java/org/eclipse/milo/opcua/stack/core/util/Namespaces.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.util; 12 | 13 | public class Namespaces { 14 | 15 | public static final String OPC_UA = "http://opcfoundation.org/UA/"; 16 | 17 | public static final String OPC_UA_BSD = "http://opcfoundation.org/BinarySchema/"; 18 | 19 | public static final String OPC_UA_XSD = "http://opcfoundation.org/UA/2008/02/Types.xsd"; 20 | 21 | public static final String XML_SCHEMA = "http://www.w3.org/2001/XMLSchema"; 22 | 23 | public static final String XML_SCHEMA_INSTANCE = "http://www.w3.org/2001/XMLSchema-instance"; 24 | 25 | } 26 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/MaintenanceConditionClassNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.MaintenanceConditionClassType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class MaintenanceConditionClassNode extends BaseConditionClassNode implements MaintenanceConditionClassType { 18 | public MaintenanceConditionClassNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/AuditConditionEnableEventNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.AuditConditionEnableEventType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class AuditConditionEnableEventNode extends AuditConditionEventNode implements AuditConditionEnableEventType { 18 | public AuditConditionEnableEventNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/variables/BaseVariableNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.variables; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.variables.BaseVariableType; 15 | import org.eclipse.milo.opcua.sdk.client.nodes.UaVariableNode; 16 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 17 | 18 | public class BaseVariableNode extends UaVariableNode implements BaseVariableType { 19 | public BaseVariableNode(OpcUaClient client, NodeId nodeId) { 20 | super(client, nodeId); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/ExclusiveRateOfChangeAlarmNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.ExclusiveRateOfChangeAlarmType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class ExclusiveRateOfChangeAlarmNode extends ExclusiveLimitAlarmNode implements ExclusiveRateOfChangeAlarmType { 18 | public ExclusiveRateOfChangeAlarmNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/TrustListUpdatedAuditEventNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.TrustListUpdatedAuditEventType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class TrustListUpdatedAuditEventNode extends AuditUpdateMethodEventNode implements TrustListUpdatedAuditEventType { 18 | public TrustListUpdatedAuditEventNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/nodes/AttributeObserver.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.nodes; 12 | 13 | import org.eclipse.milo.opcua.stack.core.AttributeId; 14 | 15 | public interface AttributeObserver { 16 | 17 | /** 18 | * The Attribute indicated by {@code attributeId} on {@code node} changed. 19 | * 20 | * @param node the {@link UaNode} the change originated from. 21 | * @param attributeId the {@link AttributeId} that changed. 22 | * @param value the new value of the attribute. 23 | */ 24 | void attributeChanged(UaNode node, AttributeId attributeId, Object value); 25 | 26 | } 27 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/AuditCertificateExpiredEventNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.AuditCertificateExpiredEventType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class AuditCertificateExpiredEventNode extends AuditCertificateEventNode implements AuditCertificateExpiredEventType { 18 | public AuditCertificateExpiredEventNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/AuditCertificateInvalidEventNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.AuditCertificateInvalidEventType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class AuditCertificateInvalidEventNode extends AuditCertificateEventNode implements AuditCertificateInvalidEventType { 18 | public AuditCertificateInvalidEventNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/AuditCertificateRevokedEventNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.AuditCertificateRevokedEventType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class AuditCertificateRevokedEventNode extends AuditCertificateEventNode implements AuditCertificateRevokedEventType { 18 | public AuditCertificateRevokedEventNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/RsaMinApplicationCertificateNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.RsaMinApplicationCertificateType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class RsaMinApplicationCertificateNode extends ApplicationCertificateNode implements RsaMinApplicationCertificateType { 18 | public RsaMinApplicationCertificateNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/api/Namespace.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.api; 12 | 13 | import org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UShort; 14 | 15 | /** 16 | * A Namespace is an {@link AddressSpace} that manages all nodes for a given namespace index. 17 | */ 18 | public interface Namespace extends AddressSpace { 19 | 20 | /** 21 | * @return the index of this {@link Namespace} in the server's namespace array. 22 | */ 23 | UShort getNamespaceIndex(); 24 | 25 | /** 26 | * @return the URI identifying this {@link Namespace}. 27 | */ 28 | String getNamespaceUri(); 29 | 30 | } 31 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/AuditCertificateMismatchEventNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.AuditCertificateMismatchEventType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class AuditCertificateMismatchEventNode extends AuditCertificateEventNode implements AuditCertificateMismatchEventType { 18 | public AuditCertificateMismatchEventNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/NonExclusiveRateOfChangeAlarmNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.NonExclusiveRateOfChangeAlarmType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class NonExclusiveRateOfChangeAlarmNode extends NonExclusiveLimitAlarmNode implements NonExclusiveRateOfChangeAlarmType { 18 | public NonExclusiveRateOfChangeAlarmNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/main/java/org/eclipse/milo/opcua/stack/core/channel/MessageAbortedException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.channel; 12 | 13 | import org.eclipse.milo.opcua.stack.core.UaException; 14 | import org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode; 15 | 16 | public class MessageAbortedException extends UaException { 17 | 18 | private final long requestId; 19 | 20 | MessageAbortedException(StatusCode statusCode, String message, long requestId) { 21 | super(statusCode, message); 22 | 23 | this.requestId = requestId; 24 | } 25 | 26 | public long getRequestId() { 27 | return requestId; 28 | } 29 | 30 | } 31 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/AuditCertificateUntrustedEventNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.AuditCertificateUntrustedEventType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class AuditCertificateUntrustedEventNode extends AuditCertificateEventNode implements AuditCertificateUntrustedEventType { 18 | public AuditCertificateUntrustedEventNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-server/src/main/java/org/eclipse/milo/opcua/stack/server/services/AttributeServiceSet.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.server.services; 12 | 13 | import org.eclipse.milo.opcua.stack.core.StatusCodes; 14 | import org.eclipse.milo.opcua.stack.core.UaException; 15 | 16 | public interface AttributeServiceSet { 17 | 18 | default void onRead(ServiceRequest serviceRequest) throws UaException { 19 | serviceRequest.setServiceFault(StatusCodes.Bad_ServiceUnsupported); 20 | } 21 | 22 | default void onWrite(ServiceRequest serviceRequest) throws UaException { 23 | serviceRequest.setServiceFault(StatusCodes.Bad_ServiceUnsupported); 24 | } 25 | 26 | } 27 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-server/src/main/java/org/eclipse/milo/opcua/stack/server/services/QueryServiceSet.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.server.services; 12 | 13 | import org.eclipse.milo.opcua.stack.core.StatusCodes; 14 | import org.eclipse.milo.opcua.stack.core.UaException; 15 | 16 | public interface QueryServiceSet { 17 | 18 | default void onQueryFirst(ServiceRequest serviceRequest) throws UaException { 19 | serviceRequest.setServiceFault(StatusCodes.Bad_ServiceUnsupported); 20 | } 21 | 22 | default void onQueryNext(ServiceRequest serviceRequest) throws UaException { 23 | serviceRequest.setServiceFault(StatusCodes.Bad_ServiceUnsupported); 24 | } 25 | 26 | } 27 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/RsaSha256ApplicationCertificateNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 14 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.RsaSha256ApplicationCertificateType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public class RsaSha256ApplicationCertificateNode extends ApplicationCertificateNode implements RsaSha256ApplicationCertificateType { 18 | public RsaSha256ApplicationCertificateNode(OpcUaClient client, NodeId nodeId) { 19 | super(client, nodeId); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/api/AddressSpace.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.api; 12 | 13 | /** 14 | * An {@link AddressSpace} is an implementation of the services defined by {@link AddressSpaceServices} that can be 15 | * invoked for any operation that passes the {@link AddressSpaceFilter} obtained from {@link #getFilter()}. 16 | */ 17 | public interface AddressSpace extends AddressSpaceServices { 18 | 19 | /** 20 | * Get the {@link AddressSpaceFilter} for this {@link AddressSpace}. 21 | * 22 | * @return the {@link AddressSpaceFilter} for this {@link AddressSpace}. 23 | */ 24 | AddressSpaceFilter getFilter(); 25 | 26 | 27 | } 28 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/nodes/delegates/AttributeDelegateChain.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.nodes.delegates; 12 | 13 | import java.util.function.Function; 14 | 15 | public class AttributeDelegateChain { 16 | 17 | @SafeVarargs 18 | public static AttributeDelegate create( 19 | AttributeDelegate root, 20 | Function... childFns) { 21 | 22 | AttributeDelegate delegate = root; 23 | 24 | for (Function childFn : childFns) { 25 | delegate = childFn.apply(delegate); 26 | } 27 | 28 | return delegate; 29 | } 30 | 31 | } 32 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/test/java/org/eclipse/milo/opcua/stack/core/types/BuiltinDataTypeDictionaryTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.types; 12 | 13 | import org.eclipse.milo.opcua.stack.core.serialization.codecs.BuiltinDataTypeCodec; 14 | import org.eclipse.milo.opcua.stack.core.types.structured.EndpointDescription; 15 | import org.testng.annotations.Test; 16 | 17 | import static org.testng.Assert.*; 18 | 19 | public class BuiltinDataTypeDictionaryTest { 20 | 21 | @Test 22 | public void testGetBuiltinCodec() throws Exception { 23 | BuiltinDataTypeCodec codec = BuiltinDataTypeDictionary.getBuiltinCodec(EndpointDescription.class); 24 | 25 | assertNotNull(codec); 26 | } 27 | 28 | } -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/test/java/org/eclipse/milo/opcua/stack/core/types/builtin/QualifiedNameTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.types.builtin; 12 | 13 | import org.testng.Assert; 14 | import org.testng.annotations.Test; 15 | 16 | public class QualifiedNameTest { 17 | 18 | @Test 19 | public void testToStringAndBack1() { 20 | assertSymmetry("0:foo"); 21 | } 22 | 23 | @Test 24 | public void testToStringAndBack2() { 25 | assertSymmetry("0:foo:bar"); 26 | } 27 | 28 | private void assertSymmetry(String string) { 29 | String reString = QualifiedName.parse(string).toParseableString(); 30 | Assert.assertEquals(reString, string); 31 | } 32 | 33 | } 34 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-server/src/main/java/org/eclipse/milo/opcua/stack/server/services/AttributeHistoryServiceSet.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.server.services; 12 | 13 | import org.eclipse.milo.opcua.stack.core.StatusCodes; 14 | import org.eclipse.milo.opcua.stack.core.UaException; 15 | 16 | public interface AttributeHistoryServiceSet { 17 | 18 | default void onHistoryRead(ServiceRequest serviceRequest) throws UaException { 19 | serviceRequest.setServiceFault(StatusCodes.Bad_ServiceUnsupported); 20 | } 21 | 22 | default void onHistoryUpdate(ServiceRequest serviceRequest) throws UaException { 23 | serviceRequest.setServiceFault(StatusCodes.Bad_ServiceUnsupported); 24 | } 25 | 26 | } 27 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/namespaces/loader/UaViewLoader.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.namespaces.loader; 12 | 13 | import org.eclipse.milo.opcua.sdk.server.api.NodeManager; 14 | import org.eclipse.milo.opcua.sdk.server.nodes.UaNode; 15 | import org.eclipse.milo.opcua.sdk.server.nodes.UaNodeContext; 16 | 17 | public class UaViewLoader { 18 | 19 | private final UaNodeContext context; 20 | private final NodeManager nodeManager; 21 | 22 | public UaViewLoader(UaNodeContext context, NodeManager nodeManager) { 23 | this.context = context; 24 | this.nodeManager = nodeManager; 25 | } 26 | 27 | public void buildNodes() {} 28 | 29 | } 30 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/test/java/org/eclipse/milo/opcua/sdk/server/util/HostnameUtilTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.util; 12 | 13 | import java.util.Set; 14 | 15 | import org.testng.annotations.Test; 16 | 17 | import static org.testng.Assert.assertNotEquals; 18 | 19 | public class HostnameUtilTest { 20 | 21 | @Test 22 | public void testGetHostnames_ExcludeLocal() throws Exception { 23 | Set hostnames = HostnameUtil.getHostnames("0.0.0.0", false); 24 | 25 | hostnames.forEach(hostname -> { 26 | assertNotEquals(hostname, "127.0.0.1"); 27 | assertNotEquals(hostname, "localhost"); 28 | System.out.println(hostname); 29 | }); 30 | } 31 | 32 | } -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/api/NodeCache.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.api; 12 | 13 | import java.util.Optional; 14 | 15 | import org.eclipse.milo.opcua.stack.core.AttributeId; 16 | import org.eclipse.milo.opcua.stack.core.types.builtin.DataValue; 17 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 18 | 19 | public interface NodeCache { 20 | 21 | Optional getAttribute(NodeId nodeId, AttributeId attributeId); 22 | 23 | void putAttribute(NodeId nodeId, AttributeId attributeId, DataValue value); 24 | 25 | void invalidate(NodeId nodeId); 26 | 27 | void invalidate(NodeId nodeId, AttributeId attributeId); 28 | 29 | void invalidateAll(); 30 | 31 | } 32 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/test/java/org/eclipse/milo/opcua/sdk/server/events/conversions/LocalizedTextConversionsTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.events.conversions; 12 | 13 | import org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText; 14 | import org.testng.annotations.Test; 15 | 16 | import static org.eclipse.milo.opcua.sdk.server.events.conversions.LocalizedTextConversions.localizedTextToString; 17 | import static org.testng.Assert.assertEquals; 18 | 19 | public class LocalizedTextConversionsTest { 20 | 21 | @Test 22 | public void testLocalizedTextToString() { 23 | LocalizedText text = new LocalizedText("en-us", "foo"); 24 | 25 | assertEquals(localizedTextToString(text), "foo"); 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/main/java/org/eclipse/milo/opcua/stack/core/types/builtin/unsigned/UNumber.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.types.builtin.unsigned; 12 | 13 | import java.math.BigInteger; 14 | 15 | /** 16 | * A base type for unsigned numbers. 17 | * 18 | * @author Lukas Eder 19 | */ 20 | public abstract class UNumber extends Number { 21 | 22 | /** 23 | * Generated UID 24 | */ 25 | private static final long serialVersionUID = -7666221938815339843L; 26 | 27 | /** 28 | * Get this number as a {@link BigInteger}. This is a convenience method for 29 | * calling new BigInteger(toString()) 30 | */ 31 | public BigInteger toBigInteger() { 32 | return new BigInteger(toString()); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/variables/SessionDiagnosticsArrayType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.variables; 12 | 13 | import java.util.concurrent.CompletableFuture; 14 | 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode; 16 | import org.eclipse.milo.opcua.stack.core.types.structured.SessionDiagnosticsDataType; 17 | 18 | public interface SessionDiagnosticsArrayType extends BaseDataVariableType { 19 | CompletableFuture getSessionDiagnosticsNode(); 20 | 21 | CompletableFuture getSessionDiagnostics(); 22 | 23 | CompletableFuture setSessionDiagnostics(SessionDiagnosticsDataType value); 24 | } 25 | -------------------------------------------------------------------------------- /opc-ua-stack/bsd-parser/bsd-parser-core/src/main/java/org/eclipse/milo/opcua/binaryschema/parser/CodecDescription.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.binaryschema.parser; 12 | 13 | import org.eclipse.milo.opcua.stack.core.serialization.codecs.OpcUaBinaryDataTypeCodec; 14 | 15 | public class CodecDescription { 16 | 17 | private final OpcUaBinaryDataTypeCodec codec; 18 | private final String description; 19 | 20 | public CodecDescription(OpcUaBinaryDataTypeCodec codec, String description) { 21 | this.codec = codec; 22 | this.description = description; 23 | } 24 | 25 | public OpcUaBinaryDataTypeCodec getCodec() { 26 | return codec; 27 | } 28 | 29 | public String getDescription() { 30 | return description; 31 | } 32 | 33 | } 34 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/variables/FiniteStateVariableType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.variables; 12 | 13 | import org.eclipse.milo.opcua.sdk.core.QualifiedProperty; 14 | import org.eclipse.milo.opcua.sdk.core.ValueRanks; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public interface FiniteStateVariableType extends StateVariableType { 18 | QualifiedProperty ID = new QualifiedProperty<>( 19 | "http://opcfoundation.org/UA/", 20 | "Id", 21 | NodeId.parse("ns=0;i=17"), 22 | ValueRanks.Scalar, 23 | NodeId.class 24 | ); 25 | 26 | PropertyType getIdNode(); 27 | 28 | NodeId getId(); 29 | 30 | void setId(NodeId value); 31 | } 32 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/test/java/org/eclipse/milo/opcua/stack/core/AttributeIdTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core; 12 | 13 | import org.testng.annotations.Test; 14 | 15 | import static org.testng.Assert.assertEquals; 16 | import static org.testng.Assert.assertFalse; 17 | 18 | public class AttributeIdTest { 19 | 20 | @Test 21 | public void testFrom() throws Exception { 22 | for (AttributeId attributeId : AttributeId.values()) { 23 | int id = attributeId.id(); 24 | 25 | assertEquals(attributeId, AttributeId.from(id).get()); 26 | } 27 | 28 | assertFalse(AttributeId.from(-1).isPresent()); 29 | assertFalse(AttributeId.from(0).isPresent()); 30 | assertFalse(AttributeId.from(23).isPresent()); 31 | } 32 | 33 | } 34 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/api/nodes/ObjectNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.api.nodes; 12 | 13 | import org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UByte; 14 | 15 | public interface ObjectNode extends Node { 16 | 17 | /** 18 | * The EventNotifier attribute identifies whether the Object can be used to subscribe to Events or to read and 19 | * write the history of the Events. 20 | * 21 | * @return the EventNotifier attribute of this Object. 22 | */ 23 | UByte getEventNotifier(); 24 | 25 | /** 26 | * Set the EventNotifier attribute of this Object. 27 | * 28 | * @param eventNotifier the EventNotifier attribute to set. 29 | */ 30 | void setEventNotifier(UByte eventNotifier); 31 | 32 | } 33 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/variables/FiniteTransitionVariableType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.variables; 12 | 13 | import org.eclipse.milo.opcua.sdk.core.QualifiedProperty; 14 | import org.eclipse.milo.opcua.sdk.core.ValueRanks; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | 17 | public interface FiniteTransitionVariableType extends TransitionVariableType { 18 | QualifiedProperty ID = new QualifiedProperty<>( 19 | "http://opcfoundation.org/UA/", 20 | "Id", 21 | NodeId.parse("ns=0;i=17"), 22 | ValueRanks.Scalar, 23 | NodeId.class 24 | ); 25 | 26 | PropertyType getIdNode(); 27 | 28 | NodeId getId(); 29 | 30 | void setId(NodeId value); 31 | } 32 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/ProgramTransitionAuditEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | import java.util.concurrent.CompletableFuture; 14 | 15 | import org.eclipse.milo.opcua.sdk.client.model.types.variables.FiniteTransitionVariableType; 16 | import org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText; 17 | import org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode; 18 | 19 | public interface ProgramTransitionAuditEventType extends AuditUpdateStateEventType { 20 | CompletableFuture getTransitionNode(); 21 | 22 | CompletableFuture getTransition(); 23 | 24 | CompletableFuture setTransition(LocalizedText value); 25 | } 26 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/variables/SubscriptionDiagnosticsArrayType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.variables; 12 | 13 | import java.util.concurrent.CompletableFuture; 14 | 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode; 16 | import org.eclipse.milo.opcua.stack.core.types.structured.SubscriptionDiagnosticsDataType; 17 | 18 | public interface SubscriptionDiagnosticsArrayType extends BaseDataVariableType { 19 | CompletableFuture getSubscriptionDiagnosticsNode(); 20 | 21 | CompletableFuture getSubscriptionDiagnostics(); 22 | 23 | CompletableFuture setSubscriptionDiagnostics(SubscriptionDiagnosticsDataType value); 24 | } 25 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/StateMachineType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.server.model.types.variables.StateVariableType; 14 | import org.eclipse.milo.opcua.sdk.server.model.types.variables.TransitionVariableType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText; 16 | 17 | public interface StateMachineType extends BaseObjectType { 18 | TransitionVariableType getLastTransitionNode(); 19 | 20 | LocalizedText getLastTransition(); 21 | 22 | void setLastTransition(LocalizedText value); 23 | 24 | StateVariableType getCurrentStateNode(); 25 | 26 | LocalizedText getCurrentState(); 27 | 28 | void setCurrentState(LocalizedText value); 29 | } 30 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/test/java/org/eclipse/milo/opcua/stack/SerializationFixture2.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack; 12 | 13 | import java.util.function.BiFunction; 14 | import java.util.function.Function; 15 | 16 | import io.netty.buffer.ByteBuf; 17 | import io.netty.buffer.Unpooled; 18 | 19 | import static org.testng.Assert.assertEquals; 20 | 21 | public class SerializationFixture2 { 22 | 23 | protected void assertSerializable(T encoded, 24 | BiFunction encoder, 25 | Function decoder) { 26 | 27 | ByteBuf buffer = Unpooled.buffer(); 28 | 29 | T decoded = decoder.apply(encoder.apply(encoded, buffer)); 30 | 31 | assertEquals(encoded, decoded); 32 | } 33 | 34 | } 35 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/api/EventManager.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.api; 12 | 13 | import java.util.List; 14 | 15 | import org.eclipse.milo.opcua.sdk.server.items.MonitoredEventItem; 16 | 17 | public interface EventManager { 18 | 19 | /** 20 | * {@link MonitoredEventItem} have been created for nodes belonging to this {#link EventManager}. 21 | * 22 | * @param eventItems the {@link MonitoredEventItem}s that were created. 23 | */ 24 | void onEventItemsCreated(List eventItems); 25 | 26 | void onEventItemsModified(List eventItems); 27 | 28 | void onEventItemsDeleted(List eventItems); 29 | 30 | void onMonitoringModeChanged(List eventItems); 31 | 32 | } 33 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/test/java/org/eclipse/milo/opcua/sdk/server/events/conversions/ImplicitConversionsTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.events.conversions; 12 | 13 | import org.eclipse.milo.opcua.stack.core.BuiltinDataType; 14 | import org.testng.annotations.Test; 15 | 16 | import static org.eclipse.milo.opcua.sdk.server.events.conversions.ImplicitConversions.convert; 17 | import static org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.Unsigned.ubyte; 18 | import static org.testng.Assert.assertEquals; 19 | 20 | public class ImplicitConversionsTest { 21 | 22 | @Test 23 | public void testConvert() { 24 | assertEquals( 25 | convert(false, BuiltinDataType.Byte), ubyte(0)); 26 | assertEquals( 27 | convert(true, BuiltinDataType.Byte), ubyte(1)); 28 | } 29 | 30 | } -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/api/identity/SignedIdentityToken.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.api.identity; 12 | 13 | import org.eclipse.milo.opcua.stack.core.types.structured.SignatureData; 14 | import org.eclipse.milo.opcua.stack.core.types.structured.UserIdentityToken; 15 | 16 | public class SignedIdentityToken { 17 | 18 | private final UserIdentityToken token; 19 | private final SignatureData signature; 20 | 21 | public SignedIdentityToken(UserIdentityToken token, SignatureData signature) { 22 | this.token = token; 23 | this.signature = signature; 24 | } 25 | 26 | public UserIdentityToken getToken() { 27 | return token; 28 | } 29 | 30 | public SignatureData getSignature() { 31 | return signature; 32 | } 33 | 34 | } 35 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/events/ValidationException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.events; 12 | 13 | import org.eclipse.milo.opcua.stack.core.UaException; 14 | import org.eclipse.milo.opcua.stack.core.types.builtin.DiagnosticInfo; 15 | 16 | public class ValidationException extends UaException { 17 | 18 | private final DiagnosticInfo diagnosticInfo; 19 | 20 | public ValidationException(long statusCode) { 21 | this(statusCode, DiagnosticInfo.NULL_VALUE); 22 | } 23 | 24 | public ValidationException(long statusCode, DiagnosticInfo diagnosticInfo) { 25 | super(statusCode); 26 | this.diagnosticInfo = diagnosticInfo; 27 | } 28 | 29 | public DiagnosticInfo getDiagnosticInfo() { 30 | return diagnosticInfo; 31 | } 32 | 33 | } 34 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/variables/SessionSecurityDiagnosticsArrayType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.variables; 12 | 13 | import java.util.concurrent.CompletableFuture; 14 | 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode; 16 | import org.eclipse.milo.opcua.stack.core.types.structured.SessionSecurityDiagnosticsDataType; 17 | 18 | public interface SessionSecurityDiagnosticsArrayType extends BaseDataVariableType { 19 | CompletableFuture getSessionSecurityDiagnosticsNode(); 20 | 21 | CompletableFuture getSessionSecurityDiagnostics(); 22 | 23 | CompletableFuture setSessionSecurityDiagnostics(SessionSecurityDiagnosticsDataType value); 24 | } 25 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/nodes/UaNodeContext.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.nodes; 12 | 13 | import org.eclipse.milo.opcua.sdk.server.OpcUaServer; 14 | import org.eclipse.milo.opcua.sdk.server.api.NodeManager; 15 | import org.eclipse.milo.opcua.stack.core.NamespaceTable; 16 | 17 | public interface UaNodeContext { 18 | 19 | /** 20 | * @return the {@link OpcUaServer} instance. 21 | */ 22 | OpcUaServer getServer(); 23 | 24 | /** 25 | * @return the {@link NodeManager} for this context. 26 | */ 27 | NodeManager getNodeManager(); 28 | 29 | /** 30 | * @return the Server's {@link NamespaceTable}. 31 | */ 32 | default NamespaceTable getNamespaceTable() { 33 | return getServer().getNamespaceTable(); 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/events/OperatorContext.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.events; 12 | 13 | import org.eclipse.milo.opcua.sdk.server.OpcUaServer; 14 | import org.eclipse.milo.opcua.sdk.server.api.AccessContext; 15 | import org.eclipse.milo.opcua.sdk.server.model.nodes.objects.BaseEventNode; 16 | import org.eclipse.milo.opcua.stack.core.UaException; 17 | import org.eclipse.milo.opcua.stack.core.types.structured.ContentFilterElement; 18 | import org.eclipse.milo.opcua.stack.core.types.structured.FilterOperand; 19 | 20 | public interface OperatorContext extends AccessContext, FilterContext { 21 | 22 | OpcUaServer getServer(); 23 | 24 | ContentFilterElement[] getElements(); 25 | 26 | Object resolve(FilterOperand operand, BaseEventNode eventNode) throws UaException; 27 | 28 | } 29 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/test/java/org/eclipse/milo/opcua/stack/core/security/DefaultCertificateManagerTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.security; 12 | 13 | import java.security.KeyPair; 14 | import java.security.cert.X509Certificate; 15 | 16 | import org.testng.annotations.Test; 17 | 18 | import static org.testng.Assert.expectThrows; 19 | 20 | public class DefaultCertificateManagerTest { 21 | 22 | @Test 23 | public void testNullPrivateKeyOrCertificateFails() { 24 | expectThrows( 25 | Exception.class, 26 | () -> new DefaultCertificateManager((KeyPair) null, (X509Certificate) null) 27 | ); 28 | 29 | expectThrows( 30 | Exception.class, 31 | () -> new DefaultCertificateManager().add(null, (X509Certificate) null) 32 | ); 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/variables/SamplingIntervalDiagnosticsArrayType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.variables; 12 | 13 | import java.util.concurrent.CompletableFuture; 14 | 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode; 16 | import org.eclipse.milo.opcua.stack.core.types.structured.SamplingIntervalDiagnosticsDataType; 17 | 18 | public interface SamplingIntervalDiagnosticsArrayType extends BaseDataVariableType { 19 | CompletableFuture getSamplingIntervalDiagnosticsNode(); 20 | 21 | CompletableFuture getSamplingIntervalDiagnostics(); 22 | 23 | CompletableFuture setSamplingIntervalDiagnostics(SamplingIntervalDiagnosticsDataType value); 24 | } 25 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/FiniteStateMachineType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.server.model.types.variables.FiniteStateVariableType; 14 | import org.eclipse.milo.opcua.sdk.server.model.types.variables.FiniteTransitionVariableType; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText; 16 | 17 | public interface FiniteStateMachineType extends StateMachineType { 18 | FiniteTransitionVariableType getLastTransitionNode(); 19 | 20 | LocalizedText getLastTransition(); 21 | 22 | void setLastTransition(LocalizedText value); 23 | 24 | FiniteStateVariableType getCurrentStateNode(); 25 | 26 | LocalizedText getCurrentState(); 27 | 28 | void setCurrentState(LocalizedText value); 29 | } 30 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/ExclusiveLimitAlarmType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | import java.util.concurrent.CompletableFuture; 14 | 15 | import org.eclipse.milo.opcua.sdk.client.model.types.variables.TwoStateVariableType; 16 | import org.eclipse.milo.opcua.stack.core.types.builtin.LocalizedText; 17 | import org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode; 18 | 19 | public interface ExclusiveLimitAlarmType extends LimitAlarmType { 20 | CompletableFuture getActiveStateNode(); 21 | 22 | CompletableFuture getActiveState(); 23 | 24 | CompletableFuture setActiveState(LocalizedText value); 25 | 26 | CompletableFuture getLimitStateNode(); 27 | } 28 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/util/PendingRead.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.util; 12 | 13 | import java.util.concurrent.CompletableFuture; 14 | 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.DataValue; 16 | import org.eclipse.milo.opcua.stack.core.types.structured.ReadValueId; 17 | 18 | public class PendingRead implements Pending { 19 | 20 | private final CompletableFuture future = new CompletableFuture<>(); 21 | 22 | private final ReadValueId id; 23 | 24 | public PendingRead(ReadValueId id) { 25 | this.id = id; 26 | } 27 | 28 | @Override 29 | public ReadValueId getInput() { 30 | return id; 31 | } 32 | 33 | @Override 34 | public CompletableFuture getFuture() { 35 | return future; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/nodes/objects/NamespacesNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.nodes.objects; 12 | 13 | import java.util.concurrent.CompletableFuture; 14 | 15 | import org.eclipse.milo.opcua.sdk.client.OpcUaClient; 16 | import org.eclipse.milo.opcua.sdk.client.model.types.objects.NamespacesType; 17 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 18 | 19 | public class NamespacesNode extends BaseObjectNode implements NamespacesType { 20 | public NamespacesNode(OpcUaClient client, NodeId nodeId) { 21 | super(client, nodeId); 22 | } 23 | 24 | public CompletableFuture getAddressSpaceFileNode() { 25 | return getObjectComponent("http://opcfoundation.org/UA/", "AddressSpaceFile").thenApply(AddressSpaceFileNode.class::cast); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /opc-ua-stack/bsd-parser/bsd-parser-gson/src/main/java/org/eclipse/milo/opcua/binaryschema/gson/JsonBsdParser.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.binaryschema.gson; 12 | 13 | import org.eclipse.milo.opcua.binaryschema.parser.BsdParser; 14 | import org.eclipse.milo.opcua.stack.core.serialization.codecs.OpcUaBinaryDataTypeCodec; 15 | import org.opcfoundation.opcua.binaryschema.EnumeratedType; 16 | import org.opcfoundation.opcua.binaryschema.StructuredType; 17 | 18 | public final class JsonBsdParser extends BsdParser { 19 | 20 | @Override 21 | protected OpcUaBinaryDataTypeCodec getEnumCodec(EnumeratedType enumeratedType) { 22 | return new JsonEnumCodec(); 23 | } 24 | 25 | @Override 26 | protected OpcUaBinaryDataTypeCodec getStructCodec(StructuredType structuredType) { 27 | return new JsonStructureCodec(structuredType); 28 | } 29 | 30 | } 31 | -------------------------------------------------------------------------------- /opc-ua-stack/bsd-parser/bsd-parser-core/src/main/java/org/eclipse/milo/opcua/binaryschema/GenericBsdParser.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.binaryschema; 12 | 13 | import org.eclipse.milo.opcua.binaryschema.parser.BsdParser; 14 | import org.eclipse.milo.opcua.stack.core.serialization.codecs.OpcUaBinaryDataTypeCodec; 15 | import org.opcfoundation.opcua.binaryschema.EnumeratedType; 16 | import org.opcfoundation.opcua.binaryschema.StructuredType; 17 | 18 | public class GenericBsdParser extends BsdParser { 19 | 20 | @Override 21 | protected OpcUaBinaryDataTypeCodec getEnumCodec(EnumeratedType enumeratedType) { 22 | return new GenericEnumCodec(enumeratedType); 23 | } 24 | 25 | @Override 26 | protected OpcUaBinaryDataTypeCodec getStructCodec(StructuredType structuredType) { 27 | return new GenericStructCodec(structuredType); 28 | } 29 | 30 | } 31 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/SessionActivityListener.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client; 12 | 13 | import org.eclipse.milo.opcua.sdk.client.api.UaSession; 14 | 15 | public interface SessionActivityListener { 16 | 17 | /** 18 | * An activated {@link UaSession} is now available. 19 | *

20 | * Holding a reference to this session is not necessary or advised; 21 | * it is provided merely for informational purposes. 22 | */ 23 | default void onSessionActive(UaSession session) {} 24 | 25 | /** 26 | * The previously activated {@link UaSession} is no longer available. 27 | *

28 | * Holding a reference to this session is not necessary or advised; 29 | * it is provided merely for informational purposes. 30 | */ 31 | default void onSessionInactive(UaSession session) {} 32 | 33 | } 34 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-core/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 4.0.0 5 | 6 | 7 | org.eclipse.milo 8 | opc-ua-sdk 9 | 0.3.9-SNAPSHOT 10 | 11 | 12 | sdk-core 13 | 14 | 15 | org.eclipse.milo.opcua.sdk.core 16 | 17 | 18 | 19 | 20 | org.eclipse.milo 21 | stack-core 22 | ${project.version} 23 | 24 | 25 | com.google.code.findbugs 26 | jsr305 27 | ${jsr305.version} 28 | provided 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/main/java/org/eclipse/milo/opcua/stack/core/types/DataTypeEncoding.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.types; 12 | 13 | import org.eclipse.milo.opcua.stack.core.serialization.SerializationContext; 14 | import org.eclipse.milo.opcua.stack.core.types.builtin.ExtensionObject; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 16 | import org.eclipse.milo.opcua.stack.core.types.builtin.QualifiedName; 17 | 18 | public interface DataTypeEncoding { 19 | 20 | QualifiedName getName(); 21 | 22 | ExtensionObject.BodyType getBodyType(); 23 | 24 | Object encode( 25 | SerializationContext context, 26 | Object decodedBody, 27 | NodeId encodingId 28 | ); 29 | 30 | Object decode( 31 | SerializationContext context, 32 | Object encodedBody, 33 | NodeId encodingId 34 | ); 35 | 36 | } 37 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-server/src/main/java/org/eclipse/milo/opcua/stack/server/services/DiscoveryServiceSet.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.server.services; 12 | 13 | import org.eclipse.milo.opcua.stack.core.StatusCodes; 14 | import org.eclipse.milo.opcua.stack.core.UaException; 15 | 16 | public interface DiscoveryServiceSet { 17 | 18 | default void onFindServers(ServiceRequest serviceRequest) throws UaException { 19 | serviceRequest.setServiceFault(StatusCodes.Bad_ServiceUnsupported); 20 | } 21 | 22 | default void onGetEndpoints(ServiceRequest serviceRequest) throws UaException { 23 | serviceRequest.setServiceFault(StatusCodes.Bad_ServiceUnsupported); 24 | } 25 | 26 | default void onRegisterServer(ServiceRequest serviceRequest) throws UaException { 27 | serviceRequest.setServiceFault(StatusCodes.Bad_ServiceUnsupported); 28 | } 29 | 30 | } 31 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/main/java/org/eclipse/milo/opcua/stack/core/UaServiceFaultException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core; 12 | 13 | import org.eclipse.milo.opcua.stack.core.types.structured.ServiceFault; 14 | 15 | public class UaServiceFaultException extends UaException { 16 | 17 | private final ServiceFault serviceFault; 18 | 19 | public UaServiceFaultException(ServiceFault serviceFault) { 20 | super(serviceFault.getResponseHeader().getServiceResult()); 21 | 22 | this.serviceFault = serviceFault; 23 | } 24 | 25 | public UaServiceFaultException(ServiceFault serviceFault, String message) { 26 | super(serviceFault.getResponseHeader().getServiceResult(), message); 27 | 28 | this.serviceFault = serviceFault; 29 | } 30 | 31 | public ServiceFault getServiceFault() { 32 | return serviceFault; 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/main/java/org/eclipse/milo/opcua/stack/core/serialization/UaStructure.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.serialization; 12 | 13 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 14 | 15 | /** 16 | * Identifies a structured type as one of the built-in structured types. 17 | *

18 | * Built-in structures can be serialized and de-serialized by any of the transport encodings regardless of whether or 19 | * not they have a registered DataTypeCodec belonging to a DataTypeDictionary because the stack has special knowledge 20 | * of these types. 21 | *

22 | * This implies that custom user-defined structures should not implement this interface. 23 | */ 24 | public interface UaStructure extends UaSerializable { 25 | 26 | NodeId getTypeId(); 27 | 28 | NodeId getBinaryEncodingId(); 29 | 30 | NodeId getXmlEncodingId(); 31 | 32 | } 33 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/api/DataItem.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.api; 12 | 13 | import org.eclipse.milo.opcua.stack.core.types.builtin.DataValue; 14 | import org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode; 15 | 16 | public interface DataItem extends MonitoredItem { 17 | 18 | /** 19 | * Set the latest sampled value. 20 | * 21 | * @param value the latest sampled value. 22 | */ 23 | void setValue(DataValue value); 24 | 25 | /** 26 | * Apply a new {@link StatusCode} to the last value that passed the filter and then set the derived value. 27 | * 28 | * @param quality the {@link StatusCode} to apply. 29 | */ 30 | void setQuality(StatusCode quality); 31 | 32 | /** 33 | * @return the rate to sample this item at. 34 | */ 35 | double getSamplingInterval(); 36 | 37 | } 38 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/api/nodes/VariableTypeNode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.api.nodes; 12 | 13 | import org.eclipse.milo.opcua.stack.core.types.builtin.DataValue; 14 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.unsigned.UInteger; 16 | 17 | public interface VariableTypeNode extends Node { 18 | 19 | DataValue getValue(); 20 | 21 | NodeId getDataType(); 22 | 23 | Integer getValueRank(); 24 | 25 | UInteger[] getArrayDimensions(); 26 | 27 | Boolean getIsAbstract(); 28 | 29 | void setValue(DataValue value); 30 | 31 | void setDataType(NodeId dataType); 32 | 33 | void setValueRank(Integer valueRank); 34 | 35 | void setArrayDimensions(UInteger[] arrayDimensions); 36 | 37 | void setIsAbstract(Boolean isAbstract); 38 | 39 | } 40 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/AuditSessionEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.core.QualifiedProperty; 14 | import org.eclipse.milo.opcua.sdk.core.ValueRanks; 15 | import org.eclipse.milo.opcua.sdk.server.model.types.variables.PropertyType; 16 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 17 | 18 | public interface AuditSessionEventType extends AuditSecurityEventType { 19 | QualifiedProperty SESSION_ID = new QualifiedProperty<>( 20 | "http://opcfoundation.org/UA/", 21 | "SessionId", 22 | NodeId.parse("ns=0;i=17"), 23 | ValueRanks.Scalar, 24 | NodeId.class 25 | ); 26 | 27 | PropertyType getSessionIdNode(); 28 | 29 | NodeId getSessionId(); 30 | 31 | void setSessionId(NodeId value); 32 | } 33 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/OffNormalAlarmType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.core.QualifiedProperty; 14 | import org.eclipse.milo.opcua.sdk.core.ValueRanks; 15 | import org.eclipse.milo.opcua.sdk.server.model.types.variables.PropertyType; 16 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 17 | 18 | public interface OffNormalAlarmType extends DiscreteAlarmType { 19 | QualifiedProperty NORMAL_STATE = new QualifiedProperty<>( 20 | "http://opcfoundation.org/UA/", 21 | "NormalState", 22 | NodeId.parse("ns=0;i=17"), 23 | ValueRanks.Scalar, 24 | NodeId.class 25 | ); 26 | 27 | PropertyType getNormalStateNode(); 28 | 29 | NodeId getNormalState(); 30 | 31 | void setNormalState(NodeId value); 32 | } 33 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/util/PendingWrite.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.util; 12 | 13 | import java.util.concurrent.CompletableFuture; 14 | 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.StatusCode; 16 | import org.eclipse.milo.opcua.stack.core.types.structured.WriteValue; 17 | 18 | public class PendingWrite implements Pending { 19 | 20 | private final CompletableFuture future = new CompletableFuture<>(); 21 | 22 | private final WriteValue writeValue; 23 | 24 | public PendingWrite(WriteValue writeValue) { 25 | this.writeValue = writeValue; 26 | } 27 | 28 | @Override 29 | public CompletableFuture getFuture() { 30 | return future; 31 | } 32 | 33 | @Override 34 | public WriteValue getInput() { 35 | return writeValue; 36 | } 37 | 38 | } 39 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-client/src/main/java/org/eclipse/milo/opcua/sdk/client/model/types/objects/ExclusiveLimitStateMachineType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.client.model.types.objects; 12 | 13 | import java.util.concurrent.CompletableFuture; 14 | 15 | public interface ExclusiveLimitStateMachineType extends FiniteStateMachineType { 16 | CompletableFuture getHighHighNode(); 17 | 18 | CompletableFuture getHighNode(); 19 | 20 | CompletableFuture getLowNode(); 21 | 22 | CompletableFuture getLowLowNode(); 23 | 24 | CompletableFuture getLowLowToLowNode(); 25 | 26 | CompletableFuture getLowToLowLowNode(); 27 | 28 | CompletableFuture getHighHighToHighNode(); 29 | 30 | CompletableFuture getHighToHighHighNode(); 31 | } 32 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/AuditUrlMismatchEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.core.QualifiedProperty; 14 | import org.eclipse.milo.opcua.sdk.core.ValueRanks; 15 | import org.eclipse.milo.opcua.sdk.server.model.types.variables.PropertyType; 16 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 17 | 18 | public interface AuditUrlMismatchEventType extends AuditCreateSessionEventType { 19 | QualifiedProperty ENDPOINT_URL = new QualifiedProperty<>( 20 | "http://opcfoundation.org/UA/", 21 | "EndpointUrl", 22 | NodeId.parse("ns=0;i=12"), 23 | ValueRanks.Scalar, 24 | String.class 25 | ); 26 | 27 | PropertyType getEndpointUrlNode(); 28 | 29 | String getEndpointUrl(); 30 | 31 | void setEndpointUrl(String value); 32 | } 33 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/AuditHistoryDeleteEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.core.QualifiedProperty; 14 | import org.eclipse.milo.opcua.sdk.core.ValueRanks; 15 | import org.eclipse.milo.opcua.sdk.server.model.types.variables.PropertyType; 16 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 17 | 18 | public interface AuditHistoryDeleteEventType extends AuditHistoryUpdateEventType { 19 | QualifiedProperty UPDATED_NODE = new QualifiedProperty<>( 20 | "http://opcfoundation.org/UA/", 21 | "UpdatedNode", 22 | NodeId.parse("ns=0;i=17"), 23 | ValueRanks.Scalar, 24 | NodeId.class 25 | ); 26 | 27 | PropertyType getUpdatedNodeNode(); 28 | 29 | NodeId getUpdatedNode(); 30 | 31 | void setUpdatedNode(NodeId value); 32 | } 33 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/ExclusiveDeviationAlarmType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.core.QualifiedProperty; 14 | import org.eclipse.milo.opcua.sdk.core.ValueRanks; 15 | import org.eclipse.milo.opcua.sdk.server.model.types.variables.PropertyType; 16 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 17 | 18 | public interface ExclusiveDeviationAlarmType extends ExclusiveLimitAlarmType { 19 | QualifiedProperty SETPOINT_NODE = new QualifiedProperty<>( 20 | "http://opcfoundation.org/UA/", 21 | "SetpointNode", 22 | NodeId.parse("ns=0;i=17"), 23 | ValueRanks.Scalar, 24 | NodeId.class 25 | ); 26 | 27 | PropertyType getSetpointNodeNode(); 28 | 29 | NodeId getSetpointNode(); 30 | 31 | void setSetpointNode(NodeId value); 32 | } 33 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/variables/ConditionVariableType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.variables; 12 | 13 | import org.eclipse.milo.opcua.sdk.core.QualifiedProperty; 14 | import org.eclipse.milo.opcua.sdk.core.ValueRanks; 15 | import org.eclipse.milo.opcua.stack.core.types.builtin.DateTime; 16 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 17 | 18 | public interface ConditionVariableType extends BaseDataVariableType { 19 | QualifiedProperty SOURCE_TIMESTAMP = new QualifiedProperty<>( 20 | "http://opcfoundation.org/UA/", 21 | "SourceTimestamp", 22 | NodeId.parse("ns=0;i=294"), 23 | ValueRanks.Scalar, 24 | DateTime.class 25 | ); 26 | 27 | PropertyType getSourceTimestampNode(); 28 | 29 | DateTime getSourceTimestamp(); 30 | 31 | void setSourceTimestamp(DateTime value); 32 | } 33 | -------------------------------------------------------------------------------- /opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/model/types/objects/AuditChannelEventType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.sdk.server.model.types.objects; 12 | 13 | import org.eclipse.milo.opcua.sdk.core.QualifiedProperty; 14 | import org.eclipse.milo.opcua.sdk.core.ValueRanks; 15 | import org.eclipse.milo.opcua.sdk.server.model.types.variables.PropertyType; 16 | import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; 17 | 18 | public interface AuditChannelEventType extends AuditSecurityEventType { 19 | QualifiedProperty SECURE_CHANNEL_ID = new QualifiedProperty<>( 20 | "http://opcfoundation.org/UA/", 21 | "SecureChannelId", 22 | NodeId.parse("ns=0;i=12"), 23 | ValueRanks.Scalar, 24 | String.class 25 | ); 26 | 27 | PropertyType getSecureChannelIdNode(); 28 | 29 | String getSecureChannelId(); 30 | 31 | void setSecureChannelId(String value); 32 | } 33 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/test/java/org/eclipse/milo/opcua/stack/core/serialization/TestSerializationContext.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.serialization; 12 | 13 | import org.eclipse.milo.opcua.stack.core.NamespaceTable; 14 | import org.eclipse.milo.opcua.stack.core.types.DataTypeManager; 15 | import org.eclipse.milo.opcua.stack.core.types.OpcUaDataTypeManager; 16 | 17 | public class TestSerializationContext implements SerializationContext { 18 | 19 | private final NamespaceTable namespaceTable = new NamespaceTable(); 20 | 21 | @Override 22 | public EncodingLimits getEncodingLimits() { 23 | return EncodingLimits.DEFAULT; 24 | } 25 | 26 | @Override 27 | public NamespaceTable getNamespaceTable() { 28 | return namespaceTable; 29 | } 30 | 31 | @Override 32 | public DataTypeManager getDataTypeManager() { 33 | return OpcUaDataTypeManager.getInstance(); 34 | } 35 | 36 | } 37 | -------------------------------------------------------------------------------- /opc-ua-stack/stack-core/src/test/java/org/eclipse/milo/opcua/stack/core/serialization/binary/StringSerializationTest.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2019 the Eclipse Milo Authors 3 | * 4 | * This program and the accompanying materials are made 5 | * available under the terms of the Eclipse Public License 2.0 6 | * which is available at https://www.eclipse.org/legal/epl-2.0/ 7 | * 8 | * SPDX-License-Identifier: EPL-2.0 9 | */ 10 | 11 | package org.eclipse.milo.opcua.stack.core.serialization.binary; 12 | 13 | import org.testng.annotations.DataProvider; 14 | import org.testng.annotations.Test; 15 | 16 | import static org.testng.Assert.assertEquals; 17 | 18 | public class StringSerializationTest extends BinarySerializationFixture { 19 | 20 | @DataProvider(name = "StringProvider") 21 | public Object[][] getStrings() { 22 | return new Object[][]{ 23 | {null}, 24 | {""}, 25 | {"Hello, world!"}, 26 | {"水Boy"} 27 | }; 28 | } 29 | 30 | @Test(dataProvider = "StringProvider") 31 | public void testStringRoundTrip(String value) { 32 | writer.writeString(value); 33 | String decoded = reader.readString(); 34 | 35 | assertEquals(decoded, value); 36 | } 37 | 38 | } 39 | --------------------------------------------------------------------------------