2013-05-09 6 views
0

Я успешно ввел объект в свою деятельность, которая принимает контекст текущей деятельности в конструкторе. Затем я пытаюсь ввести объект, который опирается на объект, который я просто ввел. Как я могу убедиться, что я вставляю инъецируемый экземпляр во второй введенный объект?инъекционные объекты, которые полагаются друг на друга - roboguice

Моя активность

class MainActivity extends RoboActivity{ 

    @Inject DataSource dataSource; 
    @Inject Customer customer; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.home_layout); 

    } 
} 

Первый впрыскивается объект

class DataSource{ 

    private Context context; 

    @Inject 
    public DataSource(Context context){ 
     this.context = context; 
    } 
} 

Этот объект зависит от ранее введенного объекта

class Customer{ 

    private DataSource datasource; 

    @Inject 
    public Customer(DataSource datasource){ 
     this.datasource = datasource; 
    } 
} 

ответ

0

Вы должны аннотировать класс DataSource как @ContextSingleton. Затем RoboGuice вводит тот же экземпляр в область контекста.