package org.jtwig.value.context;
import org.jtwig.value.Undefined;
public class IsolateParentValueContext implements ValueContext {
private final ValueContext parent;
private final ValueContext current;
public IsolateParentValueContext(ValueContext parent, ValueContext current) {
this.parent = parent;
this.current = current;
}
@Override
public Object resolve(String key) {
Object value = current.resolve(key);
if (value == Undefined.UNDEFINED) {
return parent.resolve(key);
} else {
return value;
}
}
@Override
public ValueContext with(String key, Object value) {
current.with(key, value);
return this;
}
}