Example #1
0
        public void EndElement(object ctx, string name)
        {
            CCSAXState curState = stateStack.Count > 0 ? CCSAXState.Dict : CCSAXState.None;
            string     sName    = name;

            if (sName == "dict")
            {
                stateStack.Pop();
                dictStack.Pop();
                if (dictStack.Count > 0)
                {
                    curDict = dictStack.Peek();
                }
            }
            else if (sName == "array")
            {
                stateStack.Pop();
                arrayStack.Pop();
                if (arrayStack.Count > 0)
                {
                    array = arrayStack.Peek();
                }
            }
            else if (sName == "true")
            {
                string str = "1";
                if (CCSAXState.Array == curState)
                {
                    array.Add(str);
                }
                else if (CCSAXState.Dict == curState)
                {
                    curDict.Add(curKey, str);
                }
                //str->release();
            }
            else if (sName == "false")
            {
                string str = "0";
                if (CCSAXState.Array == curState)
                {
                    array.Add(str);
                }
                else if (CCSAXState.Dict == curState)
                {
                    curDict.Add(curKey, str);
                }
                //str->release();
            }
            state = CCSAXState.None;
        }
Example #2
0
        public void endElement(object ctx, string name)
        {
            CCSAXState curState = m_tStateStack.Count > 0 ? CCSAXState.SAX_DICT : m_tStateStack.FirstOrDefault();
            string     sName    = name;

            if (sName == "dict")
            {
                m_tStateStack.Pop();
                m_tDictStack.Pop();
                if (m_tDictStack.Count > 0)
                {
                    m_pCurDict = m_tDictStack.FirstOrDefault();
                }
            }
            else if (sName == "array")
            {
                m_tStateStack.Pop();
                m_tArrayStack.Pop();
                if (m_tArrayStack.Count > 0)
                {
                    m_pArray = m_tArrayStack.FirstOrDefault();
                }
            }
            else if (sName == "true")
            {
                string str = "1";
                if (CCSAXState.SAX_ARRAY == curState)
                {
                    m_pArray.Add(str);
                }
                else if (CCSAXState.SAX_DICT == curState)
                {
                    m_pCurDict.Add(m_sCurKey, str);
                }
                //str->release();
            }
            else if (sName == "false")
            {
                string str = "0";
                if (CCSAXState.SAX_ARRAY == curState)
                {
                    m_pArray.Add(str);
                }
                else if (CCSAXState.SAX_DICT == curState)
                {
                    m_pCurDict.Add(m_sCurKey, str);
                }
                //str->release();
            }
            m_tState = CCSAXState.SAX_NONE;
        }
Example #3
0
        public void endElement(object ctx, string name)
        {
            CCSAXState cCSAXState = (this.m_tStateStack.Count > 0 ? CCSAXState.SAX_DICT : this.m_tStateStack.FirstOrDefault <CCSAXState>());
            string     str        = name;

            if (str == "dict")
            {
                this.m_tStateStack.Pop();
                this.m_tDictStack.Pop();
                if (this.m_tDictStack.Count > 0)
                {
                    this.m_pCurDict = this.m_tDictStack.FirstOrDefault <Dictionary <string, object> >();
                }
            }
            else if (str == "array")
            {
                this.m_tStateStack.Pop();
                this.m_tArrayStack.Pop();
                if (this.m_tArrayStack.Count > 0)
                {
                    this.m_pArray = this.m_tArrayStack.FirstOrDefault <List <object> >();
                }
            }
            else if (str == "true")
            {
                string str1 = "1";
                if (CCSAXState.SAX_ARRAY == cCSAXState)
                {
                    this.m_pArray.Add(str1);
                }
                else if (CCSAXState.SAX_DICT == cCSAXState)
                {
                    this.m_pCurDict.Add(this.m_sCurKey, str1);
                }
            }
            else if (str == "false")
            {
                string str2 = "0";
                if (CCSAXState.SAX_ARRAY == cCSAXState)
                {
                    this.m_pArray.Add(str2);
                }
                else if (CCSAXState.SAX_DICT == cCSAXState)
                {
                    this.m_pCurDict.Add(this.m_sCurKey, str2);
                }
            }
            this.m_tState = CCSAXState.SAX_NONE;
        }
Example #4
0
        public void textHandler(object ctx, byte[] s, int len)
        {
            if (this.m_tState == CCSAXState.SAX_NONE)
            {
                return;
            }
            CCSAXState cCSAXState = (this.m_tStateStack.Count == 0 ? CCSAXState.SAX_DICT : this.m_tStateStack.FirstOrDefault <CCSAXState>());
            string     empty      = string.Empty;

            empty = Encoding.UTF8.GetString(s, 0, len);
            switch (this.m_tState)
            {
            case CCSAXState.SAX_KEY:
            {
                this.m_sCurKey = empty;
                return;
            }

            case CCSAXState.SAX_DICT:
            {
                return;
            }

            case CCSAXState.SAX_INT:
            case CCSAXState.SAX_REAL:
            case CCSAXState.SAX_STRING:
            {
                if (CCSAXState.SAX_ARRAY == cCSAXState)
                {
                    this.m_pArray.Add(empty);
                    return;
                }
                if (CCSAXState.SAX_DICT != cCSAXState)
                {
                    return;
                }
                this.m_pCurDict.Add(this.m_sCurKey, empty);
                return;
            }

            default:
            {
                return;
            }
            }
        }
Example #5
0
        public void textHandler(object ctx, byte[] s, int len)
        {
            if (m_tState == CCSAXState.SAX_NONE)
            {
                return;
            }

            CCSAXState curState  = m_tStateStack.Count == 0 ? CCSAXState.SAX_DICT : m_tStateStack.FirstOrDefault();
            string     m_sString = string.Empty;

            m_sString = System.Text.UTF8Encoding.UTF8.GetString(s, 0, len);

            switch (m_tState)
            {
            case CCSAXState.SAX_KEY:
                m_sCurKey = m_sString;
                break;

            case CCSAXState.SAX_INT:
            case CCSAXState.SAX_REAL:
            case CCSAXState.SAX_STRING:
                Debug.Assert(m_sCurKey.Length > 0, "not found key : <integet/real>");

                if (CCSAXState.SAX_ARRAY == curState)
                {
                    m_pArray.Add(m_sString);
                }
                else if (CCSAXState.SAX_DICT == curState)
                {
                    m_pCurDict.Add(m_sCurKey, m_sString);
                }
                break;

            default:
                break;
            }
            //pText->release();
        }
Example #6
0
        public void TextHandler(object ctx, byte[] s, int len)
        {
            if (m_tState == CCSAXState.None)
            {
                return;
            }

            CCSAXState curState  = m_tStateStack.Count == 0 ? CCSAXState.Dict : m_tStateStack.FirstOrDefault();
            string     m_sString = string.Empty;

            m_sString = System.Text.UTF8Encoding.UTF8.GetString(s, 0, len);

            switch (m_tState)
            {
            case CCSAXState.Key:
                m_sCurKey = m_sString;
                break;

            case CCSAXState.Int:
            case CCSAXState.Real:
            case CCSAXState.String:
                Debug.Assert(m_sCurKey.Length > 0, "not found key : <integet/real>");

                if (CCSAXState.Array == curState)
                {
                    m_pArray.Add(m_sString);
                }
                else if (CCSAXState.Dict == curState)
                {
                    m_pCurDict.Add(m_sCurKey, m_sString);
                }
                break;

            default:
                break;
            }
            //pText->release();
        }
Example #7
0
 public CCDictMaker()
 {
     m_tState = CCSAXState.SAX_NONE;
 }
Example #8
0
        public void StartElement(object ctx, string name, string[] atts)
        {

            string sName = name;
            if (sName == "dict")
            {
                m_pCurDict = new Dictionary<string, Object>();
                if (m_pRootDict == null)
                {
                    m_pRootDict = m_pCurDict;
                }
                m_tState = CCSAXState.SAX_DICT;

                CCSAXState preState = CCSAXState.SAX_NONE;
                if (m_tStateStack.Count != 0)
                {
                    preState = m_tStateStack.FirstOrDefault();
                }

                if (CCSAXState.SAX_ARRAY == preState)
                {
                    // add the dictionary into the array
                    m_pArray.Add(m_pCurDict);
                }
                else if (CCSAXState.SAX_DICT == preState)
                {

                    // add the dictionary into the pre dictionary
                    Debug.Assert(m_tDictStack.Count > 0, "The state is wrong!");
                    Dictionary<string, Object> pPreDict = m_tDictStack.FirstOrDefault();
                    pPreDict.Add(m_sCurKey, m_pCurDict);
                }
                //m_pCurDict->autorelease();

                // record the dict state
                m_tStateStack.Push(m_tState);
                m_tDictStack.Push(m_pCurDict);
            }
            else if (sName == "key")
            {
                m_tState = CCSAXState.SAX_KEY;
            }
            else if (sName == "integer")
            {
                m_tState = CCSAXState.SAX_INT;
            }
            else if (sName == "real")
            {
                m_tState = CCSAXState.SAX_REAL;
            }
            else if (sName == "string")
            {
                m_tState = CCSAXState.SAX_STRING;
            }
            else if (sName == "array")
            {
                m_tState = CCSAXState.SAX_ARRAY;
                m_pArray = new List<Object>();

                CCSAXState preState = m_tStateStack.Count == 0 ? CCSAXState.SAX_DICT : m_tStateStack.FirstOrDefault();
                if (preState == CCSAXState.SAX_DICT)
                {
                    m_pCurDict.Add(m_sCurKey, m_pArray);
                }
                else if (preState == CCSAXState.SAX_ARRAY)
                {
                    Debug.Assert(m_tArrayStack.Count > 0, "The state is worng!");
                    List<Object> pPreArray = m_tArrayStack.FirstOrDefault();
                    pPreArray.Add(m_pArray);
                }
                //m_pArray->release();
                // record the array state
                m_tStateStack.Push(m_tState);
                m_tArrayStack.Push(m_pArray);
            }
            else
            {
                m_tState = CCSAXState.SAX_NONE;
            }
        }
Example #9
0
        public void StartElement(object ctx, string name, string[] atts)
        {
            string sName = name;
            if (sName == "dict")
            {
                curDict = new Dictionary<string, Object>();
                if (rootDict == null)
                {
                    rootDict = curDict;
                }
                state = CCSAXState.Dict;

                CCSAXState preState = CCSAXState.None;
                if (stateStack.Count != 0)
                {
					preState = stateStack.Count > 0 ? stateStack.Peek() : CCSAXState.None;
                }

                if (CCSAXState.Array == preState)
                {
                    // add the dictionary into the array
                    array.Add(curDict);
                }
                else if (CCSAXState.Dict == preState)
                {
                    // add the dictionary into the pre dictionary
                    Debug.Assert(dictStack.Count > 0, "The state is wrong!");
					Dictionary<string, Object> pPreDict = dictStack.Count > 0 ? dictStack.Peek() : null;
                    pPreDict.Add(curKey, curDict);
                }

                // record the dict state
                stateStack.Push(state);
                dictStack.Push(curDict);
            }
            else if (sName == "key")
            {
                state = CCSAXState.Key;
            }
            else if (sName == "integer")
            {
                state = CCSAXState.Int;
            }
            else if (sName == "real")
            {
                state = CCSAXState.Real;
            }
            else if (sName == "string")
            {
                state = CCSAXState.String;
            }
            else if (sName == "array")
            {
                state = CCSAXState.Array;
                array = new List<Object>();

				CCSAXState preState = stateStack.Count == 0 ? CCSAXState.Dict : CCSAXState.None;
                if (preState == CCSAXState.Dict)
                {
                    curDict.Add(curKey, array);
                }
                else if (preState == CCSAXState.Array)
                {
                    Debug.Assert(arrayStack.Count > 0, "The state is worng!");
					List<Object> pPreArray = arrayStack.Count > 0 ? arrayStack.Peek() : null;
                    pPreArray.Add(array);
                }

                // record the array state
                stateStack.Push(state);
                arrayStack.Push(array);
            }
            else
            {
                state = CCSAXState.None;
            }
        }
Example #10
0
 public void EndElement(object ctx, string name)
 {
     CCSAXState curState = m_tStateStack.Count > 0 ? CCSAXState.SAX_DICT : m_tStateStack.FirstOrDefault();
     string sName = name;
     if (sName == "dict")
     {
         m_tStateStack.Pop();
         m_tDictStack.Pop();
         if (m_tDictStack.Count > 0)
         {
             m_pCurDict = m_tDictStack.FirstOrDefault();
         }
     }
     else if (sName == "array")
     {
         m_tStateStack.Pop();
         m_tArrayStack.Pop();
         if (m_tArrayStack.Count > 0)
         {
             m_pArray = m_tArrayStack.FirstOrDefault();
         }
     }
     else if (sName == "true")
     {
         string str = "1";
         if (CCSAXState.SAX_ARRAY == curState)
         {
             m_pArray.Add(str);
         }
         else if (CCSAXState.SAX_DICT == curState)
         {
             m_pCurDict.Add(m_sCurKey, str);
         }
         //str->release();
     }
     else if (sName == "false")
     {
         string str = "0";
         if (CCSAXState.SAX_ARRAY == curState)
         {
             m_pArray.Add(str);
         }
         else if (CCSAXState.SAX_DICT == curState)
         {
             m_pCurDict.Add(m_sCurKey, str);
         }
         //str->release();
     }
     m_tState = CCSAXState.SAX_NONE;
 }
Example #11
0
        public void EndElement(object ctx, string name)
        {
			CCSAXState curState = stateStack.Count > 0 ? CCSAXState.Dict : CCSAXState.None;
            string sName = name;
            if (sName == "dict")
            {
                stateStack.Pop();
                dictStack.Pop();
                if (dictStack.Count > 0)
                {
					curDict = dictStack.Peek();
                }
            }
            else if (sName == "array")
            {
                stateStack.Pop();
                arrayStack.Pop();
                if (arrayStack.Count > 0)
                {
					array = arrayStack.Peek();
                }
            }
            else if (sName == "true")
            {
                string str = "1";
                if (CCSAXState.Array == curState)
                {
                    array.Add(str);
                }
                else if (CCSAXState.Dict == curState)
                {
                    curDict.Add(curKey, str);
                }
                //str->release();
            }
            else if (sName == "false")
            {
                string str = "0";
                if (CCSAXState.Array == curState)
                {
                    array.Add(str);
                }
                else if (CCSAXState.Dict == curState)
                {
                    curDict.Add(curKey, str);
                }
                //str->release();
            }
            state = CCSAXState.None;
        }
Example #12
0
 public CCDictMaker()
 {
     state = CCSAXState.None;
 }
Example #13
0
        public void startElement(object ctx, string name, string[] atts)
        {
            string sName = name;

            if (sName == "dict")
            {
                m_pCurDict = new Dictionary <string, Object>();
                if (m_pRootDict == null)
                {
                    m_pRootDict = m_pCurDict;
                }
                m_tState = CCSAXState.SAX_DICT;

                CCSAXState preState = CCSAXState.SAX_NONE;
                if (m_tStateStack.Count != 0)
                {
                    preState = m_tStateStack.FirstOrDefault();
                }

                if (CCSAXState.SAX_ARRAY == preState)
                {
                    // add the dictionary into the array
                    m_pArray.Add(m_pCurDict);
                }
                else if (CCSAXState.SAX_DICT == preState)
                {
                    // add the dictionary into the pre dictionary
                    Debug.Assert(m_tDictStack.Count > 0, "The state is wrong!");
                    Dictionary <string, Object> pPreDict = m_tDictStack.FirstOrDefault();
                    pPreDict.Add(m_sCurKey, m_pCurDict);
                }
                //m_pCurDict->autorelease();

                // record the dict state
                m_tStateStack.Push(m_tState);
                m_tDictStack.Push(m_pCurDict);
            }
            else if (sName == "key")
            {
                m_tState = CCSAXState.SAX_KEY;
            }
            else if (sName == "integer")
            {
                m_tState = CCSAXState.SAX_INT;
            }
            else if (sName == "real")
            {
                m_tState = CCSAXState.SAX_REAL;
            }
            else if (sName == "string")
            {
                m_tState = CCSAXState.SAX_STRING;
            }
            else if (sName == "array")
            {
                m_tState = CCSAXState.SAX_ARRAY;
                m_pArray = new List <Object>();

                CCSAXState preState = m_tStateStack.Count == 0 ? CCSAXState.SAX_DICT : m_tStateStack.FirstOrDefault();
                if (preState == CCSAXState.SAX_DICT)
                {
                    m_pCurDict.Add(m_sCurKey, m_pArray);
                }
                else if (preState == CCSAXState.SAX_ARRAY)
                {
                    Debug.Assert(m_tArrayStack.Count > 0, "The state is worng!");
                    List <Object> pPreArray = m_tArrayStack.FirstOrDefault();
                    pPreArray.Add(m_pArray);
                }
                //m_pArray->release();
                // record the array state
                m_tStateStack.Push(m_tState);
                m_tArrayStack.Push(m_pArray);
            }
            else
            {
                m_tState = CCSAXState.SAX_NONE;
            }
        }
Example #14
0
 public CCDictMaker()
 {
     m_tState = CCSAXState.SAX_NONE;
 }
