001 package com.khubla.pragmatach.examples.velocityexample; 002 003 import java.util.Date; 004 005 import com.khubla.pragmatach.framework.annotation.Controller; 006 import com.khubla.pragmatach.framework.annotation.Route; 007 import com.khubla.pragmatach.framework.annotation.RouteParameter; 008 import com.khubla.pragmatach.framework.annotation.View; 009 import com.khubla.pragmatach.framework.api.PragmatachException; 010 import com.khubla.pragmatach.framework.api.Response; 011 import com.khubla.pragmatach.plugin.velocity.VelocityController; 012 013 @Controller(name = "IndexController") 014 @View(view = "index.vtl") 015 public class IndexController extends VelocityController { 016 /** 017 * the message 018 */ 019 private final String message = "hello world"; 020 /** 021 * the sum 022 */ 023 private int sum = 0; 024 025 public String getMessage() { 026 return message; 027 } 028 029 public int getSum() { 030 return sum; 031 } 032 033 public String getTime() { 034 return new Date().toString(); 035 } 036 037 @Override 038 @Route(uri = "/") 039 public Response render() throws PragmatachException { 040 return super.render(); 041 } 042 043 @Route(uri = "/@num") 044 public Response render(@RouteParameter(name = "num") int number) throws PragmatachException { 045 sum = number * 2; 046 return super.render(); 047 } 048 049 public void setSum(int sum) { 050 this.sum = sum; 051 } 052 }