in src/Microsoft.Azure.WebJobs.Host/Bindings/Runtime/RuntimeBindingWatcher.cs [24:73]
public ParameterLog GetStatus()
{
lock (_itemsLock)
{
if (_items.Count == 0)
{
return null;
}
List<BinderParameterLogItem> logItems = new List<BinderParameterLogItem>();
foreach (Tuple<ParameterDescriptor, string, IWatchable> item in _items)
{
ParameterDescriptor parameterDescriptor = item.Item1;
string value = item.Item2;
IWatchable watchable = item.Item3;
IWatcher watcher;
if (watchable != null)
{
watcher = watchable.Watcher;
}
else
{
watcher = null;
}
ParameterLog itemStatus;
if (watcher != null)
{
itemStatus = watcher.GetStatus();
}
else
{
itemStatus = null;
}
BinderParameterLogItem logItem = new BinderParameterLogItem
{
Descriptor = parameterDescriptor,
Value = value,
Log = itemStatus
};
logItems.Add(logItem);
}
return new BinderParameterLog { Items = logItems };
}
}