All Downloads are FREE. Search and download functionalities are using the official Maven repository.

mockit.internal.injection.constructor.ConstructorParameter Maven / Gradle / Ivy

/*
 * Copyright (c) 2006 JMockit developers
 * This file is subject to the terms of the MIT license (see LICENSE.txt).
 */
package mockit.internal.injection.constructor;

import java.lang.annotation.*;
import java.lang.reflect.*;
import javax.annotation.*;

import mockit.internal.injection.*;
import static mockit.internal.util.Utilities.*;

final class ConstructorParameter extends InjectionProvider
{
   @Nonnull private final Class classOfDeclaredType;
   @Nonnull private final Annotation[] annotations;
   @Nullable private final Object value;

   ConstructorParameter(@Nonnull Type declaredType, @Nonnull Annotation[] annotations, @Nonnull String name, @Nullable Object value) {
      super(declaredType, name);
      classOfDeclaredType = getClassType(declaredType);
      this.annotations = annotations;
      this.value = value;
   }

   @Nonnull @Override public Class getClassOfDeclaredType() { return classOfDeclaredType; }
   @Nonnull @Override public Annotation[] getAnnotations() { return annotations; }
   @Nullable @Override public Object getValue(@Nullable Object owner) { return value; }

   @Override
   public String toString() { return "parameter " + super.toString(); }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy