/******************************************************************************* * Copyright (c) 2014 Open Door Logistics (www.opendoorlogistics.com) * All rights reserved. This program and the accompanying materials * are made available under the terms of the GNU Lesser Public License v3 * which accompanies this distribution, and is available at http://www.gnu.org/licenses/lgpl.txt ******************************************************************************/ package com.opendoorlogistics.core.components; import java.io.Serializable; import javax.swing.Icon; import javax.swing.JPanel; import com.opendoorlogistics.api.ODLApi; import com.opendoorlogistics.api.components.ComponentConfigurationEditorAPI; import com.opendoorlogistics.api.components.ComponentExecutionApi; import com.opendoorlogistics.api.components.ODLComponent; import com.opendoorlogistics.api.scripts.ScriptTemplatesBuilder; import com.opendoorlogistics.api.tables.ODLDatastore; import com.opendoorlogistics.api.tables.ODLDatastoreAlterable; import com.opendoorlogistics.api.tables.ODLTable; import com.opendoorlogistics.api.tables.ODLTableAlterable; import com.opendoorlogistics.api.tables.ODLTableDefinition; public class ODLComponentDecorator implements ODLComponent{ protected final ODLComponent decorated; public ODLComponentDecorator(ODLComponent decorated) { super(); this.decorated = decorated; } @Override public String getId() { return decorated.getId(); } @Override public String getName() { return decorated.getName(); } @Override public ODLDatastore<? extends ODLTableDefinition> getIODsDefinition(ODLApi api,Serializable configuration) { return decorated.getIODsDefinition(api,configuration); } @Override public ODLDatastore<? extends ODLTableDefinition> getOutputDsDefinition(ODLApi api,int mode, Serializable configuration) { return decorated.getOutputDsDefinition(api,mode,configuration); } @Override public void execute(ComponentExecutionApi reporter,int mode, Object configuration, ODLDatastore<? extends ODLTable> ioDb, ODLDatastoreAlterable<? extends ODLTableAlterable> outputDb) { decorated.execute(reporter,mode, configuration, ioDb, outputDb); } @Override public Class<? extends Serializable> getConfigClass() { return decorated.getConfigClass(); } @Override public JPanel createConfigEditorPanel(ComponentConfigurationEditorAPI factory,int mode,Serializable config , boolean isFixedIO) { return decorated.createConfigEditorPanel(factory,mode,config, false); } @Override public long getFlags(ODLApi api,int mode) { return decorated.getFlags(api,mode); } @Override public Icon getIcon(ODLApi api,int mode) { return decorated.getIcon(api,mode); } @Override public boolean isModeSupported(ODLApi api,int mode) { return decorated.isModeSupported(api, mode); } @Override public void registerScriptTemplates(ScriptTemplatesBuilder templatesApi) { decorated.registerScriptTemplates(templatesApi); } }