001 package com.khubla.pragmatach.examples.beforeexample; 002 003 import java.util.Date; 004 005 import com.khubla.pragmatach.framework.annotation.AfterInvoke; 006 import com.khubla.pragmatach.framework.annotation.BeforeInvoke; 007 import com.khubla.pragmatach.framework.annotation.Controller; 008 import com.khubla.pragmatach.framework.annotation.Route; 009 import com.khubla.pragmatach.framework.annotation.View; 010 import com.khubla.pragmatach.framework.api.PragmatachException; 011 import com.khubla.pragmatach.framework.api.Response; 012 import com.khubla.pragmatach.plugin.freemarker.FreemarkerController; 013 014 @Controller() 015 @View(view = "index.ftl") 016 public class IndexController extends FreemarkerController { 017 /** 018 * the message 019 */ 020 private String message; 021 022 @BeforeInvoke 023 public void createTheMessage() { 024 message = "hello from a before invoke method"; 025 } 026 027 @AfterInvoke 028 public void dropMessage() { 029 System.out.println("after invoke"); 030 } 031 032 public String getMessage() { 033 return message; 034 } 035 036 public String getTime() { 037 return new Date().toString(); 038 } 039 040 @Override 041 @Route(uri = "/") 042 public Response render() throws PragmatachException { 043 return super.render(); 044 } 045 }