298 lines
9.6 KiB
Java
298 lines
9.6 KiB
Java
/**
|
|
* XidDemo
|
|
*/
|
|
|
|
import fr.devinsy.xid.Data;
|
|
import fr.devinsy.xid.IdData;
|
|
import fr.devinsy.xid.StringPresenter;
|
|
|
|
/**
|
|
*
|
|
*/
|
|
class XidDemo
|
|
{
|
|
static
|
|
{
|
|
// Initialize logger.
|
|
org.apache.log4j.BasicConfigurator.configure();
|
|
|
|
org.apache.log4j.Logger log = null;
|
|
log = org.apache.log4j.Logger.getRootLogger();
|
|
log = org.apache.log4j.Logger.getLogger(XidDemo.class);
|
|
}
|
|
|
|
/**
|
|
*
|
|
*/
|
|
public static void main(final String[] args)
|
|
{
|
|
System.out.println("Hello World!");
|
|
|
|
// test ();
|
|
|
|
//
|
|
Data datas;
|
|
|
|
// Step #01.
|
|
{
|
|
System.out.println("----------------------------");
|
|
|
|
// Populate attributes.
|
|
datas = new Data();
|
|
datas.setContent("name", "Superman");
|
|
|
|
String htmlSource = "<div id='name'>a name</div >";
|
|
StringBuffer htmlTarget;
|
|
try
|
|
{
|
|
htmlTarget = StringPresenter.doXid(htmlSource, datas);
|
|
}
|
|
catch (Exception exception)
|
|
{
|
|
System.out.println(exception.getMessage());
|
|
htmlTarget = null;
|
|
}
|
|
System.out.println("datas = new Data ();");
|
|
System.out.println("datas.setContent (\"name\", \"Superman\");");
|
|
System.out.println("+");
|
|
System.out.println("<div id='name'>a name</div >");
|
|
System.out.println("=>");
|
|
System.out.println(htmlTarget);
|
|
System.out.println("[" + htmlSource.length() + "] => [" + htmlTarget.length() + "]");
|
|
}
|
|
|
|
// Step #02.
|
|
{
|
|
System.out.println("----------------------------");
|
|
// Populate attributes.
|
|
datas = new Data();
|
|
datas.setContent("lastname", "Spiderman");
|
|
datas.appendAttribute("lastname", "style", "background: blue;");
|
|
datas.appendAttribute("lastname", "style", "foreground: red;");
|
|
datas.setAttribute("lastname", "class", "nameClass");
|
|
|
|
String htmlSource = "<div id='lastname'>a last name</div >";
|
|
StringBuffer htmlTarget;
|
|
try
|
|
{
|
|
htmlTarget = StringPresenter.doXid(htmlSource, datas);
|
|
}
|
|
catch (Exception exception)
|
|
{
|
|
System.out.println(exception.getMessage());
|
|
htmlTarget = null;
|
|
}
|
|
|
|
System.out.println("datas = new Data ();");
|
|
System.out.println("datas.setContent (\"lastname\", \"Spiderman\");");
|
|
System.out.println("datas.appendAttribute (\"lastname\", \"style\", \"background: blue;\");");
|
|
System.out.println("datas.appendAttribute (\"lastname\", \"style\", \"foreground: red;\");");
|
|
System.out.println("datas.setAttribute (\"lastname\", \"class\", \"nameClass\");");
|
|
System.out.println("+");
|
|
System.out.println("<div id='lastname'>a last name</div>");
|
|
System.out.println("=>");
|
|
System.out.println(htmlTarget);
|
|
System.out.println("[" + htmlSource.length() + "] => [" + htmlTarget.length() + "]");
|
|
}
|
|
|
|
// Step #03.
|
|
{
|
|
System.out.println("----------------------------");
|
|
// Populate attributes.
|
|
datas = new Data();
|
|
datas.setContent("words", 0, "alpha");
|
|
datas.setContent("words", 1, "bravo");
|
|
datas.setContent("words", 2, "charlie");
|
|
datas.setContent("words", 3, "delta");
|
|
datas.setContent("words", 4, "echo");
|
|
datas.setContent("words", 5, "fox");
|
|
|
|
String htmlSource = "<ul>\n <li id='words'>a word</li>\n</ul>";
|
|
StringBuffer htmlTarget;
|
|
try
|
|
{
|
|
htmlTarget = StringPresenter.doXid(htmlSource, datas);
|
|
}
|
|
catch (Exception exception)
|
|
{
|
|
System.out.println(exception.getMessage());
|
|
htmlTarget = null;
|
|
}
|
|
|
|
System.out.println("datas = new Data ();");
|
|
System.out.println("datas.setContent (\"words\", 0, \"alpha\");");
|
|
System.out.println("datas.setContent (\"words\", 1, \"bravo\");");
|
|
System.out.println("datas.setContent (\"words\", 2, \"charlie\");");
|
|
System.out.println("datas.setContent (\"words\", 3, \"delta\");");
|
|
System.out.println("datas.setContent (\"words\", 4, \"echo\");");
|
|
System.out.println("datas.setContent (\"words\", 5, \"fox\");");
|
|
System.out.println("+");
|
|
System.out.println("<ul>");
|
|
System.out.println(" <li id='words'>a word</li>");
|
|
System.out.println("</ul>");
|
|
System.out.println("=>");
|
|
System.out.println(htmlTarget);
|
|
System.out.println("[" + htmlSource.length() + "] => [" + htmlTarget.length() + "]");
|
|
}
|
|
|
|
// Step #04.
|
|
{
|
|
System.out.println("----------------------------");
|
|
// Populate attributes.
|
|
datas = new Data();
|
|
datas.setContent("identity", 0, "last_name", "Jemba");
|
|
datas.setContent("identity", 0, "first_name", "Epo");
|
|
datas.setContent("identity", 1, "last_name", "Momon");
|
|
datas.setContent("identity", 1, "first_name", "Christian");
|
|
datas.setContent("identity", 2, "last_name", "Tronche");
|
|
datas.setContent("identity", 2, "first_name", "Christophe");
|
|
|
|
StringBuffer source = new StringBuffer();
|
|
source.append("<table>\n");
|
|
source.append(" <tr id='identity'><td>noid</td><td id='first_name'>Jean</td><td id='last_name'>Reve</td></tr>\n");
|
|
source.append("</table>");
|
|
|
|
String htmlSource = source.toString();
|
|
StringBuffer htmlTarget;
|
|
try
|
|
{
|
|
htmlTarget = StringPresenter.doXid(htmlSource, datas);
|
|
}
|
|
catch (Exception exception)
|
|
{
|
|
System.out.println(exception.getMessage());
|
|
htmlTarget = null;
|
|
}
|
|
|
|
System.out.println("datas = new Data ();");
|
|
System.out.println("datas.setContent (\"identity\", 0, \"last_name\", \"Jemba\");");
|
|
System.out.println("datas.setContent (\"identity\", 0, \"first_name\", \"Epo\");");
|
|
System.out.println("datas.setContent (\"identity\", 1, \"last_name\", \"Momon\");");
|
|
System.out.println("datas.setContent (\"identity\", 1, \"first_name\", \"Christian\");");
|
|
System.out.println("datas.setContent (\"identity\", 2, \"last_name\", \"Tronche\");");
|
|
System.out.println("datas.setContent (\"identity\", 2, \"first_name\", \"Christophe\");");
|
|
|
|
System.out.println("+");
|
|
System.out.println(htmlSource);
|
|
System.out.println("=>");
|
|
System.out.println(htmlTarget);
|
|
System.out.println("[" + htmlSource.length() + "] => [" + htmlTarget.length() + "]");
|
|
}
|
|
|
|
// Step #05.
|
|
{
|
|
System.out.println("----------------------------");
|
|
// Populate attributes.
|
|
datas = new Data();
|
|
datas.setContent("identity", 0, "last_name", "Jemba");
|
|
datas.setContent("identity", 0, "first_name", "Epo");
|
|
datas.setContent("identity", 1, "last_name", "Momon");
|
|
datas.setContent("identity", 1, "first_name", "Christian");
|
|
datas.setContent("identity", 2, "last_name", "Tronche");
|
|
datas.setContent("identity", 2, "first_name", "Christophe");
|
|
// datas.setIterationStrategy ("identity",
|
|
// IdsDataByIndex.IterationStrategy.ONLY_ROWS_WITH_ID);
|
|
// datas.setIterationStrategy ("identity",
|
|
// IdsDataByIndex.IterationStrategy.ONLY_ROWS_WITHOUT_ID);
|
|
// datas.setIterationStrategy ("identity",
|
|
// IdsDataByIndex.IterationStrategy.ALL_ROWS);
|
|
|
|
//
|
|
StringBuffer source = new StringBuffer();
|
|
source.append("<table id=\"identities\">\n");
|
|
source.append(" <tr id='the_head'><th>noid</th><th>First Name</th><th>Last Name</th></tr>\n");
|
|
source.append(" <tr id='identity'><td>noid</td><td id='first_name'>Jean</td><td id='last_name'>Reve</td></tr>\n");
|
|
source.append(" <tr id='identity_bis'><td>noid</td><td id='first_name_bis'>a first name</td><td id='last_name_bis'>a last name</td></tr>\n");
|
|
source.append(" <tr><td>noid</td><td id='first_name_ter'>a first name more</td><td id='last_name_ter'>a last name more</td></tr>\n");
|
|
source.append("</table>\n");
|
|
String htmlSource = source.toString();
|
|
|
|
System.out.println("datas = new Data ();");
|
|
System.out.println("datas.setContent (\"identity\", 0, \"first_name\", \"Epo\");");
|
|
System.out.println("datas.setContent (\"identity\", 0, \"last_name\", \"Jemba\");");
|
|
System.out.println("datas.setContent (\"identity\", 1, \"first_name\", \"Christian\");");
|
|
System.out.println("datas.setContent (\"identity\", 1, \"last_name\", \"Momon\");");
|
|
System.out.println("datas.setContent (\"identity\", 2, \"first_name\", \"Christophe\");");
|
|
System.out.println("datas.setContent (\"identity\", 2, \"last_name\", \"Tronche\");");
|
|
|
|
System.out.println("+");
|
|
System.out.println(htmlSource);
|
|
System.out.println("=>");
|
|
|
|
// #05.1
|
|
datas.setIterationStrategy("identities", IdData.IterationStrategy.ONLY_FIRST_ROW);
|
|
System.out.println("ONLY_FIRST_ROW:");
|
|
StringBuffer html;
|
|
try
|
|
{
|
|
html = StringPresenter.doXid(htmlSource, datas);
|
|
}
|
|
catch (Exception exception)
|
|
{
|
|
System.out.println(exception.getMessage());
|
|
html = null;
|
|
}
|
|
System.out.println(html);
|
|
System.out.println("");
|
|
|
|
// #05.2
|
|
datas.setIterationStrategy("identities", IdData.IterationStrategy.ONLY_FIRST_TWO_ROWS);
|
|
System.out.println("ONLY_FIRST_TWO_ROWS:");
|
|
try
|
|
{
|
|
html = StringPresenter.doXid(htmlSource, datas);
|
|
}
|
|
catch (Exception exception)
|
|
{
|
|
System.out.println(exception.getMessage());
|
|
html = null;
|
|
}
|
|
System.out.println(html);
|
|
System.out.println("");
|
|
|
|
// #05.3
|
|
datas.setIterationStrategy("identities", IdData.IterationStrategy.ONLY_ROWS_WITH_ID);
|
|
System.out.println("ONLY_ROWS_WITH_ID:");
|
|
try
|
|
{
|
|
html = StringPresenter.doXid(htmlSource, datas);
|
|
}
|
|
catch (Exception exception)
|
|
{
|
|
System.out.println(exception.getMessage());
|
|
html = null;
|
|
}
|
|
System.out.println(html);
|
|
System.out.println("");
|
|
|
|
// #05.4
|
|
datas.setIterationStrategy("identities", IdData.IterationStrategy.ONLY_ROWS_WITHOUT_ID);
|
|
System.out.println("ONLY_ROWS_WITHOUT_ID:");
|
|
try
|
|
{
|
|
html = StringPresenter.doXid(htmlSource, datas);
|
|
}
|
|
catch (Exception exception)
|
|
{
|
|
System.out.println(exception.getMessage());
|
|
html = null;
|
|
}
|
|
System.out.println(html);
|
|
System.out.println("");
|
|
|
|
// #05.5
|
|
datas.setIterationStrategy("identities", IdData.IterationStrategy.ALL_ROWS);
|
|
System.out.println("ALL_ROWS:");
|
|
try
|
|
{
|
|
html = StringPresenter.doXid(htmlSource, datas);
|
|
}
|
|
catch (Exception exception)
|
|
{
|
|
System.out.println(exception.getMessage());
|
|
html = null;
|
|
}
|
|
System.out.println(html);
|
|
}
|
|
}
|
|
}
|