@Override public void characters(String s) { if (a.checkCharacters(s, v) == ValidationResult.ILL_FORMED) { throw new IllFormed(); } a.doCharacters(s); }
/** * Performs a deleteCharacters transition with the given parameters. */ public void doDeleteCharacters(int count) { assert checkDeleteCharacters(count, null) != ValidationResult.ILL_FORMED; advance(count); decreaseLength(count); }
/** * Performs a deleteElementEnd transition with the given parameters. */ public void doDeleteElementEnd() { assert checkDeleteElementEnd(null) != ValidationResult.ILL_FORMED; popStack(); decreaseLength(2); advance(1); }
/** * Performs an elementEnd transition with the given parameters. */ public void doElementEnd() { assert checkElementEnd(null) != ValidationResult.ILL_FORMED; popStack(); // size increase happens in element start resultingPos += 1; }
Preconditions.checkNotNull(schema, "Schema constraints required, if not, " + "use DocumentSchema.NO_SCHEMA_CONSTRAINTS"); final NindoAutomaton<N, E, T> a = new NindoAutomaton<N, E, T>(schema, doc); final ViolationCollector v = new ViolationCollector(); try { return v; if (a.checkFinish(v) == ValidationResult.ILL_FORMED) { return v; a.doFinish(); return v;
/** * Performs a deleteElementStart transition with the given parameters. */ public void doDeleteElementStart() { assert checkDeleteElementStart(null) != ValidationResult.ILL_FORMED; pushOntoStack(DeleteElement.getInstance()); advance(1); // size decrease happens in delete element end }
/** * Performs an elementStart transition with the given parameters. */ public void doElementStart(String tag, Map<String, String> attr) { assert checkElementStart(tag, attr, null) != ValidationResult.ILL_FORMED; pushOntoStack(InsertElement.getInstance(tag)); increaseLength(2); resultingPos += 1; }
@Override public void deleteCharacters(int n) { if (a.checkDeleteCharacters(n, v) == ValidationResult.ILL_FORMED) { throw new IllFormed(); } a.doDeleteCharacters(n); }
@Override public void replaceAttributes(Attributes attributes) { if (a.checkSetAttributes(attributes, v) == ValidationResult.ILL_FORMED) { throw new IllFormed(); } a.doSetAttributes(attributes); }
@Override public void deleteElementEnd() { if (a.checkDeleteElementEnd(v) == ValidationResult.ILL_FORMED) { throw new IllFormed(); } a.doDeleteElementEnd(); }
@Override public void deleteElementStart() { if (a.checkDeleteElementStart(v) == ValidationResult.ILL_FORMED) { throw new IllFormed(); } a.doDeleteElementStart(); }
@Override public void elementEnd() { if (a.checkElementEnd(v) == ValidationResult.ILL_FORMED) { throw new IllFormed(); } a.doElementEnd(); }
@Override public void elementStart(String tagName, Attributes attributes) { if (a.checkElementStart(tagName, attributes, v) == ValidationResult.ILL_FORMED) { throw new IllFormed(); } a.doElementStart(tagName, attributes); }
@Override RandomizerMutationComponent generate(boolean valid) { if (a.checkDeleteCharacters(1, null).isIllFormed()) { return null; int max = Math.min(a.maxCharactersToDelete(), p.getMaxDeleteLength()); if (max == 0) { return null; } else { int max = p.getMaxDeleteLength(); int min = a.maxCharactersToDelete() + 1; if (min > max) { return null;
@Override RandomizerMutationComponent generate(boolean valid) { ValidationResult v = a.checkCharacters("a", null); if (v.isIllFormed()) { return null; return null; int max = Math.min(a.maxLengthIncrease(), p.getMaxInsertLength()); if (max == 0) { return null; int min = a.maxLengthIncrease() + 1; if (min > max) { return null;
/** * Performs a setAttributes transition with the given parameters. */ public void doSetAttributes(Map<String, String> attr) { assert checkSetAttributes(attr, null) != ValidationResult.ILL_FORMED; advance(1); resultingPos += 1; }
/** * Performs an endAnnotation transition with the given parameters. */ public void doEndAnnotation(String key) { assert checkEndAnnotation(key, null) != ValidationResult.ILL_FORMED; setAnnotationClosed(key); }
/** * Performs a characters transition with the given parameters. */ public void doCharacters(String characters) { assert checkCharacters(characters, null) != ValidationResult.ILL_FORMED; increaseLength(characters.length()); resultingPos += characters.length(); }
@Override public void endAnnotation(String key) { if (a.checkEndAnnotation(key, v) == ValidationResult.ILL_FORMED) { throw new IllFormed(); } a.doEndAnnotation(key); }
/** * Notifies the automaton that no further mutation components follow. */ // This doesn't actually do anything important. It's here for symmetry only. public void doFinish() { assert checkFinish(null) != ValidationResult.ILL_FORMED; }