Author: vmassol
Date: 2007-09-27 13:02:10 +0200 (Thu, 27 Sep 2007)
New Revision: 5105

Added:
   xwiki-platform/xwiki-applications/trunk/scheduler/
   xwiki-platform/xwiki-applications/trunk/scheduler/pom.xml
   xwiki-platform/xwiki-applications/trunk/scheduler/src/
   xwiki-platform/xwiki-applications/trunk/scheduler/src/main/
   xwiki-platform/xwiki-applications/trunk/scheduler/src/main/resources/
   
xwiki-platform/xwiki-applications/trunk/scheduler/src/main/resources/Scheduler/
   
xwiki-platform/xwiki-applications/trunk/scheduler/src/main/resources/Scheduler/WebHome
   xwiki-platform/xwiki-applications/trunk/scheduler/src/main/resources/XWiki/
   
xwiki-platform/xwiki-applications/trunk/scheduler/src/main/resources/XWiki/SchedulerJobClass
   
xwiki-platform/xwiki-applications/trunk/scheduler/src/main/resources/XWiki/SchedulerJobSheet
   
xwiki-platform/xwiki-applications/trunk/scheduler/src/main/resources/XWiki/SchedulerJobTemplate
Modified:
   xwiki-platform/xwiki-applications/trunk/pom.xml
Log:
XASCH-5: Implement a Scheduler XAR Application
Patch submitted by Jerome Velociter

Modified: xwiki-platform/xwiki-applications/trunk/pom.xml
===================================================================
--- xwiki-platform/xwiki-applications/trunk/pom.xml     2007-09-27 09:41:37 UTC 
(rev 5104)
+++ xwiki-platform/xwiki-applications/trunk/pom.xml     2007-09-27 11:02:10 UTC 
(rev 5105)
@@ -68,6 +68,7 @@
         <module>panels</module>
         <module>application-manager</module>
         <module>wiki-manager</module>
+        <module>scheduler</module>
       </modules>
     </profile>
     <profile>

Added: xwiki-platform/xwiki-applications/trunk/scheduler/pom.xml
===================================================================
--- xwiki-platform/xwiki-applications/trunk/scheduler/pom.xml   2007-09-27 
09:41:37 UTC (rev 5104)
+++ xwiki-platform/xwiki-applications/trunk/scheduler/pom.xml   2007-09-27 
11:02:10 UTC (rev 5105)
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ *
+ * See the NOTICE file distributed with this work for additional
+ * information regarding copyright ownership.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software 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
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ *
+-->
+
+<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";>
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>com.xpn.xwiki.platform.applications</groupId>
+    <artifactId>xwiki-applications</artifactId>
+    <version>6-SNAPSHOT</version>
+  </parent>
+  <artifactId>xwiki-application-scheduler</artifactId>
+  <name>XWiki Platform - Applications - Scheduler</name>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>xar</packaging>
+  <description>Manages Scheduler Jobs</description>
+  <dependencies>
+    <dependency>
+      <groupId>com.xpn.xwiki.platform.plugins</groupId>
+      <artifactId>xwiki-plugin-scheduler</artifactId>
+      <version>1.0-SNAPSHOT</version>
+      <scope>runtime</scope>
+    </dependency>
+  </dependencies>
+</project>

Added: 
xwiki-platform/xwiki-applications/trunk/scheduler/src/main/resources/Scheduler/WebHome
===================================================================
--- 
xwiki-platform/xwiki-applications/trunk/scheduler/src/main/resources/Scheduler/WebHome
      2007-09-27 09:41:37 UTC (rev 5104)
+++ 
xwiki-platform/xwiki-applications/trunk/scheduler/src/main/resources/Scheduler/WebHome
      2007-09-27 11:02:10 UTC (rev 5105)
