/* * Copyright (c) 2012, Inversoft Inc., All Rights Reserved * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, * either express or implied. See the License for the specific * language governing permissions and limitations under the License. */ package org.primeframework.mvc.control.guice; import org.primeframework.mvc.control.form.Button; import org.primeframework.mvc.control.form.Checkbox; import org.primeframework.mvc.control.form.CheckboxList; import org.primeframework.mvc.control.form.CountrySelect; import org.primeframework.mvc.control.form.DefaultFormPreparer; import org.primeframework.mvc.control.form.File; import org.primeframework.mvc.control.form.Form; import org.primeframework.mvc.control.form.FormPreparer; import org.primeframework.mvc.control.form.Hidden; import org.primeframework.mvc.control.form.Image; import org.primeframework.mvc.control.form.LocaleSelect; import org.primeframework.mvc.control.form.MonthSelect; import org.primeframework.mvc.control.form.Password; import org.primeframework.mvc.control.form.RadioList; import org.primeframework.mvc.control.form.Reset; import org.primeframework.mvc.control.form.Select; import org.primeframework.mvc.control.form.StateSelect; import org.primeframework.mvc.control.form.Submit; import org.primeframework.mvc.control.form.Text; import org.primeframework.mvc.control.form.Textarea; import org.primeframework.mvc.control.form.YearSelect; import org.primeframework.mvc.control.message.Message; import com.google.inject.AbstractModule; /** * This class is a Guice module that configures the Prime MVC controls. * * @author Brian Pontarelli */ public class ControlModule extends AbstractModule { @Override protected void configure() { bind(ControlFactory.class); ControlFactory.addControl(binder(), "control", "button", Button.class); ControlFactory.addControl(binder(), "control", "checkbox", Checkbox.class); ControlFactory.addControl(binder(), "control", "checkbox_list", CheckboxList.class); ControlFactory.addControl(binder(), "control", "country_select", CountrySelect.class); ControlFactory.addControl(binder(), "control", "file", File.class); ControlFactory.addControl(binder(), "control", "form", Form.class); ControlFactory.addControl(binder(), "control", "hidden", Hidden.class); ControlFactory.addControl(binder(), "control", "image", Image.class); ControlFactory.addControl(binder(), "control", "locale_select", LocaleSelect.class); ControlFactory.addControl(binder(), "control", "month_select", MonthSelect.class); ControlFactory.addControl(binder(), "control", "password", Password.class); ControlFactory.addControl(binder(), "control", "radio_list", RadioList.class); ControlFactory.addControl(binder(), "control", "reset", Reset.class); ControlFactory.addControl(binder(), "control", "select", Select.class); ControlFactory.addControl(binder(), "control", "state_select", StateSelect.class); ControlFactory.addControl(binder(), "control", "submit", Submit.class); ControlFactory.addControl(binder(), "control", "text", Text.class); ControlFactory.addControl(binder(), "control", "textarea", Textarea.class); ControlFactory.addControl(binder(), "control", "year_select", YearSelect.class); ControlFactory.addControl(binder(), "control", "message", Message.class); bindFormPreparer(); } protected void bindFormPreparer() { bind(FormPreparer.class).to(DefaultFormPreparer.class); } }