Deveel.Data.Sql.Sequences.SequenceManager.FindByName C# (CSharp) 메소드

FindByName() 개인적인 메소드

private FindByName ( ObjectName sequenceName ) : int
sequenceName ObjectName
리턴 int
        private int FindByName(ObjectName sequenceName)
        {
            if (sequenceName == null)
                throw new ArgumentNullException("sequenceName");

            if (sequenceName.Parent == null)
                return -1;

            var seqInfo = SequenceInfoTableName;
            if (!Transaction.RealTableExists(seqInfo))
                return -1;

            // Search the table.
            var table = Transaction.GetTable(seqInfo);
            var name = Field.VarChar(sequenceName.Name);
            var schema = Field.VarChar(sequenceName.Parent.FullName);

            int p = 0;
            foreach (var row in table) {
                var seqType = row.GetValue(3);
                if (!seqType.IsEqualTo(OneValue)) {
                    var obName = row.GetValue(2);
                    if (obName.IsEqualTo(name)) {
                        var obSchema = row.GetValue(1);
                        if (obSchema.IsEqualTo(schema)) {
                            // Match so return this
                            return p;
                        }
                    }

                    ++p;
                }
            }

            return -1;
        }