Package cx.fbn.nevernote.sql

Source Code of cx.fbn.nevernote.sql.InvalidXMLTable

/*
* This file is part of NixNote
* Copyright 2009 Randy Baumgarte
*
* This file may be licensed under the terms of of the
* GNU General Public License Version 2 (the ``GPL'').
*
* Software distributed under the License is distributed
* on an ``AS IS'' basis, WITHOUT WARRANTY OF ANY KIND, either
* express or implied. See the GPL for the specific language
* governing rights and limitations.
*
* You should have received a copy of the GPL along with this
* program. If not, go to http://www.gnu.org/licenses/gpl.html
* or write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/


package cx.fbn.nevernote.sql;

import java.util.ArrayList;
import java.util.List;

import cx.fbn.nevernote.sql.driver.NSqlQuery;
import cx.fbn.nevernote.utilities.ApplicationLogger;
import cx.fbn.nevernote.utilities.ListManager;

public class InvalidXMLTable {
  ListManager parent;
  private final ApplicationLogger     logger;
  private final DatabaseConnection    db;

 
  // Constructor
  public InvalidXMLTable(ApplicationLogger l, DatabaseConnection d) {
    logger = l;
    db = d;
  }
  // Create the table
  public void createTable() {
    NSqlQuery query = new NSqlQuery(db.getConnection());
//    query.exec("drop table InvalidXML");
    logger.log(logger.HIGH, "Creating table InvalidXML...");
        if (!query.exec("Create table InvalidXML (type varchar, element varchar, attribute varchar,primary key(type, element,attribute) );"))
             logger.log(logger.HIGH, "Table InvalidXML creation FAILED!!!");
//        query.clear();
       
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ELEMENT', 'button', '');");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ELEMENT', 'embed', '');");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ELEMENT', 'fieldset', '');");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ELEMENT', 'form', '');");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ELEMENT', 'input', '');");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ELEMENT', 'label', '');");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ELEMENT', 'legend', '');");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ELEMENT', 'o:p', '')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ELEMENT', 'option', '')");       
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ELEMENT', 'script', '')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ELEMENT', 'select', '')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ELEMENT', 'wbr', '')");
       
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'a', 'class')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'a', 'done')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'a', 'id')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'a', 'onclick')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'a', 'onmousedown')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'div', 'id')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'dl', 'class')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'dl', 'id')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'dt', 'class')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'h1', 'class')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'h2', 'class')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'h3', 'class')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'h4', 'class')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'h5', 'class')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'img', 'gptag')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'li', 'class')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'ol', 'class')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'ol', 'id')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'p', 'class')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'p', 'id')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'p', 'span')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'accesskey')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'action')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'alt')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'bgcolor')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'checked')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'class')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'flashvars')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'for')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'height')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'id')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'maxlength')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'method')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'name')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'onblur')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'onchange')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'aclick')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'onsubmit')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'quality')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'selected')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'src')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'target')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'type')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'value')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'width')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'span', 'wmode')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'table', 'class')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'td', 'class')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'tr', 'class')");
        query.exec("Insert into InvalidXML (type, element, attribute) values ('ATTRIBUTE', 'ul', 'class')");

  }
  // Drop the table
  public void dropTable() {
    NSqlQuery query = new NSqlQuery(db.getConnection());
    query.exec("Drop table InvalidXML");
  }
  // Add an item to the table
  public void addAttribute(String element, String attribute) {
    if (attributeExists(element,attribute))
      return;
        NSqlQuery query = new NSqlQuery(db.getConnection());
    query.prepare("Insert Into InvalidXML (type, element, attribute) Values('ATTRIBUTE', :element, :attribute)");
    query.bindValue(":element", element);
    query.bindValue(":attribute", attribute);
    if (!query.exec()) {
      logger.log(logger.MEDIUM, "Insert Attribute into invalidXML failed.");
      logger.log(logger.MEDIUM, query.lastError());
    }
  }
  // Add an item to the table
  public void addElement(String element) {
    if (elementExists(element))
      return;
        NSqlQuery query = new NSqlQuery(db.getConnection());
    query.prepare("Insert Into InvalidXML (type, element) Values('ELEMENT', :element)");
    query.bindValue(":element", element);
    if (!query.exec()) {
      logger.log(logger.MEDIUM, "Insert Element into invalidXML failed.");
      logger.log(logger.MEDIUM, query.lastError());
    }
  }
  // get invalid elements
  public List<String> getInvalidElements() {
        NSqlQuery query = new NSqlQuery(db.getConnection());
    if (!query.exec("Select element from InvalidXML where type = 'ELEMENT'")) {
      logger.log(logger.MEDIUM, "getInvalidElement from invalidXML failed.");
      logger.log(logger.MEDIUM, query.lastError());
      return null;
    }
    List<String> elements = new ArrayList<String>();
    while (query.next()) {
      elements.add(query.valueString(0));
    }
     return elements;
  }
 
  // get invalid elements
  public List<String> getInvalidAttributeElements() {
        NSqlQuery query = new NSqlQuery(db.getConnection());
    if (!query.exec("Select distinct element from InvalidXML where type = 'ATTRIBUTE'")) {
      logger.log(logger.MEDIUM, "getInvalidElement from invalidXML failed.");
      logger.log(logger.MEDIUM, query.lastError());
      return null;
    }
    List<String> elements = new ArrayList<String>();
    while (query.next()) {
      elements.add(query.valueString(0));
    }
     return elements;
  }
  // get invalid attributes for a given element
  public ArrayList<String> getInvalidAttributes(String element) {
        NSqlQuery query = new NSqlQuery(db.getConnection());
    query.prepare("Select attribute from InvalidXML where type = 'ATTRIBUTE' and element = :element");
    query.bindValue(":element", element);
    if (!query.exec()) {
      logger.log(logger.MEDIUM, "getInvalidElement from invalidXML failed.");
      logger.log(logger.MEDIUM, query.lastError());
      return null;
    }
    ArrayList<String> elements = new ArrayList<String>();
    while (query.next()) {
      elements.add(query.valueString(0));
    }
     return elements;
  }

  // Determine if an element already is in the table
  public boolean elementExists(String element) {
        NSqlQuery query = new NSqlQuery(db.getConnection());
    query.prepare("Select element from InvalidXML where type='ELEMENT' and element=:element");
    query.bindValue(":element", element);
    if (!query.exec()) {
      logger.log(logger.MEDIUM, "elementExists in invalidXML failed.");
      logger.log(logger.MEDIUM, query.lastError());
    }
    if (query.next())
      return true;
    else
      return false;
  }
 
  // Determine if an element already is in the table
  public boolean attributeExists(String element, String attribute) {
        NSqlQuery query = new NSqlQuery(db.getConnection());
    query.prepare("Select element from InvalidXML where type='ATTRIBUTE' and element=:element and attribute=:attribute");
    query.bindValue(":element", element);
    query.bindValue(":attribute", attribute);
    if (!query.exec()) {
      logger.log(logger.MEDIUM, "attributeExists in invalidXML failed.");
      logger.log(logger.MEDIUM, query.lastError());
    }
    if (query.next())
      return true;
    else
      return false;
  }
}
TOP

Related Classes of cx.fbn.nevernote.sql.InvalidXMLTable

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.