001package org.kuali.student.lum.common.client.configuration;
002
003import com.google.gwt.user.client.ui.Widget;
004
005import org.kuali.student.common.ui.client.configurable.mvc.Configurer;
006import org.kuali.student.common.ui.client.mvc.DataModel;
007import org.kuali.student.common.ui.client.mvc.View;
008
009/**
010 * Should be implemented by classes that want to configure a view using configurer.
011 *
012 * @author Igor
013 */
014public interface Configuration {
015    void setConfigurer(Configurer configurer);
016
017    View getView();
018
019    Widget asWidget();
020
021    Enum<?> getName();
022
023    void applyRestrictions();
024
025    boolean checkPermission(DataModel model);
026
027    void removeRestrictions();
028}