blob: 6836a9502e88868ab20960242236d1e7186816e0 [file] [log] [blame]
jccf988bf52015-05-05 19:02:50 +08001package org.onosproject.flowrule.impl;
2
3import static org.slf4j.LoggerFactory.getLogger;
4
5import org.apache.felix.scr.annotations.Activate;
6import org.apache.felix.scr.annotations.Component;
7import org.apache.felix.scr.annotations.Deactivate;
8import org.apache.felix.scr.annotations.Reference;
9import org.apache.felix.scr.annotations.ReferenceCardinality;
10import org.apache.felix.scr.annotations.Service;
11import org.onosproject.core.ApplicationId;
12import org.onosproject.core.CoreService;
13import org.onosproject.flowrule.AppTestService;
14import org.onosproject.flowrule.dispatch.FlowRuleTest;
15import org.onosproject.net.device.DeviceService;
16import org.onosproject.net.flow.FlowRuleService;
17import org.slf4j.Logger;
18
19/**
20 * Test for a application.
21 */
22@Component(immediate = true)
23@Service
24public class AppTestManager implements AppTestService {
25
26 private static final String APP_TEST = "org.onosproject.apptest";
27 private final Logger log = getLogger(getClass());
28
29 @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
30 protected CoreService coreService;
31 @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
32 protected FlowRuleService flowRuleService;
33 @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
34 protected DeviceService deviceService;
35 private ApplicationId appId;
36 FlowRuleTest flowRule;
37
38 @Activate
39 protected void activate() {
40 log.info("APP-TEST started");
41 appId = coreService.registerApplication(APP_TEST);
42 flowRule = new FlowRuleTest(flowRuleService, deviceService, appId);
43 flowRule.applyFlowRules();
44 }
45
46 @Deactivate
47 protected void deactivate() {
48 flowRule.removeFlowRules();
49 log.info("APP-TEST Stopped");
50 }
51}