class FieldAccessor {

    public TYPE get() {
        TYPE ret = null;
        Object object = viewWeakReference.get();
        if (object != null) {
            field.setAccessible(true);
            try {
                Object returnedObject = field.get(object);
                if (clazz.isInstance(returnedObject)) {
                    ret = clazz.cast(returnedObject);
                }
            } catch (IllegalAccessException e) {
                Log.w(TAG, "Illegal access", e);
            }
        }
        return ret;
    }

    public  FieldAccessor(Object object, String name, Class<TYPE> clazz);

}