Exemple #1
0
        public Role Build(DbDataReader reader)
        {
            Guid   id   = DbReaderUtils.GetGuid(reader, 0);
            string name = DbReaderUtils.GetString(reader, 1);

            return(new Role(name, id));
        }
Exemple #2
0
        internal static List <FilestoreFile> GetExpired(DateTime abs)
        {
            try
            {
                NpgsqlCommand cmd = Db.GetCmd(Db.ConnectionString);
                cmd.CommandText = Db.SelectSql + " WHERE \"Expires\" < :d";
                cmd.Parameters.AddWithValue("d", abs);

                NpgsqlDataReader     rdr   = ExecuteReader(cmd);
                List <FilestoreFile> items = new List <FilestoreFile>();
                while (rdr.Read())
                {
                    Guid     id = DbReaderUtils.GetGuid(rdr, 0);
                    DateTime cr = DbReaderUtils.GetDate(rdr, 1);
                    DateTime u  = DbReaderUtils.GetDate(rdr, 2);
                    DateTime a  = DbReaderUtils.GetDate(rdr, 3);
                    DateTime e  = DbReaderUtils.GetDate(rdr, 4);
                    bool     t  = DbReaderUtils.GetBoolean(rdr, 5);
                    string   fn = DbReaderUtils.GetString(rdr, 6);
                    if (DateTime.MinValue == e)
                    {
                        e = DateTime.MaxValue;
                    }

                    items.Add(new FilestoreFile(id, cr, u, a, e, t, fn));
                }

                return(items);
            }
            catch
            { }

            return(null);
        }
Exemple #3
0
 private bool getContactInfoForPerson(Person p)
 {
     if (p != null && this.CanGet())
     {
         NpgsqlCommand cmd = Db.GetCmd(Db.ConnectionString);
         cmd.CommandText = Db.SelectPersonConatactInfoById;
         cmd.Parameters.AddWithValue("pid", p.Identity.Identity);
         NpgsqlDataReader rdr = Db.ExecuteReader(cmd);
         try
         {
             while (rdr.Read())
             {
                 string name  = DbReaderUtils.GetString(rdr, 1);
                 string email = DbReaderUtils.GetString(rdr, 2);
                 if (!string.IsNullOrEmpty(name) && !string.IsNullOrEmpty(email))
                 {
                     p.Contacts.Add(name, new EmailAddress(email));
                 }
             }
             if (cmd.Connection.State == System.Data.ConnectionState.Open)
             {
                 cmd.Connection.Close();
             }
             return(true);
         }
         catch
         { }
         finally
         {
             cmd.Dispose();
         }
     }
     return(false);
 }
 internal static void FillMembers(FieldTeam item)
 {
     //\"FieldTeamSystemId\", \"FieldTeamId\", \"PersonSystemId\", \"PersonId\", \"FieldTeamMemberRoleSystemId\", \"FieldTeamMemberRoleId\"
     if (item != null)
     {
         NpgsqlCommand cmd = Db.GetCmd(Db.ConnectionString);
         cmd.CommandText = Db.SelectFieldTeamMembers;
         cmd.Parameters.AddWithValue("sid", item.Identity.DataStoreIdentity);
         cmd.Parameters.AddWithValue("id", item.Identity.Identity);
         NpgsqlDataReader rdr = Db.ExecuteReader(cmd);
         if (rdr != null)
         {
             try
             {
                 FieldTeamMembers m = item.Members;
                 while (rdr.Read())
                 {
                     m.Add(new FieldTeamMember(new CompoundIdentity(DbReaderUtils.GetGuid(rdr, 2), DbReaderUtils.GetGuid(rdr, 3)), new CompoundIdentity(DbReaderUtils.GetGuid(rdr, 4), DbReaderUtils.GetGuid(rdr, 5))));
                 }
                 if (cmd.Connection.State == System.Data.ConnectionState.Open)
                 {
                     cmd.Connection.Close();
                 }
             }
             catch
             { }
             finally
             {
                 cmd.Dispose();
             }
         }
     }
 }
Exemple #5
0
 public override OrganizationHierarchy Get(CompoundIdentity hierarchyId)
 {
     if (!hierarchyId.IsNullOrEmpty() && this.CanGet())
     {
         NpgsqlCommand cmd = Db.GetCmd(Db.ConnectionString);
         cmd.CommandText = Db.Select + Db.WhereId;
         cmd.Parameters.AddWithValue("sid", hierarchyId.DataStoreIdentity);
         cmd.Parameters.AddWithValue("id", hierarchyId.Identity);
         NpgsqlDataReader      rdr = Db.ExecuteReader(cmd);
         OrganizationHierarchy o   = null;
         if (rdr != null)
         {
             try
             {
                 if (rdr.Read())
                 {
                     o = new PgOrgHierarchy(this.Context, new CompoundIdentity(DbReaderUtils.GetGuid(rdr, 0), DbReaderUtils.GetGuid(rdr, 1)),
                                            new CompoundIdentity(DbReaderUtils.GetGuid(rdr, 2), DbReaderUtils.GetGuid(rdr, 3)), DbReaderUtils.GetString(rdr, 4), DbReaderUtils.GetString(rdr, 5));
                     if (cmd.Connection.State == System.Data.ConnectionState.Open)
                     {
                         cmd.Connection.Close();
                     }
                 }
             }
             catch
             { }
             finally
             {
                 cmd.Dispose();
             }
         }
         return(o);
     }
     return(null);
 }
        public Permission Build(DbDataReader reader)
        {
            Guid   id   = DbReaderUtils.GetGuid(reader, 0);
            string name = DbReaderUtils.GetString(reader, 1);

            return(new Permission(name, id));
        }
Exemple #7
0
        internal CompoundIdentity GetLocalOrg(CompoundIdentity sampleEventId)
        {
            NpgsqlCommand cmd = Db.GetCmd(Db.ConnectionString);

            cmd.CommandText = Db.SelectSampleEventLocal;
            cmd.Parameters.AddWithValue("sid", sampleEventId.DataStoreIdentity);
            cmd.Parameters.AddWithValue("id", sampleEventId.Identity);
            NpgsqlDataReader rdr = Db.ExecuteReader(cmd);
            CompoundIdentity tmp = null;

            if (rdr != null)
            {
                try
                {
                    if (rdr.Read())
                    {
                        tmp = new CompoundIdentity(DbReaderUtils.GetGuid(rdr, 0), DbReaderUtils.GetGuid(rdr, 1));
                    }
                    if (cmd.Connection.State == System.Data.ConnectionState.Open)
                    {
                        cmd.Connection.Close();
                    }
                }
                catch
                { }
                finally
                {
                    cmd.Dispose();
                }
            }
            return(tmp);
        }
Exemple #8
0
 private HashSet <CompoundIdentity> GetUserAffils()
 {
     if (this.orgs == null)
     {
         NpgsqlCommand cmd = Db.GetCmd(Db.ConnectionString);
         cmd.CommandText = Db.SelectUserAffil;
         cmd.Parameters.AddWithValue("uid", this.ctx.User.Uid);
         NpgsqlDataReader           rdr  = Db.ExecuteReader(cmd);
         HashSet <CompoundIdentity> orgs = new HashSet <CompoundIdentity>();
         if (rdr != null)
         {
             try
             {
                 while (rdr.Read())
                 {
                     orgs.Add(new CompoundIdentity(DbReaderUtils.GetGuid(rdr, 0), DbReaderUtils.GetGuid(rdr, 1)));
                 }
                 if (cmd.Connection.State == System.Data.ConnectionState.Open)
                 {
                     cmd.Connection.Close();
                 }
                 this.orgs = orgs;
             }
             catch
             { }
             finally
             {
                 cmd.Dispose();
             }
         }
     }
     return(this.orgs);
 }
Exemple #9
0
        public SensorType Build(DbDataReader reader)
        {
            CompoundIdentity parentId   = null;
            Guid             parentGuid = DbReaderUtils.GetGuid(reader, 3);

            if (!Guid.Empty.Equals(parentGuid))
            {
                parentId = new CompoundIdentity(Db.DataStoreIdentity, parentGuid);
            }

            SensorType sensorType = new SensorType(new CompoundIdentity(Db.DataStoreIdentity, DbReaderUtils.GetGuid(reader, 0)), DbReaderUtils.GetString(reader, 1), DbReaderUtils.GetString(reader, 2), parentId);

            string s = DbReaderUtils.GetString(reader, 4);
            JToken t = JRaw.Parse(s);

            if (t is JArray)
            {
                JArray a = (JArray)t;
                HashSet <CompoundIdentity> ids = Db.ToIds(a);
                foreach (CompoundIdentity id in ids)
                {
                    sensorType.InstrumentFamilies.Add(id);
                }
            }

            return(sensorType);
        }
Exemple #10
0
        //\"Id\", \"EventSystemId\", \"EventId\", \"SiteSystemId\", \"SiteId\", \"When\",
        //\"PointLocation\", \"Method\", \"Strata\", \"Depth\", \"pH\", \"Temp\", \"DO\", \"Salinity\", \"Velocity\", \"Description\", \"IsPrivate\"
        public CatchEffort Build(DbDataReader reader)
        {
            Point2 <double> loc;

            if (DBNull.Value.Equals(reader[6]))
            {
                loc = null;
            }
            else
            {
                loc = Osrs.Numerics.Spatial.Postgres.NpgSpatialUtils.ToGeom((NpgsqlTypes.PostgisGeometry)reader[6]) as Point2 <double>;
            }

            CatchEffort tmp = new CatchEffort(new CompoundIdentity(Db.DataStoreIdentity, DbReaderUtils.GetGuid(reader, 0)), new CompoundIdentity(DbReaderUtils.GetGuid(reader, 1), DbReaderUtils.GetGuid(reader, 2)),
                                              new CompoundIdentity(DbReaderUtils.GetGuid(reader, 3), DbReaderUtils.GetGuid(reader, 4)), Db.FixDate(DbReaderUtils.GetDate(reader, 5)), loc, DbReaderUtils.GetString(reader, 7), DbReaderUtils.GetString(reader, 8),
                                              DbReaderUtils.GetSingle(reader, 9), DbReaderUtils.GetSingle(reader, 10), DbReaderUtils.GetSingle(reader, 11), DbReaderUtils.GetSingle(reader, 12), DbReaderUtils.GetSingle(reader, 13),
                                              DbReaderUtils.GetSingle(reader, 14), DbReaderUtils.GetString(reader, 15), DbReaderUtils.GetBoolean(reader, 16));

            if (tmp.IsPrivate)
            {
                if (prov == null)
                {
                    return(null); //can't verify
                }
                if (!prov.HasAffiliationForSampleEvent(tmp.SampleEventId, false))
                {
                    return(null);
                }
            }

            return(tmp);
        }
Exemple #11
0
 public override IEnumerable <CompoundIdentity> InstrumentTypesForArchetype(CompoundIdentity archetypeId)
 {
     if (archetypeId != null && this.CanGet())
     {
         NpgsqlCommand cmd = Db.GetCmd(Db.ConnectionString);
         cmd.CommandText = "SELECT \"InstrumentTypeId\" FROM oncor.\"InstrumentTypeKnownArchetypes\" WHERE \"ArchetypeId\"=:aid";
         cmd.Parameters.AddWithValue("aid", archetypeId.Identity);
         NpgsqlDataReader        rdr         = Db.ExecuteReader(cmd);
         List <CompoundIdentity> permissions = new List <CompoundIdentity>();
         try
         {
             CompoundIdentity t;
             while (rdr.Read())
             {
                 t = new CompoundIdentity(Db.DataStoreIdentity, DbReaderUtils.GetGuid(rdr, 0));
                 if (t != null)
                 {
                     permissions.Add(t);
                 }
             }
             if (cmd.Connection.State == System.Data.ConnectionState.Open)
             {
                 cmd.Connection.Close();
             }
         }
         catch
         { }
         finally
         {
             cmd.Dispose();
         }
         return(permissions);
     }
     return(null);
 }
