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

gw.lang.reflect.PropertyInfoDelegate Maven / Gradle / Ivy

There is a newer version: 1.18.2
Show newest version
/*
 * Copyright 2014 Guidewire Software, Inc.
 */

package gw.lang.reflect;

import java.util.List;

public class PropertyInfoDelegate implements IPropertyInfoDelegate
{
  private final IPropertyInfo _source;
  private final IFeatureInfo _container;
  private final String _name;

  public PropertyInfoDelegate( IFeatureInfo container, IPropertyInfo source )
  {
    this( container, source, source.getName() );
  }

  public PropertyInfoDelegate( IFeatureInfo container, IPropertyInfo source, String name )
  {
    _container = container;
    _source = source;
    _name = name;
  }

  public IType getFeatureType()
  {
    return _source.getFeatureType();
  }

  public boolean isReadable()
  {
    return _source.isReadable();
  }

  public boolean isWritable(IType whosAskin) {
    return _source.isWritable(whosAskin);
  }

  public boolean isWritable()
  {
    return isWritable(null);
  }

  public boolean isStatic()
  {
    return _source.isStatic();
  }

  public IPropertyAccessor getAccessor()
  {
    return _source.getAccessor();
  }

  public IPresentationInfo getPresentationInfo()
  {
    return IPresentationInfo.Default.GET;
  }

  public String getName()
  {
    return _name;
  }

  public String getDisplayName()
  {
    return _source.getDisplayName();
  }

  public String getDescription()
  {
    return _source.getDescription();
  }

  public boolean isHidden()
  {
    return _source.isHidden();
  }

  public boolean isDeprecated()
  {
    return _source.isDeprecated();
  }

  public String getDeprecatedReason() {
    return _source.getDeprecatedReason();
  }

  public boolean isDefaultImpl() {
    return _source.isDefaultImpl();
  }

  public IFeatureInfo getContainer()
  {
    return _container;
  }

  public IType getOwnersType()
  {
    return _container.getOwnersType();
  }

  @SuppressWarnings({"unchecked"})
  public List getAnnotationsOfType( IType type )
  {
    return _source.getAnnotationsOfType( type );
  }

  public boolean hasAnnotation( IType type )
  {
    return _source.hasAnnotation( type );
  }

  public List getAnnotations()
  {
    return _source.getAnnotations();
  }

  public boolean isVisible( IScriptabilityModifier constraint )
  {
    return _source.isVisible( constraint );
  }

  public boolean isScriptable()
  {
    return _source.isScriptable();
  }

  public boolean isAbstract()
  {
    return _source.isAbstract();
  }

  public boolean isFinal()
  {
    return _source.isFinal();
  }

  public IPropertyInfo getSource()
  {
    return _source;
  }

  public List getDeclaredAnnotations()
  {
    return _source.getDeclaredAnnotations();
  }

  @Override
  public IAnnotationInfo getAnnotation( IType type )
  {
    return _source.getAnnotation( type );
  }

  @Override
  public boolean hasDeclaredAnnotation( IType type )
  {
    return _source.hasDeclaredAnnotation( type );
  }

  public boolean isInternal() {
    return _source.isInternal();
  }

  public boolean isPrivate() {
    return _source.isPrivate();
  }

  public boolean isProtected() {
    return _source.isProtected();
  }

  public boolean isPublic() {
    return _source.isPublic();
  }

  @Override
  public String toString() {
    return _source.toString();
  }

  public IPropertyInfo getDelegatePI()
  {
    return _source;
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy