View Javadoc

1   package cz.cuni.amis.pogamut.base.component.stub.component;
2   
3   import java.util.logging.Logger;
4   
5   import cz.cuni.amis.pogamut.base.component.IComponent;
6   import cz.cuni.amis.pogamut.base.component.bus.IComponentBus;
7   import cz.cuni.amis.pogamut.base.component.controller.ComponentControlHelper;
8   import cz.cuni.amis.pogamut.base.component.controller.ComponentController;
9   import cz.cuni.amis.pogamut.base.component.controller.ComponentDependencyType;
10  import cz.cuni.amis.pogamut.base.utils.logging.IAgentLogger;
11  import cz.cuni.amis.pogamut.base.utils.logging.LogCategory;
12  import cz.cuni.amis.utils.token.IToken;
13  import cz.cuni.amis.utils.token.Token;
14  import cz.cuni.amis.utils.token.Tokens;
15  
16  public class ComponentStub implements IComponent {
17  
18  	private static int num = 0;
19  	
20  	private ComponentController controller;
21  
22  	private Token token;
23  
24  	private LogCategory log;
25  
26  	public ComponentStub(IAgentLogger logger, IComponentBus bus) {
27  		this.token = Tokens.get("ComponentStub" + (++num));
28  		this.log = logger.getCategory(this);
29  		this.controller = new ComponentController(this, new ComponentControlHelper(), bus, log, ComponentDependencyType.STARTS_WITH);
30  	}
31  	
32  	@Override
33  	public IToken getComponentId() {
34  		return token;
35  	}
36  	
37  	public Logger getLog() {
38  		return log;
39  	}
40  	
41  	public ComponentController getController() {
42  		return controller;
43  	}
44  
45  }