Exemple #12
0
        //"Id", "OwnerSystemId", "OwnerId", "Name", "DataType"
        public EntityBundle Build(DbDataReader reader)
        {
            EntityBundle tmp = new EntityBundle(DbReaderUtils.GetGuid(reader, 0), DbReaderUtils.GetString(reader, 3),
                                                new CompoundIdentity(DbReaderUtils.GetGuid(reader, 1), DbReaderUtils.GetGuid(reader, 2)), (BundleDataType)((int)(reader[4])));

            Fill(tmp);
            return(tmp);
        }
Exemple #13
0
        public FieldTeamMemberRole Build(DbDataReader reader)
        {
            Guid   sid  = DbReaderUtils.GetGuid(reader, 0);
            Guid   id   = DbReaderUtils.GetGuid(reader, 1);
            string name = DbReaderUtils.GetString(reader, 2);
            string desc = DbReaderUtils.GetString(reader, 3);

            return(new FieldTeamMemberRole(new CompoundIdentity(sid, id), name, desc));
        }
Exemple #14
0
        public ProjectStatus Build(DbDataReader reader)
        {
            CompoundIdentity statTypeId = null;

            if (!DBNull.Value.Equals(reader[4]))
            {
                statTypeId = new CompoundIdentity(DbReaderUtils.GetGuid(reader, 4), DbReaderUtils.GetGuid(reader, 5));
            }

            return(new ProjectStatus(new CompoundIdentity(DbReaderUtils.GetGuid(reader, 0), DbReaderUtils.GetGuid(reader, 1)), DbReaderUtils.GetGuid(reader, 2),
                                     statTypeId, DbReaderUtils.GetString(reader, 6), DbReaderUtils.GetDate(reader, 3)));
        }
Exemple #15
0
        public InstrumentFamily Build(DbDataReader reader)
        {
            CompoundIdentity parentId   = null;
            Guid             parentGuid = DbReaderUtils.GetGuid(reader, 3);

            if (!Guid.Empty.Equals(parentGuid))
            {
                parentId = new CompoundIdentity(Db.DataStoreIdentity, parentGuid);
            }

            return(new InstrumentFamily(new CompoundIdentity(Db.DataStoreIdentity, DbReaderUtils.GetGuid(reader, 0)), DbReaderUtils.GetString(reader, 1), DbReaderUtils.GetString(reader, 2), parentId));
        }
        //\"Id\", \"OwnerType\", \"Payload\", \"Token\", \"IsLocked\", \"ValidFrom\", \"ValidTo\"
        internal PersistedCredential Create(NpgsqlDataReader rdr)
        {
            Guid id = DbReaderUtils.GetGuid(rdr, 0);

            if (!Guid.Empty.Equals(id))
            {
                PersistedCredential cred = this.Create(id, DbReaderUtils.GetString(rdr, 2), DbReaderUtils.GetString(rdr, 3), DbReaderUtils.GetDate(rdr, 5), DbReaderUtils.GetDate(rdr, 6));
                this.Update(cred, DbReaderUtils.GetBoolean(rdr, 4));
                return(cred);
            }
            return(null);
        }
Exemple #17
0
        public FieldTeam Build(DbDataReader reader)
        {
            Guid   sid  = DbReaderUtils.GetGuid(reader, 0);
            Guid   id   = DbReaderUtils.GetGuid(reader, 1);
            string name = DbReaderUtils.GetString(reader, 2);
            string desc = DbReaderUtils.GetString(reader, 3);

            FieldTeam ft = new FieldTeam(new CompoundIdentity(sid, id), name, desc);

            PgFieldTeamProvider.FillMembers(ft);
            return(ft);
        }
Exemple #18
0
        //Guid uid, UserType type, UserState state, DateTime? ExpiresAt, string name
        public PostgresUser Build(DbDataReader reader)
        {
            Guid         id    = DbReaderUtils.GetGuid(reader, 0);
            UserType     type  = (UserType)DbReaderUtils.GetInt32(reader, 1);
            UserState    state = (UserState)DbReaderUtils.GetInt32(reader, 2);
            DateTime?    exp   = DbReaderUtils.GetNullableDateTime(reader, 3);
            string       name  = DbReaderUtils.GetString(reader, 4);
            PostgresUser user  = new PostgresUser(id, type, name, state);

            user.ExpiresAt = exp;
            return(user);
        }
Exemple #19
0
        public Sensor Build(DbDataReader reader)
        {
            CompoundIdentity manufId    = null;
            Guid             manufSysId = DbReaderUtils.GetGuid(reader, 8);

            if (!Guid.Empty.Equals(manufSysId))
            {
                manufId = new CompoundIdentity(manufSysId, DbReaderUtils.GetGuid(reader, 9));
            }

            return(new Sensor(new CompoundIdentity(Db.DataStoreIdentity, DbReaderUtils.GetGuid(reader, 0)), new CompoundIdentity(Db.DataStoreIdentity, DbReaderUtils.GetGuid(reader, 1)),
                              new CompoundIdentity(DbReaderUtils.GetGuid(reader, 2), DbReaderUtils.GetGuid(reader, 3)), DbReaderUtils.GetString(reader, 4), new CompoundIdentity(Db.DataStoreIdentity, DbReaderUtils.GetGuid(reader, 5)),
                              DbReaderUtils.GetString(reader, 6), DbReaderUtils.GetString(reader, 7), manufId));
        }
Exemple #20
0
        internal static FilestoreFile Open(Guid id)
        {
            if (!Guid.Empty.Equals(id))
            {
                NpgsqlCommand cmd = Db.GetCmd(Db.ConnectionString);
                cmd.CommandText = Db.SelectSql + " WHERE \"Id\"=:id";
                cmd.Parameters.AddWithValue("id", id);
                NpgsqlDataReader rdr = Db.ExecuteReader(cmd);
                FilestoreFile    tmp = null;
                try
                {
                    if (rdr.Read())
                    {
                        DateTime cr = DbReaderUtils.GetDate(rdr, 1);
                        DateTime u  = DbReaderUtils.GetDate(rdr, 2);
                        DateTime a  = DbReaderUtils.GetDate(rdr, 3);
                        DateTime e  = DbReaderUtils.GetDate(rdr, 4);
                        bool     t  = DbReaderUtils.GetBoolean(rdr, 5);
                        string   fn = DbReaderUtils.GetString(rdr, 6);
                        if (DateTime.MinValue == e)
                        {
                            e = DateTime.MaxValue;
                        }

                        tmp = new FilestoreFile(id, cr, u, a, e, t, fn);
                    }
                    if (cmd.Connection.State == System.Data.ConnectionState.Open)
                    {
                        cmd.Connection.Close();
                    }
                }
                catch
                { }
                finally
                {
                    cmd.Dispose();
                }

                if (DateTime.Now >= tmp.ExpiresAt) //just handle last minute deletes
                {
                    Delete(id);
                    tmp = null;
                }
                return(tmp);
            }
            return(null);
        }
Exemple #21
0
        public SamplingEvent Build(DbDataReader reader)
        {
            Guid sid   = DbReaderUtils.GetGuid(reader, 0);
            Guid id    = DbReaderUtils.GetGuid(reader, 1);
            Guid ftsid = DbReaderUtils.GetGuid(reader, 2);
            Guid ftid  = DbReaderUtils.GetGuid(reader, 3);
            Guid osid  = DbReaderUtils.GetGuid(reader, 4);
            Guid oid   = DbReaderUtils.GetGuid(reader, 5);
            //Guid stsid = DbReaderUtils.GetGuid(reader, 6);
            //Guid stid = DbReaderUtils.GetGuid(reader, 7);
            string   name  = DbReaderUtils.GetString(reader, 6);
            string   desc  = DbReaderUtils.GetString(reader, 7);
            DateTime start = Db.SafeGetDate(reader, 8, DateTime.MinValue);
            DateTime end   = Db.SafeGetDate(reader, 9, DateTime.MaxValue);

            return(new SamplingEvent(new CompoundIdentity(sid, id), name, new CompoundIdentity(ftsid, ftid), new CompoundIdentity(osid, oid), new Numerics.ValueRange <DateTime>(start, end), desc));
        }
