Example #1
0
 protected override void build(Item item, int limit)
 {
     string val = item.getStreamName();
     string str2 = item.getIdField();
     StringTheory condition = new StringTheory();
     base.BuildCondition(condition, item);
     if (limit > -1)
     {
         StringTheory theory2 = new StringTheory("SELECT TOP %limit% %id_field% FROM %table%");
         theory2.Replace("%limit%", limit);
         theory2.Replace("%id_field%", item.getIdField());
         theory2.Replace("%table%", val);
         if ((condition != null) && (condition.Length > 0))
         {
             theory2.Append(" WHERE ");
             theory2.Append(condition);
         }
         base.Append("DELETE FROM ");
         base.Append(val);
         base.Append(" WHERE ");
         base.Append(string.Concat(new object[] { item.getIdField(), " IN (", theory2, ")" }));
     }
     else
     {
         base.Append("DELETE FROM ");
         base.Append(val);
         if ((condition != null) && (condition.Length > 0))
         {
             base.Append(" WHERE ");
             base.Append(condition);
         }
     }
 }
Example #2
0
 protected override void LimitRecordsReturned(StringTheory query, int limit)
 {
     if (limit > -1)
     {
         query.Append(" LIMIT ");
         query.Append(limit.ToString());
         query.Append(" ");
     }
 }
Example #3
0
 protected override void LimitRecordsReturned(StringTheory query, int limit)
 {
     if (limit > -1)
     {
         query.Prepend("SELECT * FROM (");
         query.Append(") WHERE rownum < ");
         query.Append((limit + 1).ToString());
         query.Append(" ");
     }
 }
Example #4
0
 public XmlDocument Describe()
 {
     XmlDocument document = new XmlDocument();
     StringTheory theory = new StringTheory("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
     ArrayList list = new ArrayList();
     theory.Append("<streams>\n");
     this.ListStreams(list);
     foreach (Hashtable hashtable in list)
     {
         theory.Append(this.DescribeStream(hashtable["TABLE_NAME"].ToString()));
     }
     theory.Append("</streams>\n");
     document.LoadXml(theory.ToString());
     return document;
 }
Example #5
0
 protected void AppendSortSpecification(StringTheory spec, Item entity)
 {
     ArrayList coll = entity.getSortList();
     if (coll.Count > 0)
     {
         spec.Append(" ORDER BY ");
         spec.Join(coll, ", ");
     }
 }
Example #6
0
 // Methods
 protected void BuildCondition(StringTheory condition, Item entity)
 {
     Hashtable hashtable = entity.getBoxView();
     Field field = null;
     foreach (string str in hashtable.Keys)
     {
         field = (Field)hashtable[str];
         if (field.Touched())
         {
             if (condition.Length > 0)
             {
                 condition.Append(" AND ");
             }
             if (field.Length < 1)
             {
                 condition.Append(" ( len(" + str + ") < 1 or " + str + " IS NULL ) ");
             }
             else
             {
                 condition.Append(str);
                 condition.Append("=");
                 condition.Append(field.toSql());
             }
         }
         if (field.hasAttributes())
         {
             string[] strArray = field.getAttributes();
             for (int i = 0; i < strArray.Length; i++)
             {
                 if (condition.Length > 0)
                 {
                     condition.Append(" AND ");
                 }
                 condition.Append(str);
                 condition.Append(strArray[i]);
             }
         }
     }
 }
Example #7
0
File: Item.cs Project: built/BoxBoy
 public string getXml()
 {
     StringTheory theory = new StringTheory("<%islandName%>%body%</%islandName%>\n");
     StringTheory val = new StringTheory();
     StringTheory theory3 = new StringTheory();
     foreach (string str in this.getFieldNames())
     {
         val.Renew("    <%fieldName%>%fieldValue%</%fieldName%>\n");
         val.Replace("%fieldName%", str.ToLower());
         val.Replace("%fieldValue%", ((Field)this[str]).getValue());
         theory3.Append(val);
     }
     theory.Replace("%islandName%", this.StreamName.ToLower());
     theory.Replace("%body%", theory3);
     return theory.ToString();
 }
Example #8
0
 public string DescribeStream(string stream)
 {
     StringTheory theory = new StringTheory("<stream name=\"%stream%\">\n%fields%</stream>\n");
     StringTheory theory2 = new StringTheory();
     ArrayList list = new ArrayList();
     this.ListColumns(stream, list);
     theory.Replace("%stream%", stream);
     foreach (Hashtable hashtable in list)
     {
         theory2.Append("<field name=\"%COLUMN_NAME%\" type=\"%DATA_TYPE%\" identity=\"%IDENTITY%\"/>\n");
         theory2.Populate(hashtable, "%*%");
         theory2.Replace("%IDENTITY%", this.IsIdentity(hashtable));
     }
     theory.Replace("%fields%", theory2);
     return theory.ToString();
 }