void IClassifiedsInterface.Update(ProfileClassified c) { var replaceVals = new Dictionary <string, object> { ["classifieduuid"] = c.ClassifiedID, ["creatoruuid"] = c.Creator.ID, ["creationdate"] = c.CreationDate, ["expirationdate"] = c.ExpirationDate, ["category"] = c.Category, ["name"] = c.Name, ["description"] = c.Description, ["parceluuid"] = c.ParcelID, ["parentestate"] = c.ParentEstate, ["snapshotuuid"] = c.SnapshotID, ["simname"] = c.SimName, ["posglobal"] = c.GlobalPos, ["parcelname"] = c.ParcelName, ["classifiedflags"] = c.Flags, ["priceforlisting"] = c.Price }; using (var conn = new MySqlConnection()) { conn.Open(); conn.ReplaceInto("classifieds", replaceVals); } }
public bool TryGetValue(UGUI user, UUID id, out ProfileClassified classified) { classified = default(ProfileClassified); RwLockedDictionary <UUID, ProfileClassified> classifieds; return(m_Classifieds.TryGetValue(user.ID, out classifieds) && classifieds.TryGetValue(id, out classified)); }
private void HandleClassifiedInfoRequest(ViewerAgent agent, SceneInterface scene, Message m) { var req = (ClassifiedInfoRequest)m; if (req.AgentID != req.CircuitAgentID || req.SessionID != req.CircuitSessionID) { return; } KeyValuePair <UGUI, int> kvp; if (!m_ClassifiedQueryCache.TryGetValue(req.ClassifiedID, out kvp)) { return; } ProfileServiceData serviceData; UGUI uui; try { serviceData = LookupProfileService(scene, kvp.Key.ID, out uui); } catch { return; } try { ProfileClassified cls = serviceData.ProfileService.Classifieds[kvp.Key, req.ClassifiedID]; var reply = new ClassifiedInfoReply { AgentID = req.AgentID, ClassifiedID = cls.ClassifiedID, CreatorID = cls.Creator.ID, CreationDate = cls.CreationDate, ExpirationDate = cls.ExpirationDate, Category = cls.Category, Name = cls.Name, Description = cls.Description, ParcelID = cls.ParcelID, ParentEstate = cls.ParentEstate, SnapshotID = cls.SnapshotID, SimName = cls.SimName, PosGlobal = cls.GlobalPos, ParcelName = cls.ParcelName, ClassifiedFlags = cls.Flags, PriceForListing = cls.Price }; agent.SendMessageAlways(reply, scene.ID); } catch { /* do not expose exceptions to caller */ } }
bool IClassifiedsInterface.TryGetValue(UGUI user, UUID id, out ProfileClassified classified) { using (var conn = new MySqlConnection(m_ConnectionString)) { conn.Open(); using (var cmd = new MySqlCommand("SELECT * FROM classifieds WHERE classifieduuid = @uuid LIMIT 1", conn)) { cmd.Parameters.AddParameter("@uuid", id); using (MySqlDataReader reader = cmd.ExecuteReader()) { if (reader.Read()) { classified = new ProfileClassified { ClassifiedID = reader.GetUUID("classifieduuid"), Category = reader.GetInt32("category"), CreationDate = reader.GetDate("creationdate"), Creator = reader.GetUGUI("creatoruuid"), Description = reader.GetString("description"), ExpirationDate = reader.GetDate("expirationdate"), Flags = reader.GetByte("classifiedflags"), GlobalPos = reader.GetVector3("posglobal"), Name = reader.GetString("name"), ParcelID = reader.GetParcelID("parceluuid"), ParcelName = reader.GetString("parcelname"), ParentEstate = reader.GetInt32("parentestate"), Price = reader.GetInt32("priceforlisting"), SimName = reader.GetString("simname"), SnapshotID = reader.GetUUID("snapshotuuid") }; return(true); } } } } classified = default(ProfileClassified); return(false); }
public void Update(ProfileClassified classified) { m_Classifieds[classified.Creator.ID][classified.ClassifiedID] = classified; }
public bool TryGetValue(UGUI user, UUID id, out ProfileClassified classified) { classified = default(ProfileClassified); return(false); }
public void Update(ProfileClassified classified) { throw new NotSupportedException(); }