public ParameterLog GetStatus()

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 };
            }
        }