Added CRC checks to 2,3 and 4 block PDU messages. Enforcing message validation via the message processor. Updated the P25 Activity Summary to show frequencies in megahertz and to add site aliasing to the summary text.

This commit is contained in:
dennis.sheirer
2014-12-17 02:10:43 +00:00
parent e7b446b3b5
commit 63eaef664b
25 changed files with 467 additions and 75 deletions

View File

@@ -36,30 +36,33 @@ public class P25MessageProcessor implements Listener<Message>
@Override
public void receive( Message message )
{
/* Insert band identifier update messages into channel-type messages */
if( message instanceof IdentifierUpdateReceiver )
if( message.isValid() )
{
IdentifierUpdateReceiver receiver = (IdentifierUpdateReceiver)message;
int[] identifiers = receiver.getIdentifiers();
for( int identifier: identifiers )
/* Insert band identifier update messages into channel-type messages */
if( message instanceof IdentifierUpdateReceiver )
{
receiver.setIdentifierMessage( identifier,
mIdentifierMap.get( identifier ) );
IdentifierUpdateReceiver receiver = (IdentifierUpdateReceiver)message;
int[] identifiers = receiver.getIdentifiers();
for( int identifier: identifiers )
{
receiver.setIdentifierMessage( identifier,
mIdentifierMap.get( identifier ) );
}
}
}
/* Store band identifiers so that they can be injected into channel
* type messages */
if( message instanceof IdentifierUpdate )
{
IdentifierUpdate identifierUpdate = (IdentifierUpdate)message;
/* Store band identifiers so that they can be injected into channel
* type messages */
if( message instanceof IdentifierUpdate )
{
IdentifierUpdate identifierUpdate = (IdentifierUpdate)message;
mIdentifierMap.put( identifierUpdate.getIdentifier(), identifierUpdate );
}
mIdentifierMap.put( identifierUpdate.getIdentifier(), identifierUpdate );
mBroadcaster.broadcast( message );
}
mBroadcaster.broadcast( message );
}
public void dispose()