/* * Copyright (c) 2007 Mockito contributors * This program is made available under the terms of the MIT License. */ package org.mockito.internal.util.reflection; import org.mockito.exceptions.base.MockitoException; import java.lang.reflect.Field; public class FieldReader { final Object target; final Field field; final AccessibilityChanger changer = new AccessibilityChanger(); public FieldReader(Object target, Field field) { this.target = target; this.field = field; changer.enableAccess(field); } public boolean isNull() { return read() == null; } public Object read() { try { return field.get(target); } catch (Exception e) { throw new MockitoException("Cannot read state from field: " + field + ", on instance: " + target); } } }