public abstract class AbstractNetworkTableEntryStore extends java.lang.Object implements IncomingEntryReceiver
Modifier and Type | Class and Description |
---|---|
static interface |
AbstractNetworkTableEntryStore.TableListenerManager
An object that handles firing Table Listeners
|
Modifier and Type | Field and Description |
---|---|
protected CharacterArrayMap |
idEntries |
protected OutgoingEntryReceiver |
incomingReceiver |
protected AbstractNetworkTableEntryStore.TableListenerManager |
listenerManager |
protected java.util.Hashtable |
namedEntries |
protected OutgoingEntryReceiver |
outgoingReceiver |
NULL
Modifier | Constructor and Description |
---|---|
protected |
AbstractNetworkTableEntryStore(AbstractNetworkTableEntryStore.TableListenerManager listenerManager) |
Modifier and Type | Method and Description |
---|---|
protected abstract boolean |
addEntry(NetworkTableEntry entry) |
void |
clearEntries()
Remove all entries
NOTE: This method should not be used with applications which cache entries which would lead to unknown results
This method is for use in testing only
|
void |
clearIds()
clear the id's of all entries
|
NetworkTableEntry |
getEntry(char entryId)
Get an entry based on it's id
|
NetworkTableEntry |
getEntry(java.lang.String name)
Get an entry based on it's name
|
List |
keys()
Get an entry based on it's name
|
void |
notifyEntries(ITable table,
ITableListener listener)
Called to say that a listener should notify the listener manager of all of the entries
|
void |
offerIncomingAssignment(NetworkTableEntry entry) |
void |
offerIncomingUpdate(NetworkTableEntry entry,
char sequenceNumber,
java.lang.Object value) |
void |
putOutgoing(NetworkTableEntry tableEntry,
java.lang.Object value) |
void |
putOutgoing(java.lang.String name,
NetworkTableEntryType type,
java.lang.Object value)
Stores the given value under the given name and queues it for
transmission to the server.
|
void |
setIncomingReceiver(OutgoingEntryReceiver receiver) |
void |
setOutgoingReceiver(OutgoingEntryReceiver receiver) |
protected abstract boolean |
updateEntry(NetworkTableEntry entry,
char sequenceNumber,
java.lang.Object value) |
protected final CharacterArrayMap idEntries
protected final java.util.Hashtable namedEntries
protected final AbstractNetworkTableEntryStore.TableListenerManager listenerManager
protected OutgoingEntryReceiver outgoingReceiver
protected OutgoingEntryReceiver incomingReceiver
protected AbstractNetworkTableEntryStore(AbstractNetworkTableEntryStore.TableListenerManager listenerManager)
public NetworkTableEntry getEntry(char entryId)
entryId
- the id f the entry to look forpublic NetworkTableEntry getEntry(java.lang.String name)
name
- the name of the entry to look forpublic List keys()
name
- the name of the entry to look forpublic void clearEntries()
public void clearIds()
public void setOutgoingReceiver(OutgoingEntryReceiver receiver)
public void setIncomingReceiver(OutgoingEntryReceiver receiver)
protected abstract boolean addEntry(NetworkTableEntry entry)
protected abstract boolean updateEntry(NetworkTableEntry entry, char sequenceNumber, java.lang.Object value)
public void putOutgoing(java.lang.String name, NetworkTableEntryType type, java.lang.Object value) throws TableKeyExistsWithDifferentTypeException
name
- The name under which to store the given value.type
- The type of the given value.value
- The value to store.TableKeyExistsWithDifferentTypeException
- Thrown if an
entry already exists with the given name and is of a different type.public void putOutgoing(NetworkTableEntry tableEntry, java.lang.Object value)
public void offerIncomingAssignment(NetworkTableEntry entry)
offerIncomingAssignment
in interface IncomingEntryReceiver
public void offerIncomingUpdate(NetworkTableEntry entry, char sequenceNumber, java.lang.Object value)
offerIncomingUpdate
in interface IncomingEntryReceiver
public void notifyEntries(ITable table, ITableListener listener)
listener
- table
-