Author: snoopdave
Date: Wed May 2 07:57:05 2007
New Revision: 534500
URL: http://svn.apache.org/viewvc?view=rev&rev=534500
Log:
Example page model
Added:
roller/trunk/docs/examples/plugins/
roller/trunk/docs/examples/plugins/pluginmodel/ (with props)
roller/trunk/docs/examples/plugins/pluginmodel/README.html
roller/trunk/docs/examples/plugins/pluginmodel/build.xml
roller/trunk/docs/examples/plugins/pluginmodel/src/
roller/trunk/docs/examples/plugins/pluginmodel/src/org/
roller/trunk/docs/examples/plugins/pluginmodel/src/org/apache/
roller/trunk/docs/examples/plugins/pluginmodel/src/org/apache/roller/
roller/trunk/docs/examples/plugins/pluginmodel/src/org/apache/roller/examples/
roller/trunk/docs/examples/plugins/pluginmodel/src/org/apache/roller/examples/plugins/
roller/trunk/docs/examples/plugins/pluginmodel/src/org/apache/roller/examples/plugins/pagemodel/
roller/trunk/docs/examples/plugins/pluginmodel/src/org/apache/roller/examples/plugins/pagemodel/AuthenticatedUserModel.java
Modified:
roller/trunk/docs/examples/rollertask/ (props changed)
Propchange: roller/trunk/docs/examples/plugins/pluginmodel/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed May 2 07:57:05 2007
@@ -0,0 +1,2 @@
+build
+dist
Added: roller/trunk/docs/examples/plugins/pluginmodel/README.html
URL:
http://svn.apache.org/viewvc/roller/trunk/docs/examples/plugins/pluginmodel/README.html?view=auto&rev=534500
==============================================================================
--- roller/trunk/docs/examples/plugins/pluginmodel/README.html (added)
+++ roller/trunk/docs/examples/plugins/pluginmodel/README.html Wed May 2
07:57:05 2007
@@ -0,0 +1,52 @@
+
+README.html pluginmodel
+
+This directory contains a simple example of a Plugin Model class which allows
+Roller templates to access the user-object representing the currently
+authenticated user using "$authenticated.user".
+
+To build the example, simply run the provided Ant buil.xml file.
+
+To use the example in Roller do these steps:
+
+1) Copy the jar dist/authusermodel.jar to the Roller WEB-INF/lib directory
+
+2) Override the Roller model properties to add the name of the new model class
+ to the list of models used by Roller's page, search and preview Servlets.
+
+ That means you'll have to add the following to your roller-custom.properties
+ file:
+
+# Set of models to be made available for weblog page rendering
+rendering.pageModels=\
+org.apache.roller.ui.rendering.model.PageModel,\
+org.apache.roller.ui.rendering.model.ConfigModel,\
+org.apache.roller.ui.rendering.model.UtilitiesModel,\
+org.apache.roller.ui.rendering.model.URLModel,\
+org.apache.roller.ui.rendering.model.MessageModel,\
+org.apache.roller.ui.rendering.model.CalendarModel,\
+org.apache.roller.ui.rendering.model.MenuModel,\
+org.apache.roller.examples.plugins.pagemodel.AuthenticatedUserModel
+
+# Set of models to be made available for weblog search rendering
+rendering.searchModels=\
+org.apache.roller.ui.rendering.model.SearchResultsModel,\
+org.apache.roller.ui.rendering.model.ConfigModel,\
+org.apache.roller.ui.rendering.model.UtilitiesModel,\
+org.apache.roller.ui.rendering.model.URLModel,\
+org.apache.roller.ui.rendering.model.MessageModel,\
+org.apache.roller.ui.rendering.model.CalendarModel,\
+org.apache.roller.ui.rendering.model.MenuModel,\
+org.apache.roller.examples.plugins.pagemodel.AuthenticatedUserModel
+
+# Set of models to be made available for weblog page *preview* rendering
+# NOTE: this *does* have some differences between the pageModels
+rendering.previewModels=\
+org.apache.roller.ui.rendering.model.PreviewPageModel,\
+org.apache.roller.ui.rendering.model.ConfigModel,\
+org.apache.roller.ui.rendering.model.UtilitiesModel,\
+org.apache.roller.ui.rendering.model.PreviewURLModel,\
+org.apache.roller.ui.rendering.model.MessageModel,\
+org.apache.roller.ui.rendering.model.CalendarModel,\
+org.apache.roller.ui.rendering.model.MenuModel,\
+org.apache.roller.examples.plugins.pagemodel.AuthenticatedUserModel
Added: roller/trunk/docs/examples/plugins/pluginmodel/build.xml
URL:
http://svn.apache.org/viewvc/roller/trunk/docs/examples/plugins/pluginmodel/build.xml?view=auto&rev=534500
==============================================================================
--- roller/trunk/docs/examples/plugins/pluginmodel/build.xml (added)
+++ roller/trunk/docs/examples/plugins/pluginmodel/build.xml Wed May 2
07:57:05 2007
@@ -0,0 +1,20 @@
+
+<project name="pluginmodel" default="dist">
+
+ <property name="rollerdir" value="../../../.." />
+
+ <target name="dist">
+ <mkdir dir="build" />
+ <mkdir dir="dist" />
+ <javac srcdir="src" destdir="build">
+ <classpath>
+ <pathelement path="${rollerdir}/build/lib/roller-business.jar"
/>
+ <pathelement path="${rollerdir}/build/lib/roller-web.jar" />
+ <pathelement
path="${rollerdir}/tools/lib/commons-logging-1.0.4.jar" />
+ <pathelement
path="${rollerdir}/tools/buildtime/tomcat-5.0.28/servlet-api.jar" />
+ </classpath>
+ </javac>
+ <jar basedir="build" destfile="dist/authusermodel.jar" />
+ </target>
+
+</project>
\ No newline at end of file
Added:
roller/trunk/docs/examples/plugins/pluginmodel/src/org/apache/roller/examples/plugins/pagemodel/AuthenticatedUserModel.java
URL:
http://svn.apache.org/viewvc/roller/trunk/docs/examples/plugins/pluginmodel/src/org/apache/roller/examples/plugins/pagemodel/AuthenticatedUserModel.java?view=auto&rev=534500
==============================================================================
---
roller/trunk/docs/examples/plugins/pluginmodel/src/org/apache/roller/examples/plugins/pagemodel/AuthenticatedUserModel.java
(added)
+++
roller/trunk/docs/examples/plugins/pluginmodel/src/org/apache/roller/examples/plugins/pagemodel/AuthenticatedUserModel.java
Wed May 2 07:57:05 2007
@@ -0,0 +1,37 @@
+
+package org.apache.roller.examples.plugins.pagemodel;
+
+import java.util.Map;
+import javax.servlet.http.HttpServletRequest;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.roller.RollerException;
+import org.apache.roller.pojos.wrapper.UserDataWrapper;
+import org.apache.roller.ui.core.RollerSession;
+import org.apache.roller.ui.rendering.model.Model;
+
+
+public class AuthenticatedUserModel implements Model {
+ private static Log log = LogFactory.getLog(AuthenticatedUserModel.class);
+ private HttpServletRequest request = null;
+
+ public String getModelName() {
+ return "authenticated";
+ }
+
+ public void init(Map params) throws RollerException {
+ this.request = (HttpServletRequest)params.get("request");
+ }
+
+ public UserDataWrapper getUser() {
+ try {
+ RollerSession rses = RollerSession.getRollerSession(request);
+ if (rses != null && rses.getAuthenticatedUser() != null) {
+ return UserDataWrapper.wrap(rses.getAuthenticatedUser());
+ }
+ } catch (Exception e) {
+ log.warn("ERROR: checking user authorization", e);
+ }
+ return null;
+ }
+}
Propchange: roller/trunk/docs/examples/rollertask/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed May 2 07:57:05 2007
@@ -0,0 +1 @@
+logs