Add support for source-specific VVM state in VoicemailContract

Negative values of the field CONFIGURATION_STATE, DATA_CHANNEL_STATE,
NOTIFICATION_CHANNEL_STATE is reserved to voicemail source for its'
specific errors. SOURCE_TYPE can be set to help interpret the error
codes.

Typically the OMTP visual voicemail source will set SOURCE_TYPE to the
same value of visual voicemail type set with 
CarrierConfigManager.KEY_VVM_TYPE_STRING, such as "vvm_type_omtp".

For example, the OMTP visual voicemail source could set 
CONFIGURAITON_STATE to -5 and SOURCE_TYPE to "vvm_type_foo", and the
client can find -5 for "vvm_type_foo" means "PIN is not set by the user"

+ Field SOURCE_TYPE
+ Docs to specify negative values are reserved for the source
- Removed hidden helper method SetStatus() and SetQuota(). The 'ignore'
  value is conflicting with reserved values.

Bug:26944391
Change-Id: I0930f684dadd25ae94e3ea68a7658c7ae423e3e3
4 files changed