Exemple #22
0
        public Project Build(DbDataReader reader)
        {
            CompoundIdentity parentId    = null;
            Guid             parentSysId = DbReaderUtils.GetGuid(reader, 5);

            if (!Guid.Empty.Equals(parentSysId))
            {
                parentId = new CompoundIdentity(parentSysId, DbReaderUtils.GetGuid(reader, 6));
            }

            Project p = new Project(new CompoundIdentity(DbReaderUtils.GetGuid(reader, 0), DbReaderUtils.GetGuid(reader, 1)),
                                    DbReaderUtils.GetString(reader, 2), new CompoundIdentity(DbReaderUtils.GetGuid(reader, 3), DbReaderUtils.GetGuid(reader, 4)),
                                    parentId, DbReaderUtils.GetString(reader, 7));

            Db.LoadAffiliates(p);
            return(p);
        }
Exemple #23
0
        //\"SystemId\", \"Id\", \"OwnerSystemId\", \"OwnerId\", \"Name\", \"Description\", \"Geom\", \"AltGeom\", \"StartDate\", \"EndDate\"
        public Site Build(DbDataReader reader)
        {
            Site tmp = new Site(new CompoundIdentity(DbReaderUtils.GetGuid(reader, 0), DbReaderUtils.GetGuid(reader, 1)),
                                new CompoundIdentity(DbReaderUtils.GetGuid(reader, 2), DbReaderUtils.GetGuid(reader, 3)),
                                DbReaderUtils.GetString(reader, 4), DbReaderUtils.GetString(reader, 5));

            if (!DBNull.Value.Equals(reader[6]))
            {
                tmp.Location = Osrs.Numerics.Spatial.Postgres.NpgSpatialUtils.ToGeom((NpgsqlTypes.PostgisGeometry)reader[6]);
            }

            if (!DBNull.Value.Equals(reader[7]))
            {
                tmp.LocationMark = Osrs.Numerics.Spatial.Postgres.NpgSpatialUtils.ToGeom((NpgsqlTypes.PostgisGeometry)reader[7]) as Point2 <double>;
            }

            return(tmp);
        }
        public override IEnumerable <PasswordHistory <UsernamePassword> > Get(Guid userId)
        {
            if (!Guid.Empty.Equals(userId))
            {
                NpgsqlCommand cmd = Db.GetCmd(Db.ConnectionString);
                cmd.CommandText = Db.Select;
                cmd.Parameters.AddWithValue("id", userId);
                NpgsqlDataReader rdr = Db.ExecuteReader(cmd);
                List <PasswordHistory <UsernamePassword> > permissions = new List <PasswordHistory <UsernamePassword> >();
                try
                {
                    PasswordHistory <UsernamePassword> o;
                    while (rdr.Read())
                    {
                        string user = DbReaderUtils.GetString(rdr, 1);
                        if (!string.IsNullOrEmpty(user))
                        {
                            string payload = DbReaderUtils.GetString(rdr, 2);
                            if (!string.IsNullOrEmpty(payload))
                            {
                                o = ToHistory(payload);
                                if (o != null)
                                {
                                    permissions.Add(o);
                                }
                            }
                        }
                    }
                    if (cmd.Connection.State == System.Data.ConnectionState.Open)
                    {
                        cmd.Connection.Close();
                    }
                }
                catch
                { }
                finally
                {
                    cmd.Dispose();
                }

                return(permissions);
            }
            return(null);
        }
        public override IEnumerable <CompoundIdentity> GetParentIds(CompoundIdentity orgId)
        {
            if (!orgId.IsNullOrEmpty())
            {
                try
                {
                    NpgsqlCommand cmd = Db.GetCmd(Db.ConnectionString);
                    cmd.CommandText = Db.SelectMem + Db.WhereElem;
                    cmd.Parameters.AddWithValue("sid", this.Identity.DataStoreIdentity);
                    cmd.Parameters.AddWithValue("id", this.Identity.Identity);
                    cmd.Parameters.AddWithValue("csid", orgId.DataStoreIdentity);
                    cmd.Parameters.AddWithValue("cid", orgId.Identity);

                    NpgsqlDataReader rdr = Db.ExecuteReader(cmd);
                    if (rdr != null)
                    {
                        HashSet <CompoundIdentity> res = new HashSet <CompoundIdentity>();
                        try
                        {
                            while (rdr.Read())
                            {
                                res.Add(new CompoundIdentity(DbReaderUtils.GetGuid(rdr, 0), DbReaderUtils.GetGuid(rdr, 1)));
                            }
                            if (cmd.Connection.State == System.Data.ConnectionState.Open)
                            {
                                cmd.Connection.Close();
                            }
                        }
                        catch
                        { }
                        finally
                        {
                            cmd.Dispose();
                        }
                        return(res);
                    }
                }
                catch
                { }
            }
            return(null);
        }
