public void UpdateNameList() { LinkMgrClass link_list_mgr = this.fabricRootObject.LinkMgrObject(); int max_index = link_list_mgr.ListMgr().MaxIndex(); PhwangUtils.ListEntryClass[] list_entry_array = link_list_mgr.ListMgr().EntryTableArray(); this.nameListTag++; if (this.nameListTag > NAME_LIST_CLASS_MAX_NAME_LIST_TAG) { this.nameListTag = 1; } this.nameListTagStr = PhwangUtils.EncodeNumberClass.EncodeNumber(this.nameListTag, NAME_LIST_CLASS_NAME_LIST_TAG_SIZE); this.nameList = ""; for (int i = max_index; i >= 0; i--) { if (list_entry_array[i] != null) { if (this.nameList.Length == 0) { this.nameList = PhwangUtils.EncodeNumberClass.EncodeNumber(this.nameListTag, NAME_LIST_CLASS_NAME_LIST_TAG_SIZE); } else { this.nameList = this.nameList + ","; } LinkClass link = (LinkClass)list_entry_array[i].Data(); this.nameList = this.nameList + '"' + link.MyName() + '"'; } } this.debugIt(true, "updateNameList", this.nameList); }
private bool CompareMyNameFunc(object object_val, string my_name_val) { LinkClass link = (LinkClass)object_val; return(link.MyName() == my_name_val); }
private string processSetupSessionRequest(string input_data_val) { this.debugIt(true, "processSetupSessionRequest", "input_data_val = " + input_data_val); SetupSessionRequestFormat format_data; using (var ms = new MemoryStream(Encoding.Unicode.GetBytes(input_data_val))) { DataContractJsonSerializer deseralizer = new DataContractJsonSerializer(typeof(SetupSessionRequestFormat)); format_data = (SetupSessionRequestFormat)deseralizer.ReadObject(ms);// //反序列化ReadObject this.debugIt(true, "processSetupSessionRequest", "link_id = " + format_data.link_id); this.debugIt(true, "processSetupSessionRequest", "his_name = " + format_data.his_name); this.debugIt(true, "processSetupSessionRequest", "theme_data = " + format_data.theme_data); } string theme_id_str = format_data.theme_data.Substring(0, Protocols.FabricFrontEndProtocolClass.BROWSER_THEME_ID_SIZE); string theme_data = format_data.theme_data.Substring(Protocols.FabricFrontEndProtocolClass.BROWSER_THEME_ID_SIZE); LinkClass link = this.LinkMgrObject().GetLinkByIdStr(format_data.link_id); SessionClass session = link.MallocSession(); session.SetBrowserThemeIdStr(theme_id_str); GroupClass group = this.GroupMgrObject().MallocGroup(theme_data); if (group == null) { return(this.errorProcessSetupSession(format_data.link_id, "null group")); } group.InsertSession(session); session.BindGroup(group); if (format_data.his_name == link.MyName()) { this.mallocRoom(group, theme_data); } else { LinkClass his_link = this.LinkMgrObject().GetLinkByMyName(format_data.his_name); if (his_link == null) { return(this.errorProcessSetupSession(format_data.link_id, "his_link does not exist")); } SessionClass his_session = his_link.MallocSession(); if (his_session == null) { return(this.errorProcessSetupSession(format_data.link_id, "null his_session")); } group.InsertSession(his_session); his_session.BindGroup(group); his_link.SetPendingSessionSetup(his_link.LinkIdStr() + his_session.SessionIdStr(), theme_data); } //char* data_ptr; //char* downlink_data = data_ptr = (char*)phwangMalloc(LINK_MGR_DATA_BUFFER_SIZE + 4, "DFS1"); //*data_ptr++ = WEB_FABRIC_PROTOCOL_RESPOND_IS_SETUP_SESSION; //memcpy(data_ptr, ajax_id, WEB_FABRIC_PROTOCOL_AJAX_ID_SIZE); //data_ptr += WEB_FABRIC_PROTOCOL_AJAX_ID_SIZE; //strcpy(data_ptr, session->sessionIdIndex()); //this->transmitFunction(tp_transfer_object_val, downlink_data); string response_data = this.dFabricResponseObject.GenerateSetupSessionResponse(link.LinkIdStr(), session.SessionIdStr()); return(response_data); }
private string processSetupLinkRequest(string input_data_val) { this.debugIt(true, "processSetupLinkRequest", "input_data_val = " + input_data_val); SetupLinkRequestFormatClass format_data; using (var ms = new MemoryStream(Encoding.Unicode.GetBytes(input_data_val))) { DataContractJsonSerializer deseralizer = new DataContractJsonSerializer(typeof(SetupLinkRequestFormatClass)); format_data = (SetupLinkRequestFormatClass)deseralizer.ReadObject(ms);// //反序列化ReadObject this.debugIt(true, "processSetupLinkRequest", "my_name = " + format_data.my_name); this.debugIt(true, "processSetupLinkRequest", "password = " + format_data.password); } LinkClass link = this.LinkMgrObject().MallocLink(format_data.my_name); string response_data = this.dFabricResponseObject.GenerateSetupLinkResponse(link.LinkIdStr(), link.MyName()); return(response_data); }