Package info.bliki.api.creator

Source Code of info.bliki.api.creator.HTMLCreatorExample

package info.bliki.api.creator;

import info.bliki.api.User;
import info.bliki.wiki.filter.Encoder;
import info.bliki.wiki.impl.APIWikiModel;

import java.io.IOException;

/**
* Test to load a page and images and templates from en.wikipedia.org and render
* it into a HTML file.
*/
public class HTMLCreatorExample {
  public HTMLCreatorExample() {
    super();
  }

  public static void testWikipediaENAPI(String title) {
    String[] listOfTitleStrings = { title };
    String titleURL = Encoder.encodeTitleLocalUrl(title);
    User user = new User("", "", "http://en.wikipedia.org/w/api.php");
    user.login();
    String mainDirectory = "c:/temp/";
    // the following subdirectory should not exist if you would like to create a
    // new database
    String databaseSubdirectory = "WikiDB";
    // the following directory must exist for image downloads
    String imageDirectory = "c:/temp/WikiImages";
    // the generated HTML will be stored in this file name:
    String generatedHTMLFilename = mainDirectory + titleURL + ".html";

    WikiDB db = null;

    try {
      db = new WikiDB(mainDirectory, databaseSubdirectory);
      APIWikiModel wikiModel = new APIWikiModel(user, db, "${image}", "${title}", imageDirectory);
      DocumentCreator creator = new DocumentCreator(wikiModel, user, listOfTitleStrings);
      creator.setHeader(HTMLConstants.HTML_HEADER1 + HTMLConstants.CSS_SCREEN_STYLE + HTMLConstants.HTML_HEADER2);
      creator.setFooter(HTMLConstants.HTML_FOOTER);
      wikiModel.setUp();
      creator.renderToFile(generatedHTMLFilename);

    } catch (IOException e) {
      e.printStackTrace();
    } catch (Exception e1) {
      e1.printStackTrace();
    } finally {
      if (db != null) {
        try {
          db.tearDown();
        } catch (Exception e) {
          e.printStackTrace();
        }
      }
    }
  }

  public static void testCreator001() {
    testWikipediaENAPI("Tom Hanks");
  }

  public static void testCreator002() {
    testWikipediaENAPI("Political party strength in California");
  }

  public static void testCreator003() {
    testWikipediaENAPI("Chris Capuano");
  }

  public static void testCreator004() {
    testWikipediaENAPI("Protein");
  }

  public static void testCreator005() {
    testWikipediaENAPI("Depeche Mode");
  }

  public static void testCreator006() {
    testWikipediaENAPI("Anarchism");
  }

  public static void main(String[] args) {
    testCreator001();
  }
}
TOP

Related Classes of info.bliki.api.creator.HTMLCreatorExample

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.