Exemple #26
0
        //\"Id\", \"EventSystemId\", \"EventId\", \"SiteSystemId\", \"SiteId\", \"PlotTypeId\", \"PointLocation\", \"Area\", \"ElevMin\", \"ElevMax\", \"Description\", \"IsPrivate\"
        public VegSurvey Build(DbDataReader reader)
        {
            VegSurvey tmp = new VegSurvey(new CompoundIdentity(Db.DataStoreIdentity, DbReaderUtils.GetGuid(reader, 0)), new CompoundIdentity(DbReaderUtils.GetGuid(reader, 1), DbReaderUtils.GetGuid(reader, 2)),
                                          new CompoundIdentity(DbReaderUtils.GetGuid(reader, 3), DbReaderUtils.GetGuid(reader, 4)), new CompoundIdentity(Db.DataStoreIdentity, DbReaderUtils.GetGuid(reader, 5)),
                                          Db.GetLoc(reader, 6), DbReaderUtils.GetSingle(reader, 7), DbReaderUtils.GetSingle(reader, 8), DbReaderUtils.GetSingle(reader, 9), DbReaderUtils.GetString(reader, 10), (bool)reader[11]);

            if (tmp.IsPrivate)
            {
                if (prov == null)
                {
                    return(null); //can't verify
                }
                if (!prov.HasAffiliationForSampleEvent(tmp.SampleEventId, false))
                {
                    return(null);
                }
            }

            return(tmp);
        }
Exemple #27
0
        public WaterQualityDeployment Build(DbDataReader reader)
        {
            WaterQualityDeployment tmp = new WaterQualityDeployment(new CompoundIdentity(DbReaderUtils.GetGuid(reader, 0), DbReaderUtils.GetGuid(reader, 1)), DbReaderUtils.GetString(reader, 2),
                                                                    new CompoundIdentity(DbReaderUtils.GetGuid(reader, 3), DbReaderUtils.GetGuid(reader, 4)), new CompoundIdentity(DbReaderUtils.GetGuid(reader, 5), DbReaderUtils.GetGuid(reader, 6)),
                                                                    new CompoundIdentity(DbReaderUtils.GetGuid(reader, 7), DbReaderUtils.GetGuid(reader, 8)), DateRange.Create(Db.FixDate(DbReaderUtils.GetNullableDateTime(reader, 9)), Db.FixDate(DbReaderUtils.GetNullableDateTime(reader, 10))),
                                                                    DbReaderUtils.GetString(reader, 11), DbReaderUtils.GetBoolean(reader, 12));

            if (tmp.IsPrivate)
            {
                if (prov == null)
                {
                    return(null); //can't verify
                }
                if (!prov.HasAffiliationForSampleEvent(tmp.SampleEventId, false))
                {
                    return(null);
                }
            }

            return(tmp);
        }
