.orElse(NodeClass.Unspecified);
boolean forward = gReference.isIsForward();
ReferenceType reference = referenceBuilder.buildReference(
sourceNodeId, referenceTypeId, new ExpandedNodeId(targetNodeId), targetNodeClass, forward);
/*
* Create the inverse of the reference...
*/
NodeClass sourceNodeClass = nodeSet.getUAObjectOrUAVariableOrUAMethod().stream()
.filter(gNode -> gNode.getNodeId().equals(sourceNodeId.toString()))
.findFirst()
.map(this::nodeClass)
.orElse(NodeClass.Unspecified);
ReferenceType inverseReference = referenceBuilder.buildReference(
targetNodeId, referenceTypeId, new ExpandedNodeId(sourceNodeId), sourceNodeClass, !forward);
Map<NodeId, ReferenceType> references = new HashMap<>(2);
references.put(sourceNodeId, reference);
references.put(NodeId.parseNodeId(gReference.getValue()), inverseReference);
return references;