/* * ======================================================================== * * Copyright 2005 Tim O'Brien. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * ======================================================================== */ package com.discursive.jccook.script.velocity.macro; import java.io.InputStreamReader; import java.io.Reader; import java.io.StringWriter; import org.apache.log4j.Logger; import org.apache.velocity.VelocityContext; import org.apache.velocity.app.VelocityEngine; import com.discursive.jccook.util.LogInit; /** * Include a table of the Values in DateFormatUtils */ public class MailExample { private static Logger logger = Logger.getLogger(MailExample.class); static { LogInit.init(); } public static void main(String[] pArgs) throws Exception { MailExample velocityTest = new MailExample(); velocityTest.testSimpleTemplate(); velocityTest.testAppointment(); } public void testSimpleTemplate() throws Exception { VelocityEngine vEngine = new VelocityEngine(); vEngine.init(); VelocityContext context = new VelocityContext(); context.put("appointment", testAppointment()); StringWriter writer = new StringWriter(); Reader reader = new InputStreamReader( getClass().getResourceAsStream("organize.vm")); vEngine.evaluate(context, writer, "test", reader); logger.debug("organize: " + writer.toString()); } private Appointment testAppointment() { // Create Dummy Appointment Appointment appt = new Appointment(); appt.setId("A3D54"); appt.setStartTime("9 AM"); appt.setEndTime("2 PM"); appt.setDate("9/13/03"); // Create Dummy Organization Organization org = new Organization(); org.setId("5DD2"); org.setBaseUrl("http://www.organize.com/"); org.setEmail("scheduling@organize.com"); Person orgPres = new Person(); orgPres.setFirstName("Brishen"); orgPres.setLastName("R."); orgPres.setEmailAddress("brishenr@organize.com"); org.setPresident(orgPres); Address orgAddr = new Address(); orgAddr.setStreet1("201 N. 2nd Street"); orgAddr.setStreet2("Suite 201"); orgAddr.setCity("Jersey City"); orgAddr.setState("NJ"); orgAddr.setZipcode("20232"); org.setAddress(orgAddr); appt.setOrganization(org); // Create a Dummy Volunteer Person volunteer = new Person(); volunteer.setEmailAddress("johns@space.com"); volunteer.setFirstName("John"); volunteer.setLastName("S."); appt.setVolunteer(volunteer); // Create a Dummy Location Location location = new Location(); location.setId("FD1B"); location.setName("Boston Homeless Veterans Shelter"); Address locAddr = new Address(); locAddr.setStreet1("14 Court Street"); locAddr.setStreet2("Apt. #2E"); locAddr.setCity("Boston"); locAddr.setState("MA"); locAddr.setZipcode("01102"); location.setAddress(locAddr); appt.setLocation(location); return appt; } }