コード例 #1
0
        public bool Remove(UUID sessionID, KnownUserSessionInfoVariables varid)
        {
            string assoc;
            string varname;

            return(UserSessionInfo.TryGetVarInfo(varid, out assoc, out varname) && Remove(sessionID, assoc, varname));
        }
コード例 #2
0
        public bool ContainsKey(KnownUserSessionInfoVariables varid)
        {
            string assoc;
            string varname;

            return(TryGetVarInfo(varid, out assoc, out varname) && ContainsKey(assoc, varname));
        }
コード例 #3
0
        public bool TryGetValue(KnownUserSessionInfoVariables varid, out UUID id)
        {
            id = default(UUID);
            string val;

            return(TryGetValue(varid, out val) && UUID.TryParse(val, out id));
        }
コード例 #4
0
        public string this[UUID sessionID, KnownUserSessionInfoVariables varid]
        {
            get
            {
                string assoc;
                string varname;
                string value;
                if (!UserSessionInfo.TryGetVarInfo(varid, out assoc, out varname) ||
                    !TryGetValue(sessionID, assoc, varname, out value))
                {
                    throw new KeyNotFoundException();
                }
                return(value);
            }

            set
            {
                string assoc;
                string varname;
                if (!UserSessionInfo.TryGetVarInfo(varid, out assoc, out varname))
                {
                    throw new KeyNotFoundException();
                }
                this[sessionID, assoc, varname] = value;
            }
        }
コード例 #5
0
        public bool TryGetValue(KnownUserSessionInfoVariables varid, out Entry val)
        {
            val = default(Entry);
            string assoc;
            string varname;

            return(TryGetVarInfo(varid, out assoc, out varname) && TryGetValue(assoc, varname, out val));
        }
コード例 #6
0
        public bool TryGetValue(UUID sessionID, KnownUserSessionInfoVariables varid, out UserSessionInfo.Entry value)
        {
            value = default(UserSessionInfo.Entry);
            string assoc;
            string varname;

            return(UserSessionInfo.TryGetVarInfo(varid, out assoc, out varname) && TryGetValue(sessionID, assoc, varname, out value));
        }
コード例 #7
0
        public bool TryGetValueExtendLifetime(UUID sessionID, KnownUserSessionInfoVariables varid, TimeSpan span, out UserSessionInfo.Entry value)
        {
            string assoc;
            string varname;

            value = default(UserSessionInfo.Entry);
            return(UserSessionInfo.TryGetVarInfo(varid, out assoc, out varname) && TryGetValueExtendLifetime(sessionID, assoc, varname, span, out value));
        }
コード例 #8
0
        public void SetExpiringValue(UUID sessionID, KnownUserSessionInfoVariables varid, string value, TimeSpan span)
        {
            string assoc;
            string varname;

            if (!UserSessionInfo.TryGetVarInfo(varid, out assoc, out varname))
            {
                throw new ArgumentOutOfRangeException(nameof(varid));
            }
            SetExpiringValue(sessionID, assoc, varname, value, span);
        }
コード例 #9
0
 public string this[KnownUserSessionInfoVariables varid]
 {
     get
     {
         Entry value;
         if (!TryGetValue(varid, out value))
         {
             throw new KeyNotFoundException();
         }
         return(value.Value);
     }
 }
コード例 #10
0
        public static bool TryGetVarInfo(KnownUserSessionInfoVariables varid, out string fullvarname)
        {
            fullvarname = default(string);
            string assoc;
            string varname;
            bool   r = TryGetVarInfo(varid, out assoc, out varname);

            if (r)
            {
                fullvarname = $"{assoc}/{varname}";
            }
            return(r);
        }
コード例 #11
0
 private static void AddVar(KnownUserSessionInfoVariables varid, string assoc, string varname)
 {
     m_AssocDict.Add(varid, assoc);
     m_NameDict.Add(varid, varname);
 }
コード例 #12
0
 public static bool TryGetVarInfo(KnownUserSessionInfoVariables varid, out string assoc, out string varname)
 {
     varname = default(string);
     return(m_AssocDict.TryGetValue(varid, out assoc) && m_NameDict.TryGetValue(varid, out varname));
 }