|
From: <fg...@us...> - 2009-07-28 15:06:01
|
Revision: 1241
http://openutils.svn.sourceforge.net/openutils/?rev=1241&view=rev
Author: fgiust
Date: 2009-07-28 15:05:47 +0000 (Tue, 28 Jul 2009)
Log Message:
-----------
new repoutils module
Added Paths:
-----------
trunk/openutils-mgnlrepoutils/
trunk/openutils-mgnlrepoutils/pom.xml
trunk/openutils-mgnlrepoutils/src/
trunk/openutils-mgnlrepoutils/src/main/
trunk/openutils-mgnlrepoutils/src/main/java/
trunk/openutils-mgnlrepoutils/src/main/java/net/
trunk/openutils-mgnlrepoutils/src/main/java/net/sourceforge/
trunk/openutils-mgnlrepoutils/src/main/java/net/sourceforge/openutils/
trunk/openutils-mgnlrepoutils/src/main/java/net/sourceforge/openutils/mgnlrepoutils/
trunk/openutils-mgnlrepoutils/src/main/java/net/sourceforge/openutils/mgnlrepoutils/RepositoryUtilsPage.java
trunk/openutils-mgnlrepoutils/src/main/java/org/
trunk/openutils-mgnlrepoutils/src/main/java/org/apache/
trunk/openutils-mgnlrepoutils/src/main/java/org/apache/jackrabbit/
trunk/openutils-mgnlrepoutils/src/main/java/org/apache/jackrabbit/core/
trunk/openutils-mgnlrepoutils/src/main/java/org/apache/jackrabbit/core/query/
trunk/openutils-mgnlrepoutils/src/main/java/org/apache/jackrabbit/core/query/lucene/
trunk/openutils-mgnlrepoutils/src/main/java/org/apache/jackrabbit/core/query/lucene/IndexUtils.java
trunk/openutils-mgnlrepoutils/src/main/resources/
trunk/openutils-mgnlrepoutils/src/main/resources/META-INF/
trunk/openutils-mgnlrepoutils/src/main/resources/META-INF/magnolia/
trunk/openutils-mgnlrepoutils/src/main/resources/META-INF/magnolia/repoutils.xml
trunk/openutils-mgnlrepoutils/src/main/resources/mgnl-bootstrap/
trunk/openutils-mgnlrepoutils/src/main/resources/mgnl-bootstrap/repoutils/
trunk/openutils-mgnlrepoutils/src/main/resources/mgnl-bootstrap/repoutils/config.modules.adminInterface.config.menu.tools.repoutils.xml
trunk/openutils-mgnlrepoutils/src/main/resources/mgnl-bootstrap/repoutils/config.modules.repoutils.pages.repoutils.xml
trunk/openutils-mgnlrepoutils/src/main/resources/net/
trunk/openutils-mgnlrepoutils/src/main/resources/net/sourceforge/
trunk/openutils-mgnlrepoutils/src/main/resources/net/sourceforge/openutils/
trunk/openutils-mgnlrepoutils/src/site/
trunk/openutils-mgnlrepoutils/src/site/apt/
trunk/openutils-mgnlrepoutils/src/site/apt/index.apt
trunk/openutils-mgnlrepoutils/src/site/changes/
trunk/openutils-mgnlrepoutils/src/site/changes/changes.xml
trunk/openutils-mgnlrepoutils/src/site/site.xml
Property changes on: trunk/openutils-mgnlrepoutils
___________________________________________________________________
Added: svn:ignore
+ .checkstyle
.classpath
.project
target
.settings
Added: trunk/openutils-mgnlrepoutils/pom.xml
===================================================================
--- trunk/openutils-mgnlrepoutils/pom.xml (rev 0)
+++ trunk/openutils-mgnlrepoutils/pom.xml 2009-07-28 15:05:47 UTC (rev 1241)
@@ -0,0 +1,71 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd ">
+ <parent>
+ <groupId>net.sourceforge.openutils</groupId>
+ <artifactId>openutils</artifactId>
+ <version>11</version>
+ <relativePath>..</relativePath>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <packaging>jar</packaging>
+ <artifactId>openutils-mgnlrepoutils</artifactId>
+ <name>openutils-mgnlrepoutils</name>
+ <version>4.0-SNAPSHOT</version>
+ <licenses>
+ <license>
+ <name>GPLv3</name>
+ <url>http://www.gnu.org/licenses/gpl-3.0.txt</url>
+ </license>
+ </licenses>
+ <build>
+ <resources>
+ <resource>
+ <filtering>false</filtering>
+ <directory>src/main/resources</directory>
+ <includes>
+ <include>**/*</include>
+ </includes>
+ </resource>
+ <resource>
+ <filtering>true</filtering>
+ <directory>src/main/resources</directory>
+ <includes>
+ <include>META-INF/magnolia/*</include>
+ </includes>
+ </resource>
+ </resources>
+ </build>
+ <dependencies>
+ <dependency>
+ <groupId>info.magnolia</groupId>
+ <artifactId>magnolia-module-admininterface</artifactId>
+ <version>4.0.1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <classifier>jdk15</classifier>
+ <version>5.1</version>
+ <scope>test</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ </dependencies>
+ <repositories>
+ <repository>
+ <id>repository.magnolia.info</id>
+ <name>magnolia repository</name>
+ <url>http://repository.magnolia-cms.com/m2</url>
+ <releases>
+ <enabled>true</enabled>
+ </releases>
+ <snapshots>
+ <enabled>false</enabled>
+ </snapshots>
+ </repository>
+ </repositories>
+</project>
\ No newline at end of file
Property changes on: trunk/openutils-mgnlrepoutils/pom.xml
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/openutils-mgnlrepoutils/src/main/java/net/sourceforge/openutils/mgnlrepoutils/RepositoryUtilsPage.java
===================================================================
--- trunk/openutils-mgnlrepoutils/src/main/java/net/sourceforge/openutils/mgnlrepoutils/RepositoryUtilsPage.java (rev 0)
+++ trunk/openutils-mgnlrepoutils/src/main/java/net/sourceforge/openutils/mgnlrepoutils/RepositoryUtilsPage.java 2009-07-28 15:05:47 UTC (rev 1241)
@@ -0,0 +1,171 @@
+/**
+ * Copyright Openmind http://www.openmindonline.it
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+package net.sourceforge.openutils.mgnlrepoutils;
+
+import info.magnolia.cms.beans.config.ContentRepository;
+import info.magnolia.cms.util.AlertUtil;
+import info.magnolia.context.MgnlContext;
+import info.magnolia.module.admininterface.TemplatedMVCHandler;
+
+import java.lang.reflect.Field;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.util.Iterator;
+
+import javax.jcr.Repository;
+import javax.jcr.RepositoryException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.commons.lang.ArrayUtils;
+import org.apache.commons.lang.StringUtils;
+import org.apache.jackrabbit.core.WorkspaceImpl;
+import org.apache.jackrabbit.core.persistence.PersistenceManager;
+import org.apache.jackrabbit.core.query.QueryManagerImpl;
+import org.apache.jackrabbit.core.query.lucene.IndexUtils;
+import org.apache.jackrabbit.core.query.lucene.SearchIndex;
+
+
+/**
+ * @author fgiust
+ * @version $Id$
+ */
+public class RepositoryUtilsPage extends TemplatedMVCHandler
+{
+
+ private String[] repos;
+
+ /**
+ * @param name
+ * @param request
+ * @param response
+ */
+ public RepositoryUtilsPage(String name, HttpServletRequest request, HttpServletResponse response)
+ {
+ super(name, request, response);
+ }
+
+ /**
+ * Returns the repos.
+ * @return the repos
+ */
+ public String[] getRepos()
+ {
+ return repos;
+ }
+
+ /**
+ * Sets the repos.
+ * @param repos the repos to set
+ */
+ public void setRepos(String[] repos)
+ {
+ this.repos = repos;
+ }
+
+ public Iterator<String> getRepositories()
+ {
+ return ContentRepository.getAllRepositoryNames();
+ }
+
+ public String doIndexConsistencyFix() throws Exception
+ {
+
+ for (String repo : repos)
+ {
+ IndexUtils iu = new IndexUtils(getSearchIndex(repo));
+ iu.runConsistencyCheck(true);
+ }
+ AlertUtil.setMessage("Index consistency fix done on " + ArrayUtils.toString(repos));
+ return this.show();
+ }
+
+ public String doPmCheck() throws Exception
+ {
+ for (String repo : repos)
+ {
+ PersistenceManager pm = getPersistenceManager(repo);
+ pm.checkConsistency(null, true, true);
+ }
+ AlertUtil.setMessage("Persistence manager check done on " + ArrayUtils.toString(repos));
+ return this.show();
+ }
+
+ private Object getPropertyUsingReflection(Object object, String property) throws NoSuchMethodException,
+ IllegalAccessException, InvocationTargetException
+ {
+ Method method = object
+ .getClass()
+ .getDeclaredMethod("get" + StringUtils.capitalize(property), new Class< ? >[0]);
+ method.setAccessible(true);
+ return method.invoke(object, new Object[0]);
+ }
+
+ private SearchIndex getSearchIndex(String repo) throws RepositoryException, NoSuchMethodException,
+ IllegalAccessException, InvocationTargetException
+ {
+ WorkspaceImpl workspace = (WorkspaceImpl) MgnlContext.getHierarchyManager(repo).getWorkspace();
+
+ QueryManagerImpl queryManager = (QueryManagerImpl) workspace.getQueryManager();
+
+ SearchIndex searchIndex = (SearchIndex) getPropertyUsingReflection(queryManager, "queryHandler");
+ return searchIndex;
+ }
+
+ private PersistenceManager getPersistenceManager(String repo) throws Exception
+ {
+ WorkspaceImpl workspace = (WorkspaceImpl) MgnlContext.getHierarchyManager(repo).getWorkspace();
+ Repository repository = workspace.getSession().getRepository();
+
+ String workspaceName = ContentRepository.getMappedWorkspaceName(repo);
+ return getPM(repository, workspaceName);
+ }
+
+ private PersistenceManager getPM(Repository repository, String workspaceName) throws Exception
+ {
+ if (workspaceName == null || workspaceName.equals("version"))
+ {
+ Object versionManager = findMethodByName(repository, "getVersionManager", null);
+
+ Field f = versionManager.getClass().getDeclaredField("pMgr");
+ f.setAccessible(true);
+ return (PersistenceManager) f.get(versionManager);
+ }
+
+ Object workspaceInfo = findMethodByName(repository, "getWorkspaceInfo", new Object[]{workspaceName });
+ return (PersistenceManager) findMethodByName(workspaceInfo, "getPersistenceManager", null);
+ }
+
+ private Object findMethodByName(Object obj, String name, Object[] parameters) throws Exception
+ {
+ Method m = null;
+ Method[] ms = obj.getClass().getDeclaredMethods();
+ for (int i = 0; i < ms.length; i++)
+ {
+ final Method x = ms[i];
+ if (x.getName().equals(name))
+ {
+ m = x;
+ break;
+ }
+ }
+ m.setAccessible(true);
+ return m.invoke(obj, parameters);
+ }
+
+}
Property changes on: trunk/openutils-mgnlrepoutils/src/main/java/net/sourceforge/openutils/mgnlrepoutils/RepositoryUtilsPage.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/openutils-mgnlrepoutils/src/main/java/org/apache/jackrabbit/core/query/lucene/IndexUtils.java
===================================================================
--- trunk/openutils-mgnlrepoutils/src/main/java/org/apache/jackrabbit/core/query/lucene/IndexUtils.java (rev 0)
+++ trunk/openutils-mgnlrepoutils/src/main/java/org/apache/jackrabbit/core/query/lucene/IndexUtils.java 2009-07-28 15:05:47 UTC (rev 1241)
@@ -0,0 +1,68 @@
+/**
+ * Copyright Openmind http://www.openmindonline.it
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+package org.apache.jackrabbit.core.query.lucene;
+
+import java.io.IOException;
+import java.util.List;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+
+/**
+ * Utility class used to run a consistency check on the jackrabbit index. This class needs to be in the
+ * org.apache.jackrabbit.core.query.lucene package due to the usage of protected members.
+ * @author fgiust
+ * @version $Id$
+ */
+public class IndexUtils
+{
+
+ private final SearchIndex searchIndex;
+
+ /**
+ *
+ */
+ public IndexUtils(SearchIndex searchIndex)
+ {
+ this.searchIndex = searchIndex;
+ }
+
+ /**
+ * Logger.
+ */
+ private static Logger log = LoggerFactory.getLogger(IndexUtils.class);
+
+ public void runConsistencyCheck(boolean fix) throws IOException
+ {
+
+ MultiIndex index = searchIndex.getIndex();
+
+ ConsistencyCheck check = ConsistencyCheck.run(index, searchIndex.getContext().getItemStateManager());
+
+ List<ConsistencyCheckError> errors = check.getErrors();
+
+ log.info("Error detected: {}", errors.size());
+
+ if (fix)
+ {
+ check.repair(true);
+ }
+ }
+
+}
Property changes on: trunk/openutils-mgnlrepoutils/src/main/java/org/apache/jackrabbit/core/query/lucene/IndexUtils.java
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/openutils-mgnlrepoutils/src/main/resources/META-INF/magnolia/repoutils.xml
===================================================================
--- trunk/openutils-mgnlrepoutils/src/main/resources/META-INF/magnolia/repoutils.xml (rev 0)
+++ trunk/openutils-mgnlrepoutils/src/main/resources/META-INF/magnolia/repoutils.xml 2009-07-28 15:05:47 UTC (rev 1241)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE module SYSTEM "module.dtd">
+<module>
+ <name>repoutils</name>
+ <displayName>Magnolia repository utils</displayName>
+ <description>Magnolia repository utils</description>
+ <version>${project.version}</version>
+ <dependencies>
+ <dependency>
+ <name>adminInterface</name>
+ <version>3.0/*</version>
+ </dependency>
+ </dependencies>
+</module>
\ No newline at end of file
Property changes on: trunk/openutils-mgnlrepoutils/src/main/resources/META-INF/magnolia/repoutils.xml
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/openutils-mgnlrepoutils/src/main/resources/mgnl-bootstrap/repoutils/config.modules.adminInterface.config.menu.tools.repoutils.xml
===================================================================
--- trunk/openutils-mgnlrepoutils/src/main/resources/mgnl-bootstrap/repoutils/config.modules.adminInterface.config.menu.tools.repoutils.xml (rev 0)
+++ trunk/openutils-mgnlrepoutils/src/main/resources/mgnl-bootstrap/repoutils/config.modules.adminInterface.config.menu.tools.repoutils.xml 2009-07-28 15:05:47 UTC (rev 1241)
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<sv:node sv:name="repoutils" xmlns:sv="http://www.jcp.org/jcr/sv/1.0">
+ <sv:property sv:name="jcr:primaryType" sv:type="Name">
+ <sv:value>mgnl:contentNode</sv:value>
+ </sv:property>
+ <sv:property sv:name="jcr:uuid" sv:type="String">
+ <sv:value>0c3575e6-8066-4ad7-ad9a-310ced5f914f</sv:value>
+ </sv:property>
+ <sv:property sv:name="icon" sv:type="String">
+ <sv:value>/.resources/icons/16/dot.gif</sv:value>
+ </sv:property>
+ <sv:property sv:name="label" sv:type="String">
+ <sv:value>Repository tools</sv:value>
+ </sv:property>
+ <sv:property sv:name="onclick" sv:type="String">
+ <sv:value>MgnlAdminCentral.showContent('/.magnolia/pages/repoutils.html');</sv:value>
+ </sv:property>
+ <sv:node sv:name="MetaData">
+ <sv:property sv:name="jcr:primaryType" sv:type="Name">
+ <sv:value>mgnl:metaData</sv:value>
+ </sv:property>
+ <sv:property sv:name="mgnl:Data" sv:type="String">
+ <sv:value>MetaData</sv:value>
+ </sv:property>
+ <sv:property sv:name="mgnl:activated" sv:type="Boolean">
+ <sv:value>false</sv:value>
+ </sv:property>
+ <sv:property sv:name="mgnl:activatorid" sv:type="String">
+ <sv:value>superuser</sv:value>
+ </sv:property>
+ <sv:property sv:name="mgnl:authorid" sv:type="String">
+ <sv:value>admin</sv:value>
+ </sv:property>
+ <sv:property sv:name="mgnl:creationdate" sv:type="Date">
+ <sv:value>2005-05-16T20:46:43.549+02:00</sv:value>
+ </sv:property>
+ <sv:property sv:name="mgnl:lastaction" sv:type="Date">
+ <sv:value>2006-05-21T08:38:57.164+02:00</sv:value>
+ </sv:property>
+ <sv:property sv:name="mgnl:lastmodified" sv:type="Date">
+ <sv:value>2009-06-07T21:40:22.109+02:00</sv:value>
+ </sv:property>
+ </sv:node>
+</sv:node>
Property changes on: trunk/openutils-mgnlrepoutils/src/main/resources/mgnl-bootstrap/repoutils/config.modules.adminInterface.config.menu.tools.repoutils.xml
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/openutils-mgnlrepoutils/src/main/resources/mgnl-bootstrap/repoutils/config.modules.repoutils.pages.repoutils.xml
===================================================================
--- trunk/openutils-mgnlrepoutils/src/main/resources/mgnl-bootstrap/repoutils/config.modules.repoutils.pages.repoutils.xml (rev 0)
+++ trunk/openutils-mgnlrepoutils/src/main/resources/mgnl-bootstrap/repoutils/config.modules.repoutils.pages.repoutils.xml 2009-07-28 15:05:47 UTC (rev 1241)
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<sv:node sv:name="repoutils" xmlns:sv="http://www.jcp.org/jcr/sv/1.0">
+ <sv:property sv:name="jcr:primaryType" sv:type="Name">
+ <sv:value>mgnl:contentNode</sv:value>
+ </sv:property>
+ <sv:property sv:name="jcr:uuid" sv:type="String">
+ <sv:value>f5665eeb-9da9-4b77-9817-453e4e9a4f83</sv:value>
+ </sv:property>
+ <sv:property sv:name="class" sv:type="String">
+ <sv:value>net.sourceforge.openutils.mgnlcheck.RepositoryUtilsPage</sv:value>
+ </sv:property>
+ <sv:node sv:name="MetaData">
+ <sv:property sv:name="jcr:primaryType" sv:type="Name">
+ <sv:value>mgnl:metaData</sv:value>
+ </sv:property>
+ <sv:property sv:name="mgnl:Data" sv:type="String">
+ <sv:value>MetaData</sv:value>
+ </sv:property>
+ <sv:property sv:name="mgnl:activated" sv:type="Boolean">
+ <sv:value>true</sv:value>
+ </sv:property>
+ <sv:property sv:name="mgnl:activatorid" sv:type="String">
+ <sv:value>superuser</sv:value>
+ </sv:property>
+ <sv:property sv:name="mgnl:authorid" sv:type="String">
+ <sv:value>admin</sv:value>
+ </sv:property>
+ <sv:property sv:name="mgnl:creationdate" sv:type="Date">
+ <sv:value>2005-07-15T14:26:11.205+02:00</sv:value>
+ </sv:property>
+ <sv:property sv:name="mgnl:lastaction" sv:type="Date">
+ <sv:value>2006-05-07T10:04:20.253+02:00</sv:value>
+ </sv:property>
+ <sv:property sv:name="mgnl:lastmodified" sv:type="Date">
+ <sv:value>2009-06-07T21:39:13.846+02:00</sv:value>
+ </sv:property>
+ </sv:node>
+</sv:node>
Property changes on: trunk/openutils-mgnlrepoutils/src/main/resources/mgnl-bootstrap/repoutils/config.modules.repoutils.pages.repoutils.xml
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/openutils-mgnlrepoutils/src/site/apt/index.apt
===================================================================
--- trunk/openutils-mgnlrepoutils/src/site/apt/index.apt (rev 0)
+++ trunk/openutils-mgnlrepoutils/src/site/apt/index.apt 2009-07-28 15:05:47 UTC (rev 1241)
@@ -0,0 +1,25 @@
+ --------------------------
+ openutils-mgnlrepoutils
+ --------------------------
+ Fabrizio Giustina
+ --------------------------
+
+About openutils-mgnlrepoutils
+
+ openutils-mgnlrepoutils is a simple {{{http://www.magnolia.info}magnolia}} module which let you run consistency checks
+ on jackrabbit repository from the admin interface
+
+
+Configuration
+
+ Drop the openutils-mgnlrepoutils jar into WEB-INF/lib, or if you are using maven just declare the following dependency:
+
++----------------------------------------------+
+ <dependency>
+ <groupId>net.sourceforge.openutils</groupId>
+ <artifactId>openutils-mgnlrepoutils</artifactId>
+ <version>4.0</version>
+ </dependency>
++----------------------------------------------+
+
+ A new page named "Repository utils" will show up in the tools section in the magnolia admin central.
Property changes on: trunk/openutils-mgnlrepoutils/src/site/apt/index.apt
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/openutils-mgnlrepoutils/src/site/changes/changes.xml
===================================================================
--- trunk/openutils-mgnlrepoutils/src/site/changes/changes.xml (rev 0)
+++ trunk/openutils-mgnlrepoutils/src/site/changes/changes.xml 2009-07-28 15:05:47 UTC (rev 1241)
@@ -0,0 +1,15 @@
+<?xml version="1.0"?>
+ <!--
+ "type" attribute can be: add, remove, update or fix.
+-->
+<document>
+ <properties>
+ <title>Changes</title>
+ <author email="fgiust(at)users.sourceforge.net">Fabrizio Giustina</author>
+ </properties>
+ <body>
+ <release version="4.0" date="2009-07-28" description="">
+ <action type="add" dev="fgiust">First release (marked as 4.0 to align with supported magnolia versions)</action>
+ </release>
+ </body>
+</document>
\ No newline at end of file
Property changes on: trunk/openutils-mgnlrepoutils/src/site/changes/changes.xml
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/openutils-mgnlrepoutils/src/site/site.xml
===================================================================
--- trunk/openutils-mgnlrepoutils/src/site/site.xml (rev 0)
+++ trunk/openutils-mgnlrepoutils/src/site/site.xml 2009-07-28 15:05:47 UTC (rev 1241)
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="Openutils mgnlrepoutils">
+ <publishDate position="navigation-bottom" format="yyyy-MM-dd" />
+ <version position="navigation-bottom" />
+ <bannerRight>
+ <name>Openutils</name>
+ <src>http://openutils.sourceforge.net/images/openutils-logo.png</src>
+ <href>http://openutils.sourceforge.net</href>
+ </bannerRight>
+ <bannerLeft>
+ <name>Sourceforge</name>
+ <src>http://sourceforge.net/sflogo.php?group_id=150467&amp;type=2</src>
+ <href>http://www.sourceforge.net/projects/openutils</href>
+ </bannerLeft>
+ <body>
+ <head>
+ <link rel="icon" href="images/favicon.ico" />
+ </head>
+ <breadcrumbs>
+ <item name="openutils" href="http://openutils.sourceforge.net/" />
+ <item name="openutils-mgnlrepoutils" href="http://openutils.sourceforge.net/openutils-mgnlrepoutils" />
+ </breadcrumbs>
+ <menu name="openutils mgnlrepoutils">
+ <item name="Usage" href="index.html"></item>
+ </menu>
+ <menu ref="modules" inherit="bottom" />
+ <menu ref="reports" inherit="bottom" />
+ </body>
+ <skin>
+ <groupId>net.sourceforge.openutils</groupId>
+ <artifactId>openutils-maven-skin</artifactId>
+ <version>1.1</version>
+ </skin>
+</project>
\ No newline at end of file
Property changes on: trunk/openutils-mgnlrepoutils/src/site/site.xml
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|