@@ -0,0 +1,176 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<xwikidoc>
+<web>Scheduler</web>
+<name>WebHome</name>
+<language></language>
+<defaultLanguage>en</defaultLanguage>
+<translation>0</translation>
+<parent></parent>
+<creator>XWiki.jerome</creator>
+<author>XWiki.Admin</author>
+<customClass></customClass>
+<contentAuthor>XWiki.Admin</contentAuthor>
+<creationDate>1190368898000</creationDate>
+<date>1190401180000</date>
+<contentUpdateDate>1190401180000</contentUpdateDate>
+<version>1.22</version>
+<title></title>
+<template></template>
+<defaultTemplate></defaultTemplate>
+<validationScript></validationScript>
+<comment></comment>
+<object>
+<class>
+<name>XWiki.TagClass</name>
+<customClass></customClass>
+<customMapping></customMapping>
+<defaultViewSheet></defaultViewSheet>
+<defaultEditSheet></defaultEditSheet>
+<defaultWeb></defaultWeb>
+<nameField></nameField>
+<validationScript></validationScript>
+<tags>
+<cache>0</cache>
+<displayType>input</displayType>
+<multiSelect>1</multiSelect>
+<name>tags</name>
+<number>1</number>
+<prettyName>Tags</prettyName>
+<relationalStorage>1</relationalStorage>
+<separator> </separator>
+<separators> ,|</separators>
+<size>30</size>
+<unmodifiable>0</unmodifiable>
+<values></values>
+<classType>com.xpn.xwiki.objects.classes.StaticListClass</classType>
+</tags>
+</class>
+<name>Scheduler.WebHome</name>
+<number>0</number>
+<className>XWiki.TagClass</className>
+<property>
+<tags/>
+</property>
+</object>
+<content>## First, set a shortcut to our Scheduler plugin
+##
+#set($scheduler=$xwiki.scheduler)
+##
+## If the sheet is called with an action ($request.do), let us first process 
this action
+## Possible values are : "schedule", "pause", "resume", "unschedule", "delete"
+##
+#if($request.do!="")
+ ##
+ ## Obtain the Job document and object for which the action has been called
+ ##
+ #set($tJobHolder=$request.which)
+ #set($jobDoc=$xwiki.getDocument($tJobHolder))
+ #set($jobObj=$jobDoc.getObject('XWiki.SchedulerJobClass'))
+ #if($request.do=="schedule")
+  ##
+  ## Schedule a job
+  ##
+  #set($ok=$scheduler.scheduleJob($jobObj))
+  #if($ok==false) 
+   #error("$context.get('error')")
+  #else 
+   #info("Job ~~$jobObj.get('jobName')~~ *scheduled*. Next fire time : 
*$scheduler.getNextFireTime($jobObj)*")
+  #end
+ #elseif($request.do=="pause")
+  ##
+  ## Pause a scheduled job
+  ##
+  #set($ok=$scheduler.pauseJob($jobObj))
+  #if($ok==false) 
+   #error("$context.get('error')")
+  #else
+   #info("Job ~~$jobObj.get('jobName')~~ *paused*.")
+  #end
+ #elseif($request.do=="resume")
+  ##
+  ## Resume a paused job
+  ##
+  #set($ok=$scheduler.resumeJob($jobObj))
+  #if($ok==false) 
+   #error("$context.get('error')")
+  #else
+   #info("Job ~~$jobObj.get('jobName')~~ *resumed*. Next fire time : 
*$scheduler.getNextFireTime($jobObj)*")
+  #end
+ #elseif($request.do=="unschedule")
+  ##
+  ## Unschedule a scheduled job (paused or not)
+  ##
+  #set($ok=$scheduler.unscheduleJob($jobObj))
+  #if($ok==false)
+   #error("$context.get('error')")
+  #else
+   #info("Job ~~$jobObj.get('jobName')~~ *unscheduled*")
+  #end
+ #elseif($request.do=="delete")
+  ##
+  ## Delete a job
+  ## First unschedule it (if needed), then delete its document holder
+  ##
+  #set($jobName=$jobObj.get('jobName'))
+  #if($jobObj.get("status")=="Normal"||$jobObj.get('status')=="Paused")
+   #set($ok=$scheduler.unscheduleJob($jobObj))
+   #if($ok==true)    
+    #set($ok=$jobDoc.delete())
+    #info("~~$jobName~~ *deleted*")
+   #else
+    #error("$context.get('error')")
+   #end
+  #else
+    $jobDoc.delete()
+    #info("~~$jobName~~ *deleted*")
+  #end
+ #end
+#end
+1 List of existing jobs
+##
+## Retrieve all scheduler jobs living in this space
+## Display their name, status, possible next fire time, and avaible actions
+##
+{table}
+Job Name|Job Status|Next firetime|Actions
+#set($hql = ", BaseObject as job where doc.web='Scheduler' and 
job.name=doc.fullName and job.className='XWiki.SchedulerJobClass' ")
+#foreach($docName in $xwiki.searchDocuments($hql))
+ #set($jobHolder = $xwiki.getDocument($docName))
+ #set($job = $jobHolder.getObject('XWiki.SchedulerJobClass'))
+ #set($status = "") #set($status = $job.get('status')) #if($status=="") 
#set($status="None") #end
+ #set($firetime = "") #if($status!="None") #set($firetime = 
$scheduler.getNextFireTime($job))  #else #set($firetime="NA") #end
+ #set($actions="") 
+  #if($status=="None") 
+   #set($scheduleURL = 
$doc.getURL("view","do=schedule&amp;which=${jobHolder.fullName}"))
+   #set($actions="&lt;a href=${scheduleURL}&gt;schedule&lt;/a&gt;") 
+  #elseif($status=="Normal")
+   #set($pauseURL = 
$doc.getURL("view","do=pause&amp;which=${jobHolder.fullName}"))
+   #set($unscheduleURL = 
$doc.getURL("view","do=unschedule&amp;which=${jobHolder.fullName}"))
+   #set($actions="&lt;a href=${pauseURL}&gt;pause&lt;/a&gt; &lt;a 
href=${unscheduleURL}&gt;unschedule&lt;/a&gt;") 
+  #elseif($status=="Paused")
+   #set($resumeURL = 
$doc.getURL("view","do=resume&amp;which=${jobHolder.fullName}"))
+   #set($unscheduleURL = 
$doc.getURL("view","do=unschedule&amp;which=${jobHolder.fullName}"))
+   #set($actions="&lt;a href=${resumeURL}&gt;resume&lt;/a&gt; &lt;a 
href=${unscheduleURL}&gt;unschedule&lt;/a&gt;")   
+  #end
+  #set($deleteURL = 
$doc.getURL("view","do=delete&amp;which=${jobHolder.fullName}"))
+  #set($actions="${actions} &lt;a href=${deleteURL}&gt;delete&lt;/a&gt;")
+$job.get("jobName")|$status|$firetime| *Infos* : [view&gt;$jobHolder.fullName] 
&lt;a href=$jobHolder.getURL('inline')&gt;edit&lt;/a&gt; *Job* : $actions
+#end
+{table}
+
+1.1 Create a new job
+##
+## Form to create a new Job
+##
+ 
+&lt;form action="" id="newdoc"&gt;
+&lt;input type="hidden" name="parent" value="Scheduler.WebHome" /&gt;
+&lt;input type="hidden" name="template" value="XWiki.SchedulerJobTemplate" 
/&gt;
+&lt;input type="hidden" name="sheet" value="1" /&gt;
+&lt;input type="hidden" name="webname" value="Scheduler"/&gt;
+&lt;input type="hidden" name="name" value=""/&gt;
+&lt;input type="text" name="title" value="Job page name" size="30"/&gt;
+&lt;input type="button" value="Add" onclick='if 
(updateName(this.form.title,this.form.name)) { action="../../inline/" + 
this.form.webname.value + "/" + this.form.name.value; this.form.submit(); }' 
/&gt;
+&lt;/form&gt;
+</content></xwikidoc>
\ No newline at end of file

