1 4 package com.openedit.generators; 5 6 import java.util.Arrays ; 7 import java.util.Iterator ; 8 import java.util.List ; 9 10 import com.openedit.Generator; 11 import com.openedit.OpenEditException; 12 import com.openedit.WebPageRequest; 13 import com.openedit.page.Page; 14 15 19 public class GeneratorWithMimeTypeFilter extends BaseGenerator 20 { 21 22 protected Generator fieldGenerator; 23 protected List fieldMimeTypes; 24 public GeneratorWithMimeTypeFilter(Generator inGen, String inTypes) 25 { 26 setGenerator(inGen); 27 List types = Arrays.asList(inTypes.split(",")); 28 setMimeTypes(types); 29 } 30 31 public void generate(WebPageRequest inContext, Page inPage, Output inOut) throws OpenEditException 32 { 33 getGenerator().generate(inContext,inPage, inOut); 34 } 35 36 public Generator getGenerator() 37 { 38 return fieldGenerator; 39 } 40 public void setGenerator(Generator inGenerator) 41 { 42 fieldGenerator = inGenerator; 43 } 44 public List getMimeTypes() 45 { 46 return fieldMimeTypes; 47 } 48 public void setMimeTypes(List inMimeTypes) 49 { 50 fieldMimeTypes = inMimeTypes; 51 } 52 53 public boolean canGenerate(WebPageRequest inReq) 54 { 55 if( inReq == null) 56 { 57 return false; 58 } 59 String compareTo = inReq.getPage().getMimeType(); 60 for (Iterator iter = getMimeTypes().iterator(); iter.hasNext();) 61 { 62 String mtype = (String ) iter.next(); 63 if ( mtype.equalsIgnoreCase(compareTo)) 64 { 65 return true; 66 } 67 68 } 69 return false; 70 } 71 72 } 73 | Popular Tags |