code: private <T> T getCompatibleProperty(String propertyName, Class<T> expectedClass, String exceptionMessage) throws JSONException {
  		return getCompatibleProperty(propertyName, expectedClass, exceptionMessage, this.apsDictionary);
  	}
docs: Get the value of a given property, but only if it is of the expected class.
  If the value exists but is of a different class than expected, an
  exception is thrown.
  
  This method simply invokes the other getCompatibleProperty method with the root aps dictionary.
  
  
  @param <T> the property value's class
  @param propertyName the name of the property to get
  @param expectedClass the property value's expected (required) class
  @param exceptionMessage the exception message to throw if the value is not of the expected class
  @return the property's value
  @throws JSONException