public AssetBase GetMeta(UUID uuid) { DataReaderConnection dr = null; try { dr = m_Gd.QueryData("where id = '" + uuid + "' LIMIT 1", "assets", "id, name, description, assetType, local, temporary, asset_flags, creatorID"); while (dr.DataReader.Read()) { return(LoadAssetFromDataRead(dr.DataReader)); } if (MainConsole.Instance != null) { MainConsole.Instance.WarnFormat("[LocalAssetDatabase] GetMeta({0}) - Asset UUID was not found.", uuid); } } catch (Exception e) { if (MainConsole.Instance != null) { MainConsole.Instance.Error("[LocalAssetDatabase]: Failed to fetch asset " + uuid + ", " + e); } } finally { if (dr != null) { m_Gd.CloseDatabase(dr); } } return(null); }
public List <InventoryItemBase> GetItems(string[] fields, string[] vals) { string query = ""; for (int i = 0; i < fields.Length; i++) { query += String.Format("where {0} = '{1}' and ", fields[i], vals[i]); i++; } query = query.Remove(query.Length - 5); using (IDataReader reader = GD.QueryData(query, m_itemsrealm, "*")) { try { return(ParseInventoryItems(reader)); } catch { } finally { try { if (reader != null) { reader.Close(); reader.Dispose(); } } catch { } GD.CloseDatabase(); } } return(null); }
public List <SchedulerItem> ToRun() { List <SchedulerItem> returnValue = new List <SchedulerItem>(); DataReaderConnection dr = null; try { dr = m_Gd.QueryData( "WHERE enabled = 1 AND runs_next < '" + DateTime.UtcNow.ToString("yyyy-MM-dd HH:mm") + "' ORDER BY runs_next desc", "scheduler", string.Join(", ", theFields)); if (dr != null && dr.DataReader != null) { while (dr.DataReader.Read()) { returnValue.Add(LoadFromDataReader(dr.DataReader)); } } } catch { } finally { m_Gd.CloseDatabase(dr); } return(returnValue); }
/// <summary> /// Returns a list object of AvatarArchives. This is being used for WebUI /// </summary> /// <param name = "Public"></param> /// <returns></returns> public List <AvatarArchive> GetAvatarArchives(bool isPublic) { List <AvatarArchive> returnValue = new List <AvatarArchive>(); try { IDataReader RetVal = GD.QueryData("where IsPublic = 1", "avatararchives", "Name, Snapshot, IsPublic"); while (RetVal.Read()) { AvatarArchive Archive = new AvatarArchive { Name = RetVal["Name"].ToString(), Snapshot = RetVal["Snapshot"].ToString(), IsPublic = int.Parse(RetVal["IsPublic"].ToString()) }; returnValue.Add(Archive); } RetVal.Close(); RetVal.Dispose(); } catch { } GD.CloseDatabase(); return(returnValue); }
/// <summary> /// Returns a list object of AvatarArchives. This is being used for WebUI /// </summary> /// <param name = "Public"></param> /// <returns></returns> public List <AvatarArchive> GetAvatarArchives(bool isPublic) { List <AvatarArchive> returnValue = new List <AvatarArchive>(); DataReaderConnection RetVal = null; try { RetVal = GD.QueryData("where IsPublic = 1", "avatararchives", "Name, Snapshot, IsPublic"); while (RetVal.DataReader.Read()) { AvatarArchive Archive = new AvatarArchive { Name = RetVal.DataReader["Name"].ToString(), Snapshot = RetVal.DataReader["Snapshot"].ToString(), IsPublic = int.Parse(RetVal.DataReader["IsPublic"].ToString()) }; returnValue.Add(Archive); } } catch { GD.CloseDatabase(RetVal); } return(returnValue); }
public List <AbuseReport> GetAbuseReports(int start, int count, bool active) { List <AbuseReport> rv = new List <AbuseReport>(); QueryFilter filter = new QueryFilter(); filter.andGreaterThanEqFilters["CAST(number AS UNSIGNED)"] = start; filter.andFilters["Active"] = active ? 1 : 0; List <string> query = GD.Query(new string[1] { "*" }, m_abuseReportsTable, filter, null, null, null); if (query.Count % 16 != 0) { return(rv); } try { for (int i = 0; i < query.Count; i += 16) { AbuseReport report = new AbuseReport { Category = query[i + 0], ReporterName = query[i + 1], ObjectName = query[i + 2], ObjectUUID = new UUID(query[i + 3]), AbuserName = query[i + 4], AbuseLocation = query[i + 5], AbuseDetails = query[i + 6], ObjectPosition = query[i + 7], RegionName = query[i + 8], ScreenshotID = new UUID(query[i + 9]), AbuseSummary = query[i + 10], Number = int.Parse(query[i + 11]), AssignedTo = query[i + 12], Active = int.Parse(query[i + 13]) == 1, Checked = int.Parse(query[i + 14]) == 1, Notes = query[i + 15] }; rv.Add(report); } } catch { } GD.CloseDatabase(); return(rv); }
public List <AbuseReport> GetAbuseReports(int start, int count, string filter) { List <AbuseReport> rv = new List <AbuseReport>(); IDataReader dr = GD.QueryData( "where CAST(number AS UNSIGNED) >= " + start.ToString() + " and " + filter + " LIMIT 0, 10", "abusereports", "*"); try { while (dr.Read()) { AbuseReport report = new AbuseReport { Category = dr[0].ToString(), ReporterName = dr[1].ToString(), ObjectName = dr[2].ToString(), ObjectUUID = new UUID(dr[3].ToString()), AbuserName = dr[4].ToString(), AbuseLocation = dr[5].ToString(), AbuseDetails = dr[6].ToString(), ObjectPosition = dr[7].ToString(), RegionName = dr[8].ToString(), ScreenshotID = new UUID(dr[9].ToString()), AbuseSummary = dr[10].ToString(), Number = int.Parse(dr[11].ToString()), AssignedTo = dr[12].ToString(), Active = int.Parse(dr[13].ToString()) == 1, Checked = int.Parse(dr[14].ToString()) == 1, Notes = dr[15].ToString() }; rv.Add(report); } dr.Close(); dr.Dispose(); } catch { } GD.CloseDatabase(); return(rv); }