/* * Copyright (C) 2006-2016 DLR, Germany * * All rights reserved * * http://www.rcenvironment.de/ */ package de.rcenvironment.core.communication.nodeproperties; import de.rcenvironment.core.communication.common.InstanceNodeSessionId; import de.rcenvironment.core.communication.nodeproperties.internal.NodePropertyImpl; /** * Minimal interface to access a single distributed node property. * * IMPORTANT: Two {@link NodePropertyImpl} instances are considered "equal" if their composite key is the same, ie they define the same * property of the same node. This is intended to support common set operations, but has the side effect that "equals" cannot be used to * check for equal sequence numbers and/or values. * * @author Robert Mischke */ public interface NodeProperty { /** * @return the {@link InstanceNodeSessionId} of this property's publisher, in string form */ String getInstanceNodeSessionIdString(); /** * @return the {@link InstanceNodeSessionId} of this property's publisher, in object form */ InstanceNodeSessionId getInstanceNodeSessionId(); /** * @return the property key */ String getKey(); /** * @return the property value */ String getValue(); /** * @return the sequential number of this property update, as set by the publisher; note that simultaneous updates of different * properties may share the same sequence number */ long getSequenceNo(); }