001package com.github.gwtmaterialdesign.client.gin;
002
003/*
004 * #%L
005 * GwtMaterial
006 * %%
007 * Copyright (C) 2015 - 2016 GwtMaterialDesign
008 * %%
009 * Licensed under the Apache License, Version 2.0 (the "License");
010 * you may not use this file except in compliance with the License.
011 * You may obtain a copy of the License at
012 * 
013 *      http://www.apache.org/licenses/LICENSE-2.0
014 * 
015 * Unless required by applicable law or agreed to in writing, software
016 * distributed under the License is distributed on an "AS IS" BASIS,
017 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
018 * See the License for the specific language governing permissions and
019 * limitations under the License.
020 * #L%
021 */
022
023
024import com.github.gwtmaterialdesign.client.application.ApplicationModule;
025import com.github.gwtmaterialdesign.client.place.NameTokens;
026import com.github.gwtmaterialdesign.client.resources.ResourceLoader;
027import com.gwtplatform.mvp.client.annotations.DefaultPlace;
028import com.gwtplatform.mvp.client.annotations.ErrorPlace;
029import com.gwtplatform.mvp.client.annotations.UnauthorizedPlace;
030import com.gwtplatform.mvp.client.gin.AbstractPresenterModule;
031import com.gwtplatform.mvp.client.gin.DefaultModule;
032
033public class ClientModule extends AbstractPresenterModule {
034    @Override
035    protected void configure() {
036        install(new DefaultModule.Builder().build());
037        install(new ApplicationModule());
038
039        bind(ResourceLoader.class).asEagerSingleton();
040
041        // DefaultPlaceManager Places
042        bindConstant().annotatedWith(DefaultPlace.class).to(NameTokens.HOME);
043        bindConstant().annotatedWith(ErrorPlace.class).to(NameTokens.HOME);
044        bindConstant().annotatedWith(UnauthorizedPlace.class).to(NameTokens.HOME);
045    }
046}