Exemple #28
0
        //\"Id\", \"FishId\", \"GeneticSampleId\", \"LabSampleId\", \"StockEstimates\", \"Description\"   --NOTE Stock Estimates are an encoded value
        public FishGenetics Build(DbDataReader reader)
        {
            FishGenetics tmp = new FishGenetics(DbReaderUtils.GetGuid(reader, 0), DbReaderUtils.GetGuid(reader, 1), DbReaderUtils.GetString(reader, 2), DbReaderUtils.GetString(reader, 3), Decode(DbReaderUtils.GetString(reader, 4)), DbReaderUtils.GetString(reader, 5));

            if (!seen.Contains(tmp.FishId))
            {
                seen.Add(tmp.FishId);
                Fish e = this.helperBuilder.GetFish(tmp.FishId);
                if (e != null)
                {
                    got.Add(tmp.FishId);
                }
            }

            if (!got.Contains(tmp.FishId))
            {
                return(null);
            }

            return(tmp);
        }
Exemple #29
0
        //\"Id\", \"CatchEffortId\", \"TaxaSystemId\", \"TaxaId\", \"Count\", \"Description\"
        public FishCount Build(DbDataReader reader)
        {
            FishCount tmp = new FishCount(DbReaderUtils.GetGuid(reader, 0), new CompoundIdentity(Db.DataStoreIdentity, DbReaderUtils.GetGuid(reader, 1)), new CompoundIdentity(DbReaderUtils.GetGuid(reader, 2), DbReaderUtils.GetGuid(reader, 3)),
                                          (uint)DbReaderUtils.GetInt32(reader, 4), DbReaderUtils.GetString(reader, 5));

            if (!seen.Contains(tmp.CatchEffortId))
            {
                seen.Add(tmp.CatchEffortId);
                CatchEffort e = this.helperBuilder.Get(tmp.CatchEffortId);
                if (e != null)
                {
                    got.Add(tmp.CatchEffortId);
                }
            }

            if (!got.Contains(tmp.CatchEffortId))
            {
                return(null);
            }

            return(tmp);
        }
Exemple #30
0
        /// <summary>
        /// Tuple Order: InstrumentTypeId, ArchetypeId
        /// </summary>
        /// <returns></returns>
        public override IEnumerable <Tuple <CompoundIdentity, CompoundIdentity> > GetInstrumentTypeKnownArchetypes()
        {
            //Dsid for all known archetypes
            Guid archetypeDsid = new Guid("{5F297502-B620-42BF-80BC-A4AF5A597267}");

            if (this.CanGet())
            {
                NpgsqlCommand cmd = Db.GetCmd(Db.ConnectionString);
                cmd.CommandText = Db.SelectInstrumentTypeKnownArchetype;
                NpgsqlDataReader rdr = Db.ExecuteReader(cmd);
                List <Tuple <CompoundIdentity, CompoundIdentity> > perms = new List <Tuple <CompoundIdentity, CompoundIdentity> >();
                try
                {
                    CompoundIdentity inst;
                    CompoundIdentity arch;
                    while (rdr.Read())
                    {
                        inst = new CompoundIdentity(Db.DataStoreIdentity, DbReaderUtils.GetGuid(rdr, 0));
                        arch = new CompoundIdentity(archetypeDsid, DbReaderUtils.GetGuid(rdr, 1));
                        if (inst != null && arch != null)
                        {
                            perms.Add(new Tuple <CompoundIdentity, CompoundIdentity>(inst, arch));
                        }
                    }
                    if (cmd.Connection.State == System.Data.ConnectionState.Open)
                    {
                        cmd.Connection.Close();
                    }
                }
                catch
                { }
                finally
                {
                    cmd.Dispose();
                }
                return(perms);
            }
            return(null);
        }