Example #15
0
        public void startElement(object ctx, string name, string[] atts)
        {
            string str = name;

            if (str == "dict")
            {
                this.m_pCurDict = new Dictionary <string, object>();
                if (this.m_pRootDict == null)
                {
                    this.m_pRootDict = this.m_pCurDict;
                }
                this.m_tState = CCSAXState.SAX_DICT;
                CCSAXState cCSAXState = CCSAXState.SAX_NONE;
                if (this.m_tStateStack.Count != 0)
                {
                    cCSAXState = this.m_tStateStack.FirstOrDefault <CCSAXState>();
                }
                if (CCSAXState.SAX_ARRAY == cCSAXState)
                {
                    this.m_pArray.Add(this.m_pCurDict);
                }
                else if (CCSAXState.SAX_DICT == cCSAXState)
                {
                    Dictionary <string, object> strs = this.m_tDictStack.FirstOrDefault <Dictionary <string, object> >();
                    strs.Add(this.m_sCurKey, this.m_pCurDict);
                }
                this.m_tStateStack.Push(this.m_tState);
                this.m_tDictStack.Push(this.m_pCurDict);
                return;
            }
            if (str == "key")
            {
                this.m_tState = CCSAXState.SAX_KEY;
                return;
            }
            if (str == "integer")
            {
                this.m_tState = CCSAXState.SAX_INT;
                return;
            }
            if (str == "real")
            {
                this.m_tState = CCSAXState.SAX_REAL;
                return;
            }
            if (str == "string")
            {
                this.m_tState = CCSAXState.SAX_STRING;
                return;
            }
            if (str != "array")
            {
                this.m_tState = CCSAXState.SAX_NONE;
                return;
            }
            this.m_tState = CCSAXState.SAX_ARRAY;
            this.m_pArray = new List <object>();
            CCSAXState cCSAXState1 = (this.m_tStateStack.Count == 0 ? CCSAXState.SAX_DICT : this.m_tStateStack.FirstOrDefault <CCSAXState>());

            if (cCSAXState1 == CCSAXState.SAX_DICT)
            {
                this.m_pCurDict.Add(this.m_sCurKey, this.m_pArray);
            }
            else if (cCSAXState1 == CCSAXState.SAX_ARRAY)
            {
                this.m_tArrayStack.FirstOrDefault <List <object> >().Add(this.m_pArray);
            }
            this.m_tStateStack.Push(this.m_tState);
            this.m_tArrayStack.Push(this.m_pArray);
        }
Example #16
0
 public CCDictMaker()
 {
     state = CCSAXState.None;
 }
Example #17
0
        public void StartElement(object ctx, string name, string[] atts)
        {
            string sName = name;

            if (sName == "dict")
            {
                curDict = new Dictionary <string, Object>();
                if (rootDict == null)
                {
                    rootDict = curDict;
                }
                state = CCSAXState.Dict;

                CCSAXState preState = CCSAXState.None;
                if (stateStack.Count != 0)
                {
                    preState = stateStack.Count > 0 ? stateStack.Peek() : CCSAXState.None;
                }

                if (CCSAXState.Array == preState)
                {
                    // add the dictionary into the array
                    array.Add(curDict);
                }
                else if (CCSAXState.Dict == preState)
                {
                    // add the dictionary into the pre dictionary
                    Debug.Assert(dictStack.Count > 0, "The state is wrong!");
                    Dictionary <string, Object> pPreDict = dictStack.Count > 0 ? dictStack.Peek() : null;
                    pPreDict.Add(curKey, curDict);
                }

                // record the dict state
                stateStack.Push(state);
                dictStack.Push(curDict);
            }
            else if (sName == "key")
            {
                state = CCSAXState.Key;
            }
            else if (sName == "integer")
            {
                state = CCSAXState.Int;
            }
            else if (sName == "real")
            {
                state = CCSAXState.Real;
            }
            else if (sName == "string")
            {
                state = CCSAXState.String;
            }
            else if (sName == "array")
            {
                state = CCSAXState.Array;
                array = new List <Object>();

                CCSAXState preState = stateStack.Count == 0 ? CCSAXState.Dict : CCSAXState.None;
                if (preState == CCSAXState.Dict)
                {
                    curDict.Add(curKey, array);
                }
                else if (preState == CCSAXState.Array)
                {
                    Debug.Assert(arrayStack.Count > 0, "The state is worng!");
                    List <Object> pPreArray = arrayStack.Count > 0 ? arrayStack.Peek() : null;
                    pPreArray.Add(array);
                }

                // record the array state
                stateStack.Push(state);
                arrayStack.Push(array);
            }
            else
            {
                state = CCSAXState.None;
            }
        }