CSharpRTMP.Core.Protocols.Rtsp.BaseRtspAppProtocolHandler.ParseUsersFile C# (CSharp) Method

ParseUsersFile() private method

private ParseUsersFile ( ) : bool
return bool
        private bool ParseUsersFile()
        {
            /*
            //1. get the modification date
            var modificationDate = new FileInfo(_usersFile).LastWriteTime;
        

            //2. Do we need to re-parse everything?
            if (modificationDate == _lastUsersFileUpdate)
                return true;

            //3. Reset realms
            _realms.SetValue();

            Variant users;
            //4. Read users
            if (!ReadLuaFile(_usersFile, "users", users))
            {
                FATAL("Unable to read users file: `%s`", STR(_usersFile));
                _realms.Reset();
                return false;
            }

            FOR_MAP(users, string, Variant, i) {
                if ((VariantType)MAP_VAL(i) != V_STRING)
                {
                    FATAL("Invalid user detected");
                    _realms.Reset();
                    return false;
                }
            }

            //5. read the realms
            Variant realms;
            if (!ReadLuaFile(_usersFile, "realms", realms))
            {
                FATAL("Unable to read users file: `%s`", STR(_usersFile));
                _realms.Reset();
                return false;
            }

            if (realms != V_MAP)
            {
                FATAL("Invalid users file. Realms section is bogus: `%s`", STR(_usersFile));
                _realms.Reset();
                return false;
            }

            FOR_MAP(realms, string, Variant, i) {
                Variant & realm = MAP_VAL(i);
                if ((!realm.HasKeyChain(V_STRING, true, 1, "name"))
                        || ((string)realm["name"] == "")
                        || (!realm.HasKeyChain(V_STRING, true, 1, "method"))
                        || (((string)realm["method"] != "Basic") && ((string)realm["method"] != "Digest"))
                        || (!realm.HasKeyChain(V_MAP, true, 1, "users"))
                        || (realm["users"].MapSize() == 0))
                {
                    FATAL("Invalid users file. Realms section is bogus: `%s`", STR(_usersFile));
                    _realms.Reset();
                    return false;
                }
                _realms[realm["name"]]["name"] = realm["name"];
                _realms[realm["name"]]["method"] = realm["method"];

                FOR_MAP(realm["users"], string, Variant, i) {
                    if (!users.HasKey(MAP_VAL(i)))
                    {
                        FATAL("Invalid users file. Realms section is bogus: `%s`", STR(_usersFile));
                        _realms.Reset();
                        return false;
                    }
                    _realms[realm["name"]]["users"][MAP_VAL(i)] = users[MAP_VAL(i)];
                }
            }

            _lastUsersFileUpdate = modificationDate;
            */
            return true;
        }