/* * Copyright 2000-2013 Enonic AS * http://www.enonic.com/license */ package com.enonic.cms.core.image.filter.command; import java.util.HashMap; public final class FilterCommandRegistry { private final HashMap<String, FilterCommand> map; public FilterCommandRegistry() { this.map = new HashMap<String, FilterCommand>(); register( new BlockFilterCommand() ); register( new BlurFilterCommand() ); register( new BorderFilterCommand() ); register( new EmbossFilterCommand() ); register( new GrayscaleFilterCommand() ); register( new InvertFilterCommand() ); register( new RoundedFilterCommand() ); register( new ScaleHeightFilterCommand() ); register( new ScaleMaxFilterCommand() ); register( new ScaleSquareFilterCommand() ); register( new ScaleWideFilterCommand() ); register( new ScaleWidthFilterCommand() ); register( new SharpenFilterCommand() ); register( new RGBAdjustFilterCommand() ); register( new HSBAdjustFilterCommand() ); register( new EdgeFilterCommand() ); register( new GammaFilterCommand() ); register( new BumpFilterCommand() ); register( new SepiaFilterCommand() ); register( new Rotate90Command() ); register( new Rotate180Command() ); register( new Rotate270Command() ); register( new FlipHorizontalCommand() ); register( new FlipVerticalCommand() ); register( new ColorizeFilterCommand() ); register( new HSBColorizeFilterCommand() ); register( new ScaleBlockFilterCommand() ); } private void register( FilterCommand command ) { this.map.put( command.getName().toLowerCase(), command ); } public FilterCommand getCommand( String name ) { return this.map.get( name.toLowerCase() ); } }