The following document contains the results of RAT (Release Audit Tool).
***************************************************** Summary ------- Notes: 1 Binaries: 0 Archives: 0 Standards: 27 Apache Licensed: 16 Generated Documents: 0 JavaDocs are generated and so license header is optional Generated files do not required license headers 11 Unknown Licenses ******************************* Archives (+ indicates readable, $ unreadable): ***************************************************** Files with AL headers will be marked L Binary files (which do not require AL headers) will be marked B Compressed archives will be marked A Notices, licenses etc will be marked N AL /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/pom.xml AL /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationInterceptor.java !????? /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/DefaultOValValidationManager.java !????? /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationManager.java AL /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/main/java/org/apache/struts2/oval/annotation/Profiles.java N /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/main/resources/NOTICE.txt AL /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/main/resources/struts-plugin.xml !????? /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/MemberObject.java AL /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/VoidResult.java AL /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/DummyDefaultOValValidationManager.java AL /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/FieldsWithProfiles.java !????? /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldsXML.java AL /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldOGNLExpression.java AL /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldsXMLChild.java AL /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleField.java AL /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleMethod.java !????? /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/ModelDrivenAction.java AL /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldI18nDefaultKey.java AL /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldI18n.java !????? /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/domain/Person.java !????? /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/domain/Address.java AL /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/ValidationInMethods.java AL /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/OValValidationInterceptorTest.java AL /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldJPAAnnotations.java !????? /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/resources/org/apache/struts2/oval/interceptor/SimpleFieldsXML-validation.xml !????? /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/resources/org/apache/struts2/oval/interceptor/SimpleFieldI18n.properties !????? /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/resources/org/apache/struts2/oval/interceptor/SimpleFieldsXMLChild-validation.xml !????? /home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/resources/oval-test.xml ***************************************************** Printing headers for files without AL header... ======================================================================= ==/home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/DefaultOValValidationManager.java ======================================================================= package org.apache.struts2.oval.interceptor; import com.opensymphony.xwork2.inject.Inject; import com.opensymphony.xwork2.util.FileManager; import com.opensymphony.xwork2.util.logging.Logger; import com.opensymphony.xwork2.util.logging.LoggerFactory; import net.sf.oval.configuration.Configurer; import net.sf.oval.configuration.annotation.AnnotationsConfigurer; import net.sf.oval.configuration.annotation.JPAAnnotationsConfigurer; import net.sf.oval.configuration.xml.XMLConfigurer; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Set; import java.util.TreeSet; public class DefaultOValValidationManager implements OValValidationManager { private static final Logger LOG = LoggerFactory.getLogger(DefaultOValValidationManager.class); protected static final String VALIDATION_CONFIG_SUFFIX = "-validation.xml"; protected final Map<String, List<Configurer>> validatorCache = new HashMap<String, List<Configurer>>(); protected final Map<String, Configurer> validatorFileCache = new HashMap<String, Configurer>(); protected boolean validateJPAAnnotations; public synchronized List<Configurer> getConfigurers(Class clazz, String context, boolean validateJPAAnnotations) { this.validateJPAAnnotations =validateJPAAnnotations; final String validatorKey = buildValidatorKey(clazz, context); if (validatorCache.containsKey(validatorKey)) { if (FileManager.isReloadingConfigs()) { List<Configurer> configurers = buildXMLConfigurers(clazz, context, true, null); //add an annotation configurer addAditionalConfigurers(configurers); validatorCache.put(validatorKey, configurers); } } else { List<Configurer> configurers = buildXMLConfigurers(clazz, context, false, null); //add an annotation configurer addAditionalConfigurers(configurers); validatorCache.put(validatorKey, configurers); } // get the set of validator configs return validatorCache.get(validatorKey); ======================================================================= ==/home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/main/java/org/apache/struts2/oval/interceptor/OValValidationManager.java ======================================================================= package org.apache.struts2.oval.interceptor; import net.sf.oval.configuration.xml.XMLConfigurer; import net.sf.oval.configuration.Configurer; import java.util.List; public interface OValValidationManager { /** * <p>This method 'collects' all the validator configurations for a given * action invocation.</p> * <p/> * <p>It will traverse up the class hierarchy looking for validators for every super class * and directly implemented interface of the current action, as well as adding validators for * any alias of this invocation. Nifty!</p> * <p/> * <p>Given the following class structure: * <pre> * interface Thing; * interface Animal extends Thing; * interface Quadraped extends Animal; * class AnimalImpl implements Animal; * class QuadrapedImpl extends AnimalImpl implements Quadraped; * class Dog extends QuadrapedImpl; * </pre></p> * <p/> * <p>This method will look for the following config files for Dog: * <pre> * Animal * Animal-context * AnimalImpl * AnimalImpl-context * Quadraped * Quadraped-context * QuadrapedImpl * QuadrapedImpl-context * Dog * Dog-context * </pre></p> * <p/> * <p>Note that the validation rules for Thing is never looked for because no class in the * hierarchy directly implements Thing.</p> * * @param clazz the Class to look up validators for. * @param context the context to use when looking up validators. * updated. * @return a list of xml configurers for the given class and context. */ List<Configurer> getConfigurers(Class clazz, String context, boolean validateJPAAnnotations); ======================================================================= ==/home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/MemberObject.java ======================================================================= package org.apache.struts2.oval.interceptor; import net.sf.oval.constraint.AssertValid; import org.apache.struts2.oval.interceptor.domain.Person; import com.opensymphony.xwork2.ActionSupport; public class MemberObject extends ActionSupport { @AssertValid private Person person = new Person(); public Person getPerson() { return person; } } ======================================================================= ==/home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/SimpleFieldsXML.java ======================================================================= package org.apache.struts2.oval.interceptor; import com.opensymphony.xwork2.ActionSupport; import net.sf.oval.constraint.NotEmpty; import net.sf.oval.constraint.NotNull; public class SimpleFieldsXML extends ActionSupport { private String firstName; @NotNull private String lastName; public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } } ======================================================================= ==/home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/ModelDrivenAction.java ======================================================================= package org.apache.struts2.oval.interceptor; import net.sf.oval.constraint.AssertValid; import org.apache.struts2.oval.interceptor.domain.Person; import com.opensymphony.xwork2.ActionSupport; import com.opensymphony.xwork2.ModelDriven; public class ModelDrivenAction extends ActionSupport implements ModelDriven<Person> { @AssertValid private Person model = new Person(); public Person getModel() { return model; } } ======================================================================= ==/home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/domain/Person.java ======================================================================= package org.apache.struts2.oval.interceptor.domain; import javax.persistence.Column; import net.sf.oval.constraint.AssertValid; import net.sf.oval.constraint.NotNull; public class Person { @Column(nullable=false) private String name; @NotNull private String email; @AssertValid private Address address = new Address(); public void setEmail(String email) { this.email = email; } public String getEmail() { return email; } public void setName(String name) { this.name = name; } public String getName() { return name; } public void setAddress(Address address) { this.address = address; } public Address getAddress() { return address; } } ======================================================================= ==/home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/java/org/apache/struts2/oval/interceptor/domain/Address.java ======================================================================= package org.apache.struts2.oval.interceptor.domain; import net.sf.oval.constraint.MinLength; public class Address { @MinLength(value=7) private String street; public void setStreet(String street) { this.street = street; } public String getStreet() { return street; } } ======================================================================= ==/home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/resources/org/apache/struts2/oval/interceptor/SimpleFieldsXML-validation.xml ======================================================================= <?xml version="1.0" encoding="UTF-8"?> <oval xmlns="http://oval.sf.net/oval-configuration" xmlns:xsi="http://http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://oval.sf.net/oval-configuration http://oval.sourceforge.net/oval-configuration-1.3.xsd"> <class type="org.apache.struts2.oval.interceptor.SimpleFieldsXML" overwrite="false" applyFieldConstraintsToSetters="true"> <field name="firstName"> <notNull/> </field> </class> </oval> ======================================================================= ==/home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/resources/org/apache/struts2/oval/interceptor/SimpleFieldI18n.properties ======================================================================= notnull.field=${field.name} cannot be null ======================================================================= ==/home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/resources/org/apache/struts2/oval/interceptor/SimpleFieldsXMLChild-validation.xml ======================================================================= <?xml version="1.0" encoding="UTF-8"?> <oval xmlns="http://oval.sf.net/oval-configuration" xmlns:xsi="http://http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://oval.sf.net/oval-configuration http://oval.sourceforge.net/oval-configuration-1.3.xsd"> <class type="org.apache.struts2.oval.interceptor.SimpleFieldsXMLChild" overwrite="false" applyFieldConstraintsToSetters="true"> <field name="middleName"> <notNull/> </field> </class> </oval> ======================================================================= ==/home/wesw/tmp/STRUTS_2_1_8_1/plugins/oval/src/test/resources/oval-test.xml ======================================================================= <!DOCTYPE xwork PUBLIC "-//OpenSymphony Group//XWork 2.0//EN" "http://www.opensymphony.com/xwork/xwork-2.0.dtd" > <xwork> <bean type="org.apache.struts2.oval.interceptor.OValValidationManager" class="org.apache.struts2.oval.interceptor.DummyDefaultOValValidationManager"/> <constant name="struts.enable.SlashesInActionNames" value="true"/> <constant name="struts.oval.validateJPAAnnotations" value="false" /> <package namespace="oval" name="oval-test"> <result-types> <result-type name="void" class="org.apache.struts2.oval.interceptor.VoidResult"/> </result-types> <interceptors> <interceptor name="ovalValidation" class="org.apache.struts2.oval.interceptor.OValValidationInterceptor"/> </interceptors> <action name="simpleFieldsJPA" class="org.apache.struts2.oval.interceptor.SimpleFieldJPAAnnotations"> <interceptor-ref name="ovalValidation"> <param name="validateJPAAnnotations">true</param> </interceptor-ref> <result type="void"></result> </action> <action name="simpleFieldsXMLChild" class="org.apache.struts2.oval.interceptor.SimpleFieldsXMLChild"> <interceptor-ref name="ovalValidation"/> <result type="void"></result> </action> <action name="validationInMethods" class="org.apache.struts2.oval.interceptor.ValidationInMethods"> <interceptor-ref name="ovalValidation"/> <result type="void"></result> </action> <action name="simpleFieldsXML/*" class="org.apache.struts2.oval.interceptor.SimpleFieldsXML"> <interceptor-ref name="ovalValidation"/> <result type="void"></result> </action> <action name="simpleFieldsXML" class="org.apache.struts2.oval.interceptor.SimpleFieldsXML"> <interceptor-ref name="ovalValidation"/> <result type="void"></result> </action> <action name="simpleFieldsXMLCaching" class="org.apache.struts2.oval.interceptor.SimpleFieldsXML"> <interceptor-ref name="ovalValidation"/> <result type="void"></result> </action> <action name="simpleField" class="org.apache.struts2.oval.interceptor.SimpleField"> <interceptor-ref name="ovalValidation"/> <result type="void"></result> </action> <action name="simpleMethod" class="org.apache.struts2.oval.interceptor.SimpleMethod"> <interceptor-ref name="ovalValidation"/>