package module.decode.p25.reference; public enum ServiceAccessPoint { UNENCRYPTED_USER_DATA( "USER DATA", 0 ), ENCRYPTED_USER_DATA( "ENCRYPTED USER DATA", 1 ), CIRCUIT_DATA( "CIRCUIT DATA", 2 ), CIRCUIT_DATA_CONTROL( "CIRCUIT DATA CONTROL", 3 ), PACKET_DATA( "PACKET DATA", 4 ), ADDRESS_RESOLUTION_PROTOCOL( "ADDRESS RESOLUTION PROTOCOL", 5 ), SNDCP_PACKET_DATA_CONTROL( "SNDCP PACKET DATA CONTROL", 6 ), SAP_7( "7", 7 ), SAP_8( "8", 8 ), SAP_9( "9", 9 ), SAP_10( "10", 10 ), SAP_11( "11", 11 ), SAP_12( "12", 12 ), SAP_13( "13", 13 ), SAP_14( "14", 14 ), SAP_15( "15", 15 ), SAP_16( "16", 16 ), SAP_17( "17", 17 ), SAP_18( "18", 18 ), SAP_19( "19", 19 ), SAP_20( "20", 20 ), SAP_21( "21", 21 ), SAP_22( "22", 22 ), SAP_23( "23", 23 ), SAP_24( "24", 24 ), SAP_25( "25", 25 ), SAP_26( "26", 26 ), SAP_27( "27", 27 ), SAP_28( "28", 28 ), SAP_29( "29", 29 ), SAP_30( "30", 30 ), EXTENDED_ADDRESS( "EXTENDED ADDRESS", 31 ), REGISTRATION_AND_AUTHORIZATION( "REGISTRATION AND AUTHORIZATION", 32 ), CHANNEL_REASSIGNMENT( "CHANNEL REASSIGNMENT", 33 ), SYSTEM_CONFIGURATION( "SYSTEM CONFIGURATION", 34 ), MR_LOOPBACK( "MOBILE RADIO LOOPBACK", 35 ), MR_STATISTICS( "MOBILE RADIO STATISTICS", 36 ), MR_OUT_OF_SERVICE( "MOBILE RADIO OUT OF SERVICE", 37 ), MR_PAGING( "MOBILE RADIO PAGING", 38 ), MR_CONFIGURATION( "MOBILE RADIO CONFIGURATION", 39 ), UNENCRYPTED_KEY_MANAGEMENT_MESSAGE( "UNENCRYPTED KEY MANAGEMENT", 40 ), ENCRYPTED_KEY_MANAGEMENT_MESSAGE( "ENCRYPTED KEY MANAGEMENT", 41 ), SAP_42( "42", 42 ), SAP_43( "43", 43 ), SAP_44( "44", 44 ), SAP_45( "45", 45 ), SAP_46( "46", 46 ), SAP_47( "47", 47 ), SAP_48( "48", 48 ), SAP_49( "49", 49 ), SAP_50( "50", 50 ), SAP_51( "51", 51 ), SAP_52( "52", 52 ), SAP_53( "53", 53 ), SAP_54( "54", 54 ), SAP_55( "55", 55 ), SAP_56( "56", 56 ), SAP_57( "57", 57 ), SAP_58( "58", 58 ), SAP_59( "59", 59 ), SAP_60( "60", 60 ), UNENCRYPTED_TRUNKING_CONTROL( "TRUNKING CONTROL", 61 ), SAP_62( "62", 62 ), ENCRYPTED_TRUNKING_CONTROL( "ENCRYPTED TRUNKING CONTROL", 63 ), UKNOWN( "UNKN", -1 ); private String mLabel; private int mValue; private ServiceAccessPoint( String label, int value ) { mLabel = label; mValue = value; } public String getLabel() { return mLabel; } public int getValue() { return mValue; } public static ServiceAccessPoint fromValue( int value ) { if( 0 <= value && value <= 63 ) { return values()[ value ]; } return UKNOWN; } }