
// UseDateTool.java
// Rob Harrop, From "Pro Jakarta Velocity", Ch 3, Feb. 2004
// Modified by Andrew Davison, ad@coe.psu.ac.th, July 2023

/* Using the DateTool
   https://velocity.apache.org/tools/3.1/tools-summary.html

   Usage:
    > compile UseDateTool.java
    > run UseDateTool
*/

import java.io.*;
import java.util.*;

import org.apache.velocity.*;
import org.apache.velocity.app.*;
import org.apache.velocity.tools.generic.*;

public class UseDateTool 
{
  private static final String TEMPLATE_FNM = "dateTool.vm";


  public static void main(String[] args) throws Exception 
  {
    Velocity.init();
    System.out.println("Loading template: " + TEMPLATE_FNM);
    Template template = Velocity.getTemplate(TEMPLATE_FNM);
     
    VelocityContext vc = new VelocityContext();
    vc.put("date", new ComparisonDateTool());   // or you can write DateTool()
     
    Calendar aDate = Calendar.getInstance();
    aDate.set(2023, 11, 25);  // Christmas
    vc.put("aDate", aDate);

    StringWriter sw = new StringWriter();
    template.merge(vc, sw);
    System.out.println(sw);
  } // end of main()

}  // end of UseDateTool class