Added: 
xwiki-platform/xwiki-applications/trunk/scheduler/src/main/resources/XWiki/SchedulerJobClass
===================================================================
--- 
xwiki-platform/xwiki-applications/trunk/scheduler/src/main/resources/XWiki/SchedulerJobClass
        2007-09-27 09:41:37 UTC (rev 5104)
+++ 
xwiki-platform/xwiki-applications/trunk/scheduler/src/main/resources/XWiki/SchedulerJobClass
        2007-09-27 11:02:10 UTC (rev 5105)
@@ -0,0 +1,112 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<xwikidoc>
+<web>XWiki</web>
+<name>SchedulerJobClass</name>
+<language></language>
+<defaultLanguage>en</defaultLanguage>
+<translation>0</translation>
+<parent></parent>
+<creator></creator>
+<author>XWiki.Admin</author>
+<customClass></customClass>
+<contentAuthor>XWiki.Admin</contentAuthor>
+<creationDate>1190366400000</creationDate>
+<date>1190399853000</date>
+<contentUpdateDate>1190399853000</contentUpdateDate>
+<version>1.2</version>
+<title></title>
+<template></template>
+<defaultTemplate></defaultTemplate>
+<validationScript></validationScript>
+<comment>Updated class property</comment>
+<class>
+<name>XWiki.SchedulerJobClass</name>
+<customClass></customClass>
+<customMapping></customMapping>
+<defaultViewSheet></defaultViewSheet>
+<defaultEditSheet></defaultEditSheet>
+<defaultWeb></defaultWeb>
+<nameField></nameField>
+<validationScript></validationScript>
+<cron>
+<customDisplay></customDisplay>
+<name>cron</name>
+<number>4</number>
+<prettyName>Cron Expression</prettyName>
+<size>30</size>
+<tooltip></tooltip>
+<unmodifiable>0</unmodifiable>
+<validationMessage></validationMessage>
+<validationRegExp></validationRegExp>
+<classType>com.xpn.xwiki.objects.classes.StringClass</classType>
+</cron>
+<jobClass>
+<customDisplay></customDisplay>
+<name>jobClass</name>
+<number>2</number>
+<prettyName>Job Class</prettyName>
+<size>60</size>
+<tooltip></tooltip>
+<unmodifiable>0</unmodifiable>
+<validationMessage></validationMessage>
+<validationRegExp></validationRegExp>
+<classType>com.xpn.xwiki.objects.classes.StringClass</classType>
+</jobClass>
+<jobDescription>
+<contenttype>FullyRenderedText</contenttype>
+<customDisplay></customDisplay>
+<editor>Text</editor>
+<name>jobDescription</name>
+<number>6</number>
+<prettyName>Job Description</prettyName>
+<rows>10</rows>
+<size>45</size>
+<tooltip></tooltip>
+<unmodifiable>0</unmodifiable>
+<validationMessage></validationMessage>
+<validationRegExp></validationRegExp>
+<classType>com.xpn.xwiki.objects.classes.TextAreaClass</classType>
+</jobDescription>
+<jobName>
+<customDisplay></customDisplay>
+<name>jobName</name>
+<number>1</number>
+<prettyName>Job Name</prettyName>
+<size>60</size>
+<tooltip></tooltip>
+<unmodifiable>0</unmodifiable>
+<validationMessage></validationMessage>
+<validationRegExp></validationRegExp>
+<classType>com.xpn.xwiki.objects.classes.StringClass</classType>
+</jobName>
+<script>
+<contenttype>FullyRenderedText</contenttype>
+<customDisplay></customDisplay>
+<editor>Text</editor>
+<name>script</name>
+<number>5</number>
+<prettyName>Job Script</prettyName>
+<rows>10</rows>
+<size>45</size>
+<tooltip></tooltip>
+<unmodifiable>0</unmodifiable>
+<validationMessage></validationMessage>
+<validationRegExp></validationRegExp>
+<classType>com.xpn.xwiki.objects.classes.TextAreaClass</classType>
+</script>
+<status>
+<customDisplay></customDisplay>
+<name>status</name>
+<number>3</number>
+<prettyName>Status</prettyName>
+<size>30</size>
+<tooltip></tooltip>
+<unmodifiable>0</unmodifiable>
+<validationMessage></validationMessage>
+<validationRegExp></validationRegExp>
+<classType>com.xpn.xwiki.objects.classes.StringClass</classType>
+</status>
+</class>
+<content>
+</content></xwikidoc>
\ No newline at end of file

