code: public static Object getProperty(Object obj, String name) {
  		if (obj == null || name == null)
  			return null;
  
  		String[] names = name.split("\\.");
  		if (names == null || names.length == 0)
  			return null;
  
  		return performGetProperty(obj, names, 0);
  	}
docs: Recursively gets value of object or its subobjects property specified by its
  name.
  
  The object can be a user defined object, map or array. The property name
  correspondently must be object property, map key or array index.
  
  @param obj  an object to read property from.
  @param name a name of the property to get.
  @return the property value or null if property doesn't exist or introspection
  failed.