return hasLocalDependencies;
}
@Override
public Object getValue(PropertyReference expr) throws QuickFixException {
AuraContext context = Aura.getContextService().getCurrentContext();
BaseComponent<?, ?> oldComponent = context.setCurrentComponent(this);
try {
String prefix = expr.getRoot();
if ("c".equals(prefix)) {
prefix.toString();
}
PropertyReference stem = expr.getStem();
Object root = valueProviders.get(prefix);
if (root == null) {
ValueProviderType vpt = ValueProviderType.getTypeByPrefix(prefix);
if (vpt != null) {
root = context.getGlobalProviders().get(vpt);
}
}
if (root != null) {
if (stem != null) {
if (root instanceof ValueProvider) {
return ((ValueProvider) root).getValue(stem);
} else {
return JavaModel.getValue(root, stem, null);
// no throw error at runtime even though expression
// reference nothing
// return null;
}
} else {
// they asked for just the root.
// TODO: this should only work for foreach, shouldn't be
// able to {!m}
return root;
}
}
return null;
} finally {
context.setCurrentComponent(oldComponent);
}
}