package com.tibco.as.spacebar.ui.adapter;
import org.eclipse.ui.views.properties.IPropertyDescriptor;
import org.eclipse.ui.views.properties.IPropertySource;
import org.eclipse.ui.views.properties.PropertyDescriptor;
import com.tibco.as.spacebar.ui.model.Field;
public class FieldPropertySource implements IPropertySource {
private static final String PROPERTY_NAME = "name";
private static final String PROPERTY_TYPE = "type";
private static final String PROPERTY_NULLABLE = "nullable";
private static final String PROPERTY_ENCRYPTED = "encrytped";
private static final String PROPERTY_KEY = "key";
private static final String PROPERTY_DISTRIBUTION = "distribution";
private Field field;
public FieldPropertySource(Field field) {
this.field = field;
}
@Override
public IPropertyDescriptor[] getPropertyDescriptors() {
return new IPropertyDescriptor[] {
new PropertyDescriptor(PROPERTY_NAME, "Name"),
new PropertyDescriptor(PROPERTY_TYPE, "Type"),
new PropertyDescriptor(PROPERTY_NULLABLE, "Nullable"),
new PropertyDescriptor(PROPERTY_ENCRYPTED, "Encrypted"),
new PropertyDescriptor(PROPERTY_KEY, "Key"),
new PropertyDescriptor(PROPERTY_DISTRIBUTION, "Distribution") };
}
@Override
public Object getPropertyValue(Object name) {
if (PROPERTY_NAME.equals(name)) {
return field.getName();
}
if (PROPERTY_TYPE.equals(name)) {
return field.getType();
}
if (PROPERTY_NULLABLE.equals(name)) {
return field.isNullable();
}
if (PROPERTY_ENCRYPTED.equals(name)) {
return field.isEncrypted();
}
if (PROPERTY_KEY.equals(name)) {
return field.isKey();
}
if (PROPERTY_DISTRIBUTION.equals(name)) {
return field.isDistribution();
}
return null;
}
@Override
public Object getEditableValue() {
return null;
}
@Override
public boolean isPropertySet(Object id) {
return false;
}
@Override
public void resetPropertyValue(Object id) {
}
@Override
public void setPropertyValue(Object id, Object value) {
}
}