com.thaiopensource.validate.nrl.ValidateAction Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of wicketstuff-jing Show documentation
Show all versions of wicketstuff-jing Show documentation
Jing is a validator for RELAX NG and other schema languages. This
project was taken from http://code.google.com/p/jing-trang and
mavenized for inclusion in the Wicket Stuff HTML Validator.
The code was taken from the 20091111 release.
package com.thaiopensource.validate.nrl;
import com.thaiopensource.validate.Schema;
import com.thaiopensource.validate.nrl.Mode;
import com.thaiopensource.validate.nrl.ModeUsage;
import com.thaiopensource.validate.nrl.NoResultAction;
import com.thaiopensource.validate.nrl.SectionState;
import org.xml.sax.SAXException;
class ValidateAction extends NoResultAction {
private final Schema schema;
ValidateAction(ModeUsage modeUsage, Schema schema) {
super(modeUsage);
this.schema = schema;
}
void perform(SectionState state) throws SAXException {
state.addValidator(schema, getModeUsage());
}
NoResultAction changeCurrentMode(Mode mode) {
return new ValidateAction(getModeUsage().changeCurrentMode(mode), schema);
}
public boolean equals(Object obj) {
return super.equals(obj) && schema.equals(((ValidateAction)obj).schema);
}
public int hashCode() {
return super.hashCode() ^ schema.hashCode();
}
}