package com.digiarea.closure.model.bind;
import java.util.ResourceBundle;
import javafx.util.Callback;
import com.digiarea.closure.model.controller.ClosureEditorController;
import com.digiarea.closure.model.controller.GSSConsoleSectionController;
import com.digiarea.closure.model.controller.GSSCopySectionController;
import com.digiarea.closure.model.controller.GSSDefinesSectionController;
import com.digiarea.closure.model.controller.GSSFormattingSectionController;
import com.digiarea.closure.model.controller.GSSInfoSectionController;
import com.digiarea.closure.model.controller.GSSLibrariesSectionController;
import com.digiarea.closure.model.controller.GSSLintingSectionController;
import com.digiarea.closure.model.controller.GSSOrderSectionController;
import com.digiarea.closure.model.controller.GSSOutputSectionController;
import com.digiarea.closure.model.controller.GSSPageController;
import com.digiarea.closure.model.controller.GSSRenamingSectionController;
import com.digiarea.closure.model.controller.GSSSourceSectionController;
import com.digiarea.closure.model.controller.GSSVendorSectionController;
import com.digiarea.closure.model.controller.JSCheckSectionController;
import com.digiarea.closure.model.controller.JSConsoleSectionController;
import com.digiarea.closure.model.controller.JSDefinesSectionController;
import com.digiarea.closure.model.controller.JSDocsSectionController;
import com.digiarea.closure.model.controller.JSExportsSectionController;
import com.digiarea.closure.model.controller.JSFormattingSectionController;
import com.digiarea.closure.model.controller.JSHelperSectionController;
import com.digiarea.closure.model.controller.JSInfoSectionController;
import com.digiarea.closure.model.controller.JSLanguageSectionController;
import com.digiarea.closure.model.controller.JSLibrariesSectionController;
import com.digiarea.closure.model.controller.JSOrderSectionController;
import com.digiarea.closure.model.controller.JSOutputSectionController;
import com.digiarea.closure.model.controller.JSPageController;
import com.digiarea.closure.model.controller.JSRenamingSectionController;
import com.digiarea.closure.model.controller.JSSourceMapSectionController;
import com.digiarea.closure.model.controller.JSSourceSectionController;
import com.digiarea.closure.model.controller.JSTranslationSectionController;
import com.digiarea.closure.model.controller.JSWarningsSectionController;
import com.digiarea.closure.model.controller.SOYConsoleSectionController;
import com.digiarea.closure.model.controller.SOYInfoSectionController;
import com.digiarea.closure.model.controller.SOYLibrariesSectionController;
import com.digiarea.closure.model.controller.SOYLocalizationSectionController;
import com.digiarea.closure.model.controller.SOYOptionsSectionController;
import com.digiarea.closure.model.controller.SOYOrderSectionController;
import com.digiarea.closure.model.controller.SOYOutputSectionController;
import com.digiarea.closure.model.controller.SOYPageController;
import com.digiarea.closure.model.controller.SOYSourceSectionController;
import com.digiarea.closure.model.controller.SOYStyleSectionController;
public class ControllerFactory implements Callback<Class<?>, Object> {
@Override
public Object call(Class<?> clazz) {
if (clazz == SOYStyleSectionController.class) {
if (sOYStyleSectionController == null) {
sOYStyleSectionController = new SOYStyleSectionController(modelFacade, bundle);
}
return sOYStyleSectionController;
} else if (clazz == SOYSourceSectionController.class) {
if (sOYSourceSectionController == null) {
sOYSourceSectionController = new SOYSourceSectionController(modelFacade, bundle);
}
return sOYSourceSectionController;
} else if (clazz == SOYPageController.class) {
if (sOYPageController == null) {
sOYPageController = new SOYPageController(modelFacade, bundle);
}
return sOYPageController;
} else if (clazz == SOYOutputSectionController.class) {
if (sOYOutputSectionController == null) {
sOYOutputSectionController = new SOYOutputSectionController(modelFacade, bundle);
}
return sOYOutputSectionController;
} else if (clazz == SOYOrderSectionController.class) {
if (sOYOrderSectionController == null) {
sOYOrderSectionController = new SOYOrderSectionController(modelFacade, bundle);
}
return sOYOrderSectionController;
} else if (clazz == SOYOptionsSectionController.class) {
if (sOYOptionsSectionController == null) {
sOYOptionsSectionController = new SOYOptionsSectionController(modelFacade, bundle);
}
return sOYOptionsSectionController;
} else if (clazz == SOYLocalizationSectionController.class) {
if (sOYLocalizationSectionController == null) {
sOYLocalizationSectionController = new SOYLocalizationSectionController(modelFacade, bundle);
}
return sOYLocalizationSectionController;
} else if (clazz == SOYLibrariesSectionController.class) {
if (sOYLibrariesSectionController == null) {
sOYLibrariesSectionController = new SOYLibrariesSectionController(modelFacade, bundle);
}
return sOYLibrariesSectionController;
} else if (clazz == SOYInfoSectionController.class) {
if (sOYInfoSectionController == null) {
sOYInfoSectionController = new SOYInfoSectionController(modelFacade, bundle);
}
return sOYInfoSectionController;
} else if (clazz == SOYConsoleSectionController.class) {
if (sOYConsoleSectionController == null) {
sOYConsoleSectionController = new SOYConsoleSectionController(modelFacade, bundle);
}
return sOYConsoleSectionController;
} else if (clazz == JSWarningsSectionController.class) {
if (jSWarningsSectionController == null) {
jSWarningsSectionController = new JSWarningsSectionController(modelFacade, bundle);
}
return jSWarningsSectionController;
} else if (clazz == JSTranslationSectionController.class) {
if (jSTranslationSectionController == null) {
jSTranslationSectionController = new JSTranslationSectionController(modelFacade, bundle);
}
return jSTranslationSectionController;
} else if (clazz == JSSourceSectionController.class) {
if (jSSourceSectionController == null) {
jSSourceSectionController = new JSSourceSectionController(modelFacade, bundle);
}
return jSSourceSectionController;
} else if (clazz == JSSourceMapSectionController.class) {
if (jSSourceMapSectionController == null) {
jSSourceMapSectionController = new JSSourceMapSectionController(modelFacade, bundle);
}
return jSSourceMapSectionController;
} else if (clazz == JSRenamingSectionController.class) {
if (jSRenamingSectionController == null) {
jSRenamingSectionController = new JSRenamingSectionController(modelFacade, bundle);
}
return jSRenamingSectionController;
} else if (clazz == JSPageController.class) {
if (jSPageController == null) {
jSPageController = new JSPageController(modelFacade, bundle);
}
return jSPageController;
} else if (clazz == JSOutputSectionController.class) {
if (jSOutputSectionController == null) {
jSOutputSectionController = new JSOutputSectionController(modelFacade, bundle);
}
return jSOutputSectionController;
} else if (clazz == JSOrderSectionController.class) {
if (jSOrderSectionController == null) {
jSOrderSectionController = new JSOrderSectionController(modelFacade, bundle);
}
return jSOrderSectionController;
} else if (clazz == JSLibrariesSectionController.class) {
if (jSLibrariesSectionController == null) {
jSLibrariesSectionController = new JSLibrariesSectionController(modelFacade, bundle);
}
return jSLibrariesSectionController;
} else if (clazz == JSLanguageSectionController.class) {
if (jSLanguageSectionController == null) {
jSLanguageSectionController = new JSLanguageSectionController(modelFacade, bundle);
}
return jSLanguageSectionController;
} else if (clazz == JSInfoSectionController.class) {
if (jSInfoSectionController == null) {
jSInfoSectionController = new JSInfoSectionController(modelFacade, bundle);
}
return jSInfoSectionController;
} else if (clazz == JSHelperSectionController.class) {
if (jSHelperSectionController == null) {
jSHelperSectionController = new JSHelperSectionController(modelFacade, bundle);
}
return jSHelperSectionController;
} else if (clazz == JSFormattingSectionController.class) {
if (jSFormattingSectionController == null) {
jSFormattingSectionController = new JSFormattingSectionController(modelFacade, bundle);
}
return jSFormattingSectionController;
} else if (clazz == JSExportsSectionController.class) {
if (jSExportsSectionController == null) {
jSExportsSectionController = new JSExportsSectionController(modelFacade, bundle);
}
return jSExportsSectionController;
} else if (clazz == JSDocsSectionController.class) {
if (jSDocsSectionController == null) {
jSDocsSectionController = new JSDocsSectionController(modelFacade, bundle);
}
return jSDocsSectionController;
} else if (clazz == JSDefinesSectionController.class) {
if (jSDefinesSectionController == null) {
jSDefinesSectionController = new JSDefinesSectionController(modelFacade, bundle);
}
return jSDefinesSectionController;
} else if (clazz == JSConsoleSectionController.class) {
if (jSConsoleSectionController == null) {
jSConsoleSectionController = new JSConsoleSectionController(modelFacade, bundle);
}
return jSConsoleSectionController;
} else if (clazz == JSCheckSectionController.class) {
if (jSCheckSectionController == null) {
jSCheckSectionController = new JSCheckSectionController(modelFacade, bundle);
}
return jSCheckSectionController;
} else if (clazz == GSSVendorSectionController.class) {
if (gSSVendorSectionController == null) {
gSSVendorSectionController = new GSSVendorSectionController(modelFacade, bundle);
}
return gSSVendorSectionController;
} else if (clazz == GSSSourceSectionController.class) {
if (gSSSourceSectionController == null) {
gSSSourceSectionController = new GSSSourceSectionController(modelFacade, bundle);
}
return gSSSourceSectionController;
} else if (clazz == GSSRenamingSectionController.class) {
if (gSSRenamingSectionController == null) {
gSSRenamingSectionController = new GSSRenamingSectionController(modelFacade, bundle);
}
return gSSRenamingSectionController;
} else if (clazz == GSSPageController.class) {
if (gSSPageController == null) {
gSSPageController = new GSSPageController(modelFacade, bundle);
}
return gSSPageController;
} else if (clazz == GSSOutputSectionController.class) {
if (gSSOutputSectionController == null) {
gSSOutputSectionController = new GSSOutputSectionController(modelFacade, bundle);
}
return gSSOutputSectionController;
} else if (clazz == GSSOrderSectionController.class) {
if (gSSOrderSectionController == null) {
gSSOrderSectionController = new GSSOrderSectionController(modelFacade, bundle);
}
return gSSOrderSectionController;
} else if (clazz == GSSLintingSectionController.class) {
if (gSSLintingSectionController == null) {
gSSLintingSectionController = new GSSLintingSectionController(modelFacade, bundle);
}
return gSSLintingSectionController;
} else if (clazz == GSSLibrariesSectionController.class) {
if (gSSLibrariesSectionController == null) {
gSSLibrariesSectionController = new GSSLibrariesSectionController(modelFacade, bundle);
}
return gSSLibrariesSectionController;
} else if (clazz == GSSInfoSectionController.class) {
if (gSSInfoSectionController == null) {
gSSInfoSectionController = new GSSInfoSectionController(modelFacade, bundle);
}
return gSSInfoSectionController;
} else if (clazz == GSSFormattingSectionController.class) {
if (gSSFormattingSectionController == null) {
gSSFormattingSectionController = new GSSFormattingSectionController(modelFacade, bundle);
}
return gSSFormattingSectionController;
} else if (clazz == GSSDefinesSectionController.class) {
if (gSSDefinesSectionController == null) {
gSSDefinesSectionController = new GSSDefinesSectionController(modelFacade, bundle);
}
return gSSDefinesSectionController;
} else if (clazz == GSSCopySectionController.class) {
if (gSSCopySectionController == null) {
gSSCopySectionController = new GSSCopySectionController(modelFacade, bundle);
}
return gSSCopySectionController;
} else if (clazz == GSSConsoleSectionController.class) {
if (gSSConsoleSectionController == null) {
gSSConsoleSectionController = new GSSConsoleSectionController(modelFacade, bundle);
}
return gSSConsoleSectionController;
} else if (clazz == ClosureEditorController.class) {
if (closureEditorController == null) {
closureEditorController = new ClosureEditorController(modelFacade, bundle);
}
return closureEditorController;
} else {
return null;
}
}
public ControllerFactory(ModelFacade modelFacade, ResourceBundle bundle) {
modelFacade.setFactory(this);
this.modelFacade = modelFacade;
this.bundle = bundle;
}
private ModelFacade modelFacade = null;
private ResourceBundle bundle = null;
private ClosureEditorController closureEditorController = null;
private GSSConsoleSectionController gSSConsoleSectionController = null;
private GSSCopySectionController gSSCopySectionController = null;
private GSSDefinesSectionController gSSDefinesSectionController = null;
private GSSFormattingSectionController gSSFormattingSectionController = null;
private GSSInfoSectionController gSSInfoSectionController = null;
private GSSLibrariesSectionController gSSLibrariesSectionController = null;
private GSSLintingSectionController gSSLintingSectionController = null;
private GSSOrderSectionController gSSOrderSectionController = null;
private GSSOutputSectionController gSSOutputSectionController = null;
private GSSPageController gSSPageController = null;
private GSSRenamingSectionController gSSRenamingSectionController = null;
private GSSSourceSectionController gSSSourceSectionController = null;
private GSSVendorSectionController gSSVendorSectionController = null;
private JSCheckSectionController jSCheckSectionController = null;
private JSConsoleSectionController jSConsoleSectionController = null;
private JSDefinesSectionController jSDefinesSectionController = null;
private JSDocsSectionController jSDocsSectionController = null;
private JSExportsSectionController jSExportsSectionController = null;
private JSFormattingSectionController jSFormattingSectionController = null;
private JSHelperSectionController jSHelperSectionController = null;
private JSInfoSectionController jSInfoSectionController = null;
private JSLanguageSectionController jSLanguageSectionController = null;
private JSLibrariesSectionController jSLibrariesSectionController = null;
private JSOrderSectionController jSOrderSectionController = null;
private JSOutputSectionController jSOutputSectionController = null;
private JSPageController jSPageController = null;
private JSRenamingSectionController jSRenamingSectionController = null;
private JSSourceMapSectionController jSSourceMapSectionController = null;
private JSSourceSectionController jSSourceSectionController = null;
private JSTranslationSectionController jSTranslationSectionController = null;
private JSWarningsSectionController jSWarningsSectionController = null;
private SOYConsoleSectionController sOYConsoleSectionController = null;
private SOYInfoSectionController sOYInfoSectionController = null;
private SOYLibrariesSectionController sOYLibrariesSectionController = null;
private SOYLocalizationSectionController sOYLocalizationSectionController = null;
private SOYOptionsSectionController sOYOptionsSectionController = null;
private SOYOrderSectionController sOYOrderSectionController = null;
private SOYOutputSectionController sOYOutputSectionController = null;
private SOYPageController sOYPageController = null;
private SOYSourceSectionController sOYSourceSectionController = null;
private SOYStyleSectionController sOYStyleSectionController = null;
}