archiva-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Maria Odea Ching <och...@exist.com>
Subject Re: svn commit: r442925 - in /maven/archiva/trunk/archiva-webapp/src/main: java/org/apache/maven/archiva/web/action/admin/ConfigureAction.java webapp/WEB-INF/jsp/admin/configure.jsp
Date Thu, 14 Sep 2006 00:44:32 GMT
Yes, I agree. I think its better to have the cron expression constructed 
using a method.

Sorry about the validation, I forgot to remove it from execute().

Brett Porter wrote:

> You now have the validation in there twice - it should be removed  
> from execute() shouldn't it?
>
> I think I'd construct the cron expression using a method as needed  
> rather than sticking it in a field, too.
>
> What do you think?
>
> On 13/09/2006, at 8:11 PM, oching@apache.org wrote:
>
>> Author: oching
>> Date: Wed Sep 13 03:11:04 2006
>> New Revision: 442925
>>
>> URL: http://svn.apache.org/viewvc?view=rev&rev=442925
>> Log:
>> Revised the validation for cron expression. Also revised the  
>> configure.jsp page (for the cron editor) -- removed the <table> tags.
>>
>> Modified:
>>     maven/archiva/trunk/archiva-webapp/src/main/java/org/apache/ 
>> maven/archiva/web/action/admin/ConfigureAction.java
>>     maven/archiva/trunk/archiva-webapp/src/main/webapp/WEB-INF/jsp/ 
>> admin/configure.jsp
>>
>> Modified: maven/archiva/trunk/archiva-webapp/src/main/java/org/ 
>> apache/maven/archiva/web/action/admin/ConfigureAction.java
>> URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva- 
>> webapp/src/main/java/org/apache/maven/archiva/web/action/admin/ 
>> ConfigureAction.java?view=diff&rev=442925&r1=442924&r2=442925
>> ====================================================================== 
>> ========
>> --- maven/archiva/trunk/archiva-webapp/src/main/java/org/apache/ 
>> maven/archiva/web/action/admin/ConfigureAction.java (original)
>> +++ maven/archiva/trunk/archiva-webapp/src/main/java/org/apache/ 
>> maven/archiva/web/action/admin/ConfigureAction.java Wed Sep 13  
>> 03:11:04 2006
>> @@ -18,6 +18,7 @@
>>
>>  import com.opensymphony.xwork.ModelDriven;
>>  import com.opensymphony.xwork.Preparable;
>> +import com.opensymphony.xwork.Validateable;
>>  import org.apache.maven.archiva.configuration.Configuration;
>>  import  
>> org.apache.maven.archiva.configuration.ConfigurationChangeException;
>>  import org.apache.maven.archiva.configuration.ConfigurationStore;
>> @@ -38,7 +39,7 @@
>>   */
>>  public class ConfigureAction
>>      extends PlexusActionSupport
>> -    implements ModelDriven, Preparable
>> +    implements ModelDriven, Preparable, Validateable
>>  {
>>      /**
>>       * @plexus.requirement
>> @@ -66,6 +67,21 @@
>>
>>      private String year;
>>
>> +    private String cronEx = "";
>> +
>> +    public void validate()
>> +    {
>> +        cronEx = ( second + " " + minute + " " + hour + " " +  
>> dayOfMonth + " " + month +
>> +                    " " + dayOfWeek + " " + year ).trim();
>> +
>> +        //validate cron expression
>> +        cronValidator = new CronExpressionValidator();
>> +
>> +        if( !cronValidator.validate( cronEx ) )
>> +        {
>> +            addActionError( "Invalid Cron Expression" );
>> +        }
>> +    }
>>
>>      public String execute()
>>          throws IOException, RepositoryIndexException,  
>> RepositoryIndexSearchException, ConfigurationStoreException,
>>
>> Modified: maven/archiva/trunk/archiva-webapp/src/main/webapp/WEB- 
>> INF/jsp/admin/configure.jsp
>> URL: http://svn.apache.org/viewvc/maven/archiva/trunk/archiva- 
>> webapp/src/main/webapp/WEB-INF/jsp/admin/configure.jsp? 
>> view=diff&rev=442925&r1=442924&r2=442925
>> ====================================================================== 
>> ========
>> --- maven/archiva/trunk/archiva-webapp/src/main/webapp/WEB-INF/jsp/ 
>> admin/configure.jsp (original)
>> +++ maven/archiva/trunk/archiva-webapp/src/main/webapp/WEB-INF/jsp/ 
>> admin/configure.jsp Wed Sep 13 03:11:04 2006
>> @@ -26,95 +26,47 @@
>>
>>  <h1>Configuration</h1>
>>
>> +<div class="errors">
>> +  <ww:actionerror />
>> +</div>
>> +
>>  <div id="contentArea">
>>    <ww:actionmessage/>
>>    <ww:form method="post" action="saveConfiguration" namespace="/ 
>> admin" validate="true">
>> +    <ww:textfield name="indexPath" label="Index Directory"  
>> size="100" required="true"/>
>> +    <!--ww:textfield name="indexerCronExpression" label="Indexing  
>> Schedule"/-->
>> +
>> +    <ww:label value="Indexing Schedule" labelposition="top"/>
>> +      <ww:div>
>> +        <ww:textfield name="second" label="Second" size="2"/>
>> +        <ww:textfield name="minute" label="Minute"  
>> labelposition="left" size="2"/>
>> +        <ww:textfield name="hour" label="Hour" size="2"/>
>> +        <ww:textfield name="dayOfMonth" label="Day Of Month"  
>> size="2"/>
>> +        <ww:textfield name="month" label="Month" size="2"/>
>> +        <ww:textfield name="dayOfWeek" label="Day Of Week" size="2"/>
>> +        <ww:textfield name="year" label="Year" size="4"/>
>> +      </ww:div>
>> +
>> +    <ww:hidden name="proxy.protocol" value="http"/>
>> +    <ww:textfield name="proxy.host" label="HTTP Proxy Host"/>
>> +    <ww:textfield name="proxy.port" label="HTTP Proxy Port"/>
>> +    <ww:textfield name="proxy.username" label="HTTP Proxy Username"/>
>> +    <ww:password name="proxy.password" label="HTTP Proxy Password"/>
>>
>> -    <div>
>> -    <table>
>> -        <tbody>
>> -          <tr>
>> -            <th><font size="2"><ww:label theme="simple"  
>> value="Indexing Directory*:"/></font></th>
>> -            <td><ww:textfield name="indexPath" theme="simple"  
>> size="140" required="true"/></td>
>> -          </tr>
>> -          <tr>
>> -            <th><font size="2"><ww:label theme="simple"  
>> value="Indexing Schedule:"/></font></th>
>> -            <td>
>> -              <table>
>> -                <tr>
>> -                  <th><ww:label theme="simple" value="Second:"/></th>
>> -                  <td><ww:textfield name="second" theme="simple"  
>> size="2"/></td>
>> -
>> -                  <th><ww:label theme="simple" value="Minute:"/></th>
>> -                  <td><ww:textfield name="minute" theme="simple"  
>> size="2"/></td>
>> -
>> -                  <th><ww:label theme="simple" value="Hour:"/></th>
>> -                  <td><ww:textfield name="hour" theme="simple"  
>> size="2"/></td>
>> -
>> -                  <th><ww:label theme="simple" value="Day of  
>> Month:"/></th>
>> -                  <td><ww:textfield name="dayOfMonth"  
>> theme="simple" size="2"/></td>
>> -
>> -                  <th><ww:label theme="simple" value="Month:"/></th>
>> -                  <td><ww:textfield name="month" theme="simple"  
>> size="2"/></td>
>> -
>> -                  <th><ww:label theme="simple" value="Day of  
>> Week:"/></th>
>> -                  <td><ww:textfield name="dayOfWeek"  theme="simple" 
>> size="2"/></td>
>> -
>> -                  <th><ww:label theme="simple" value="Year  
>> [optional]:"/></th>
>> -                  <td><ww:textfield name="year" theme="simple"  
>> size="4"/></td>
>> -                </tr>
>> -              </table>
>> -            </td>
>> -          </tr>
>> -        <ww:hidden name="proxy.protocol" value="http"/>
>> -        <tr>
>> -            <th><font size="2"><ww:label theme="simple"  value="HTTP

>> Proxy Host:"/></font></th>
>> -            <td><ww:textfield name="proxy.host" theme="simple"/></td>
>> -        </tr>
>> -        <tr>
>> -            <th><font size="2"><ww:label theme="simple"  value="HTTP

>> Proxy Port:"/></font></th>
>> -            <td><ww:textfield name="proxy.port" theme="simple"/></td>
>> -        </tr>
>> -        <tr>
>> -            <th><font size="2"><ww:label theme="simple"  value="HTTP

>> Proxy Username:"/></font></th>
>> -            <td><ww:textfield name="proxy.username" theme="simple"/ 
>> ></td>
>> -        </tr>
>> -        <tr>
>> -            <th><font size="2"><ww:label theme="simple"  value="HTTP

>> Proxy Password:"/></font></th>
>> -            <td><ww:textfield name="proxy.password" theme="simple"/ 
>> ></td>
>> -        </tr>
>> -        </tbody>
>> -    </table>
>> -    </div>
>> -
>> -    <div>
>> -      <p><i>For valid cron expression values for the Indexing  
>> Schedule, see <ww:a href="http://www.opensymphony.com/quartz/api/ 
>> org/quartz/CronExpression.html">here</ww:a></i></p>
>> -    </div>
>> -    <div>
>> -      <table>
>> -        <tr>
>> -          <b>Indexing Schedule Keys:</b>
>> -        </tr>
>> -        <tr>
>> -          <th>*</th>
>> -          <td>every</td>
>> -        </tr>
>> -        <tr>
>> -          <th>?</th>
>> -          <td>any</td>
>> -        </tr>
>> -        <tr>
>> -          <th>-</th>
>> -          <td>ranges</td>
>> -        </tr>
>> -        <tr>
>> -          <th>/</th>
>> -          <td>increments</td>
>> -        </tr>
>> -      </table>
>> -    </div>
>>      <ww:submit value="Save Configuration"/>
>> +
>> +    <ww:div>
>> +      <ww:label value="Indexing Schedule Keys:" labelposition="top"/>
>> +      <ww:label value="* = every" labelposition="top"/>
>> +      <ww:label value="? = any" labelposition="top"/>
>> +      <ww:label value="- = ranges" labelposition="top"/>
>> +      <ww:label value="/ = increments" labelposition="top"/>
>> +    </ww:div>
>>    </ww:form>
>> +
>> +  <ww:div>
>> +    <p><i>For valid cron expression values for the Indexing  
>> Schedule, see <ww:a href="http://www.opensymphony.com/quartz/api/ 
>> org/quartz/CronExpression.html">here</ww:a></i></p>
>> +  </ww:div>
>>
>>    <script type="text/javascript">
>>      document.getElementById("saveConfiguration_indexPath").focus();
>>
>


Mime
View raw message