Added: 
xwiki-platform/xwiki-applications/trunk/scheduler/src/main/resources/XWiki/SchedulerJobSheet
===================================================================
--- 
xwiki-platform/xwiki-applications/trunk/scheduler/src/main/resources/XWiki/SchedulerJobSheet
        2007-09-27 09:41:37 UTC (rev 5104)
+++ 
xwiki-platform/xwiki-applications/trunk/scheduler/src/main/resources/XWiki/SchedulerJobSheet
        2007-09-27 11:02:10 UTC (rev 5105)
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<xwikidoc>
+<web>XWiki</web>
+<name>SchedulerJobSheet</name>
+<language></language>
+<defaultLanguage>en</defaultLanguage>
+<translation>0</translation>
+<parent></parent>
+<creator>XWiki.jerome</creator>
+<author>XWiki.Admin</author>
+<customClass></customClass>
+<contentAuthor>XWiki.Admin</contentAuthor>
+<creationDate>1190369203000</creationDate>
+<date>1190401275000</date>
+<contentUpdateDate>1190401275000</contentUpdateDate>
+<version>1.5</version>
+<title></title>
+<template></template>
+<defaultTemplate></defaultTemplate>
+<validationScript></validationScript>
+<comment></comment>
+<object>
+<class>
+<name>XWiki.TagClass</name>
+<customClass></customClass>
+<customMapping></customMapping>
+<defaultViewSheet></defaultViewSheet>
+<defaultEditSheet></defaultEditSheet>
+<defaultWeb></defaultWeb>
+<nameField></nameField>
+<validationScript></validationScript>
+<tags>
+<cache>0</cache>
+<displayType>input</displayType>
+<multiSelect>1</multiSelect>
+<name>tags</name>
+<number>1</number>
+<prettyName>Tags</prettyName>
+<relationalStorage>1</relationalStorage>
+<separator> </separator>
+<separators> ,|</separators>
+<size>30</size>
+<unmodifiable>0</unmodifiable>
+<values></values>
+<classType>com.xpn.xwiki.objects.classes.StaticListClass</classType>
+</tags>
+</class>
+<name>XWiki.SchedulerJobSheet</name>
+<number>0</number>
+<className>XWiki.TagClass</className>
+<property>
+<tags/>
+</property>
+</object>
+<content>Name : $doc.display('jobName')
+
+Description : $doc.display('jobDescription')
+
+Class : $doc.display('jobClass')
+
+Cron : $doc.display('cron')
+
+## We do not want to display the status in inline mode
+## As it is supposed to be a "read-only" property
+#set($status=$doc.display('status','view'))
+#if($status=="") #set($status="None") #end
+Status : $status
+
+Script : $doc.display('script')
+
+#if($context.action=="view")
+[Go back to the list&gt;Scheduler.WebHome]
+#end</content>
+</xwikidoc>

