1 21 22 package org.dbunit.dataset.csv.handlers; 23 24 import org.dbunit.dataset.csv.IllegalInputCharacterException; 25 26 public class EscapeHandler extends AbstractPipelineComponent { 27 28 public static final char ESCAPE_CHAR = '\\'; 29 30 private EscapeHandler() { 31 } 32 33 public static final PipelineComponent ACCEPT() { 34 return createPipelineComponent(new EscapeHandler(), new ACCEPT()); 35 } 36 37 public static final PipelineComponent IGNORE() { 39 return createPipelineComponent(new EscapeHandler(), new IGNORE()); 40 } 41 42 public static final PipelineComponent ESCAPE() { 43 return createPipelineComponent(new EscapeHandler(), new ESCAPE()); 44 } 45 46 public boolean canHandle(char c) throws IllegalInputCharacterException { 47 48 if (c == ESCAPE_CHAR) { 49 return true; 50 } 51 return false; 52 } 53 54 static private class ESCAPE extends Helper { 55 56 public void helpWith(char c) { 57 getHandler().getPipeline().putFront(EnforceHandler.ENFORCE( 58 new PipelineComponent [] { 59 QuoteHandler.ACCEPT(), EscapeHandler.ACCEPT() 60 } 61 )); 62 } 64 } 65 66 } 67 | Popular Tags |