Pchp.Library.Streams.PhpFilter.GetFilter C# (CSharp) Method

GetFilter() static private method

Searches for a filter implementation in the known PhpFilter descendants.
static private GetFilter ( string filter, bool instantiate, PhpFilter &instance, object parameters ) : bool
filter string The name of the filter (may contain wildcards).
instantiate bool true to fille with a new instance of that filter.
instance PhpFilter Filled with a new instance of an implemented filter if .
parameters object Additional parameters for the filter.
return bool
        internal static bool GetFilter(string filter, bool instantiate, out PhpFilter instance, object parameters)
        {
            instance = null;

            foreach (IFilterFactory factory in systemFilters)
                if (factory.GetImplementedFilter(filter, instantiate, out instance, parameters))
                {
                    if (instance != null)
                        instance.FilterName = filter;

                    return true;
                }

            // TODO: the registered filter names may be wildcards - use fnmatch.
            string classname;
            if ((UserFilters != null) && (UserFilters.TryGetValue(filter, out classname)))
            {
                if (instantiate)
                {
                    // EX: [PhpFilter.GetFilter] create a new user filter; and support the WILDCARD naming too.
                }
                return true;
            }
            return false;
        }