Added: 
xwiki-platform/xwiki-applications/trunk/scheduler/src/main/resources/XWiki/SchedulerJobTemplate
===================================================================
--- 
xwiki-platform/xwiki-applications/trunk/scheduler/src/main/resources/XWiki/SchedulerJobTemplate
     2007-09-27 09:41:37 UTC (rev 5104)
+++ 
xwiki-platform/xwiki-applications/trunk/scheduler/src/main/resources/XWiki/SchedulerJobTemplate
     2007-09-27 11:02:10 UTC (rev 5105)
@@ -0,0 +1,168 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<xwikidoc>
+<web>XWiki</web>
+<name>SchedulerJobTemplate</name>
+<language></language>
+<defaultLanguage>en</defaultLanguage>
+<translation>0</translation>
+<parent></parent>
+<creator>XWiki.jerome</creator>
+<author>XWiki.Admin</author>
+<customClass></customClass>
+<contentAuthor>XWiki.jerome</contentAuthor>
+<creationDate>1190368951000</creationDate>
+<date>1190369194000</date>
+<contentUpdateDate>1190377428000</contentUpdateDate>
+<version>1.1</version>
+<title></title>
+<template></template>
+<defaultTemplate></defaultTemplate>
+<validationScript></validationScript>
+<comment></comment>
+<object>
+<class>
+<name>XWiki.SchedulerJobClass</name>
+<customClass></customClass>
+<customMapping></customMapping>
+<defaultViewSheet></defaultViewSheet>
+<defaultEditSheet></defaultEditSheet>
+<defaultWeb></defaultWeb>
+<nameField></nameField>
+<validationScript></validationScript>
+<cron>
+<customDisplay></customDisplay>
+<name>cron</name>
+<number>4</number>
+<prettyName>Cron Expression</prettyName>
+<size>30</size>
+<tooltip></tooltip>
+<unmodifiable>0</unmodifiable>
+<validationMessage></validationMessage>
+<validationRegExp></validationRegExp>
+<classType>com.xpn.xwiki.objects.classes.StringClass</classType>
+</cron>
+<jobClass>
+<customDisplay></customDisplay>
+<name>jobClass</name>
+<number>2</number>
+<prettyName>Job Class</prettyName>
+<size>60</size>
+<tooltip></tooltip>
+<unmodifiable>0</unmodifiable>
+<validationMessage></validationMessage>
+<validationRegExp></validationRegExp>
+<classType>com.xpn.xwiki.objects.classes.StringClass</classType>
+</jobClass>
+<jobDescription>
+<contenttype>FullyRenderedText</contenttype>
+<customDisplay></customDisplay>
+<editor>Text</editor>
+<name>jobDescription</name>
+<number>6</number>
+<prettyName>Job Description</prettyName>
+<rows>10</rows>
+<size>45</size>
+<tooltip></tooltip>
+<unmodifiable>0</unmodifiable>
+<validationMessage></validationMessage>
+<validationRegExp></validationRegExp>
+<classType>com.xpn.xwiki.objects.classes.TextAreaClass</classType>
+</jobDescription>
+<jobName>
+<customDisplay></customDisplay>
+<name>jobName</name>
+<number>1</number>
+<prettyName>Job Name</prettyName>
+<size>60</size>
+<tooltip></tooltip>
+<unmodifiable>0</unmodifiable>
+<validationMessage></validationMessage>
+<validationRegExp></validationRegExp>
+<classType>com.xpn.xwiki.objects.classes.StringClass</classType>
+</jobName>
+<script>
+<contenttype>FullyRenderedText</contenttype>
+<customDisplay></customDisplay>
+<editor>Text</editor>
+<name>script</name>
+<number>5</number>
+<prettyName>Job Script</prettyName>
+<rows>10</rows>
+<size>45</size>
+<tooltip></tooltip>
+<unmodifiable>0</unmodifiable>
+<validationMessage></validationMessage>
+<validationRegExp></validationRegExp>
+<classType>com.xpn.xwiki.objects.classes.TextAreaClass</classType>
+</script>
+<status>
+<customDisplay></customDisplay>
+<name>status</name>
+<number>3</number>
+<prettyName>Status</prettyName>
+<size>30</size>
+<tooltip></tooltip>
+<unmodifiable>0</unmodifiable>
+<validationMessage></validationMessage>
+<validationRegExp></validationRegExp>
+<classType>com.xpn.xwiki.objects.classes.StringClass</classType>
+</status>
+</class>
+<name>XWiki.SchedulerJobTemplate</name>
+<number>0</number>
+<className>XWiki.SchedulerJobClass</className>
+<property>
+<cron>0 0 12 * * ?</cron>
+</property>
+<property>
+<jobClass>com.xpn.xwiki.plugin.scheduler.GroovyJob</jobClass>
+</property>
+<property>
+<jobDescription></jobDescription>
+</property>
+<property>
+<jobName></jobName>
+</property>
+<property>
+<script></script>
+</property>
+<property>
+<status></status>
+</property>
+</object>
+<object>
+<class>
+<name>XWiki.TagClass</name>
+<customClass></customClass>
+<customMapping></customMapping>
+<defaultViewSheet></defaultViewSheet>
+<defaultEditSheet></defaultEditSheet>
+<defaultWeb></defaultWeb>
+<nameField></nameField>
+<validationScript></validationScript>
+<tags>
+<cache>0</cache>
+<displayType>input</displayType>
+<multiSelect>1</multiSelect>
+<name>tags</name>
+<number>1</number>
+<prettyName>Tags</prettyName>
+<relationalStorage>1</relationalStorage>
+<separator> </separator>
+<separators> ,|</separators>
+<size>30</size>
+<unmodifiable>0</unmodifiable>
+<values></values>
+<classType>com.xpn.xwiki.objects.classes.StaticListClass</classType>
+</tags>
+</class>
+<name>XWiki.SchedulerJobTemplate</name>
+<number>0</number>
+<className>XWiki.TagClass</className>
+<property>
+<tags/>
+</property>
+</object>
+<content>#includeInContext('XWiki.SchedulerJobSheet')
+</content></xwikidoc>
\ No newline at end of file

_______________________________________________
notifications mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/notifications

Reply via email to