foundSource = true;
}
if (!foundEvents)
{
Method getter = getGetter(context, watchedClass, ref, multiName);
if (getter != null)
{
metaData = getter.getMetaData(BINDABLE);
foundEvents = addBindables(watcher, metaData) || foundEvents;
metaData = getter.getMetaData(CHANGE_EVENT);
foundEvents = addChangeEvents(watcher, metaData) || foundEvents;
metaData = getter.getMetaData(NON_COMMITTING_CHANGE_EVENT);
foundEvents = addNonCommittingChangeEvents( watcher, metaData) || foundEvents;
checkForStaticProperty(getter.isStatic(), watcher, srcTypeName);
foundSource = true;
}
Method setter = getSetter(context, watchedClass, ref, multiName);
if (setter != null)
{
metaData = setter.getMetaData(BINDABLE);
foundEvents = addBindables(watcher, metaData) || foundEvents;
metaData = setter.getMetaData(CHANGE_EVENT);
foundEvents = addChangeEvents(watcher, metaData) || foundEvents;
metaData = setter.getMetaData(NON_COMMITTING_CHANGE_EVENT);
foundEvents = addNonCommittingChangeEvents(watcher, metaData) || foundEvents;
checkForStaticProperty(setter.isStatic(), watcher, srcTypeName);
foundSource = true;
}
else
{
if (getter != null)
{
// getters without setters are de facto const, use same bypass as above for const vars
foundEvents = true;
}
}
}
if (!foundSource)
{
Method function = getMethod(context, watchedClass, ref, multiName);
if (function != null)
{
metaData = function.getMetaData(BINDABLE);
foundEvents = addBindables(watcher, metaData) || foundEvents;
metaData = function.getMetaData(CHANGE_EVENT);
foundEvents = addChangeEvents(watcher, metaData) || foundEvents;
metaData = function.getMetaData(NON_COMMITTING_CHANGE_EVENT);
foundEvents = addNonCommittingChangeEvents(watcher, metaData) || foundEvents;
foundSource = true;
if (!foundEvents && callExpressionStack.isEmpty())
{