Android Open Source - Cervantes Cervantes Module






From Project

Back to project page Cervantes.

License

The source code is released under:

Apache License

If you think the Android project Cervantes listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/*
 * Copyright (C) 2014 Alejandro Rodriguez Salamanca.
 */*from  w w  w .jav a 2  s . c  o  m*/
 * 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 me.alexrs.cervantes.core.module;

import android.content.Context;
import android.content.res.Resources;
import android.view.LayoutInflater;
import com.path.android.jobqueue.JobManager;
import dagger.Module;
import dagger.Provides;
import javax.inject.Singleton;
import me.alexrs.cervantes.core.application.CervantesApplication;
import me.alexrs.cervantes.ui.activity.BaseActivity;
import me.alexrs.cervantes.ui.activity.CervantesActivity;
import me.alexrs.cervantes.ui.controller.activity.CervantesActivityController;
import me.alexrs.cervantes.ui.controller.fragment.CervantesFragmentController;
import me.alexrs.cervantes.ui.fragment.BaseFragment;
import me.alexrs.cervantes.ui.fragment.CervantesFragment;
import me.alexrs.cervantes.ui.presenter.CervantesFragmentPresenter;
import me.alexrs.cervantes.ui.presenter.EmptyViewPresenter;

/**
 * @author Alejandro Rodriguez <https://github.com/Alexrs95/Cervantes>
 */
@Module(
    complete = false,
    library = true,
    injects = {
        //Application
        CervantesApplication.class,
        //Activities
        BaseActivity.class, CervantesActivity.class,
        //Fragments
        BaseFragment.class, CervantesFragment.class
    })
public class CervantesModule {

  protected Context context;

  public CervantesModule(Context context) {
    this.context = context.getApplicationContext();
  }

  /**
   * Provides an Application Context
   *
   * @return Application Context
   */
  @Provides @Singleton Context provideContext() {
    return context;
  }

  /**
   * Provides new Resources instance
   *
   * @param context Context to obtain the Resources form
   */
  @Singleton @Provides public Resources provideResources(Context context) {
    return context.getResources();
  }

  /**
   * Provides an instance of LayoutInflater
   *
   * @return instance of LayoutInfltater
   */
  @Provides public LayoutInflater provideLayoutInflater() {
    return LayoutInflater.from(context);
  }

  @Provides public EmptyViewPresenter provideEmptyViewPresenter() {
    return new EmptyViewPresenter();
  }

  @Provides public CervantesFragmentPresenter provideMainPresenter() {
    return new CervantesFragmentPresenter();
  }

  @Provides public CervantesActivityController provideMainActivityController() {
    return new CervantesActivityController();
  }

  @Provides public CervantesFragmentController provideMainController(
      CervantesFragmentPresenter mainPresenter, EmptyViewPresenter emptyViewPresenter,
      JobManager jobManager) {
    return new CervantesFragmentController(mainPresenter, emptyViewPresenter, jobManager);
  }

  @Provides @Singleton public JobManager provideJobManager(Context context) {
    return new JobManager(context);
  }
}




Java Source Code List

me.alexrs.cervantes.ApplicationTest.java
me.alexrs.cervantes.core.application.CervantesApplication.java
me.alexrs.cervantes.core.data.Header.java
me.alexrs.cervantes.core.data.Meaning.java
me.alexrs.cervantes.core.data.MultipleResponseWord.java
me.alexrs.cervantes.core.data.Nebrija.java
me.alexrs.cervantes.core.data.Word.java
me.alexrs.cervantes.core.events.SearchEvent.java
me.alexrs.cervantes.core.events.SearchFailed.java
me.alexrs.cervantes.core.events.SearchPerformed.java
me.alexrs.cervantes.core.jobs.GetDailyWordJob.java
me.alexrs.cervantes.core.jobs.GetRandomWordJob.java
me.alexrs.cervantes.core.jobs.GetWordJob.java
me.alexrs.cervantes.core.module.CervantesModule.java
me.alexrs.cervantes.core.network.api.NebrijaApi.java
me.alexrs.cervantes.core.network.client.RestClient.java
me.alexrs.cervantes.core.utils.NebrijaStatus.java
me.alexrs.cervantes.core.utils.NebrijaType.java
me.alexrs.cervantes.core.utils.Truss.java
me.alexrs.cervantes.ui.activity.BaseActivity.java
me.alexrs.cervantes.ui.activity.CervantesActivity.java
me.alexrs.cervantes.ui.components.CapitalizedTextView.java
me.alexrs.cervantes.ui.controller.activity.AbsActivityController.java
me.alexrs.cervantes.ui.controller.activity.ActivityController.java
me.alexrs.cervantes.ui.controller.activity.CervantesActivityController.java
me.alexrs.cervantes.ui.controller.fragment.AbsFragmentController.java
me.alexrs.cervantes.ui.controller.fragment.CervantesFragmentController.java
me.alexrs.cervantes.ui.controller.fragment.FragmentController.java
me.alexrs.cervantes.ui.fragment.BaseFragment.java
me.alexrs.cervantes.ui.fragment.CervantesFragment.java
me.alexrs.cervantes.ui.presenter.AbsPresenter.java
me.alexrs.cervantes.ui.presenter.BasePresenter.java
me.alexrs.cervantes.ui.presenter.CervantesFragmentPresenter.java
me.alexrs.cervantes.ui.presenter.EmptyViewPresenter.java
me.alexrs.cervantes.ui.recyclerview.factory.Factory.java
me.alexrs.cervantes.ui.recyclerview.renderers.ItemMeaning.java
me.alexrs.cervantes.ui.recyclerview.renderers.ItemMultipleWords.java
me.alexrs.cervantes.ui.recyclerview.renderers.ItemSearchHeader.java
me.alexrs.cervantes.ui.recyclerview.renderers.ItemWordHeader.java
me.alexrs.cervantes.ui.recyclerview.viewholder.MeaningViewHolder.java
me.alexrs.cervantes.ui.recyclerview.viewholder.MultipleWordsViewHolder.java
me.alexrs.cervantes.ui.recyclerview.viewholder.SearchHeaderViewHolder.java
me.alexrs.cervantes.ui.recyclerview.viewholder.WordHeadersViewHolder.java
me.alexrs.recyclerviewrenderers.adapter.RendererAdapter.java
me.alexrs.recyclerviewrenderers.builder.RendererBuilder.java
me.alexrs.recyclerviewrenderers.interfaces.Builder.java
me.alexrs.recyclerviewrenderers.interfaces.Renderable.java
me.alexrs.recyclerviewrenderers.interfaces.RendererFactory.java
me.alexrs.recyclerviewrenderers.renderer.Renderer.java
me.alexrs.recyclerviewrenderers.viewholder.RenderViewHolder.java