Initial opendaylight infrastructure commit!!
[controller.git] / opendaylight / sal / yang-prototype / sal / sal-core-api / src / main / java / org / opendaylight / controller / sal / core / api / BrokerService.java
1 /*\r
2  * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
3  *\r
4  * This program and the accompanying materials are made available under the\r
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
6  * and is available at http://www.eclipse.org/legal/epl-v10.html\r
7  */\r
8 package org.opendaylight.controller.sal.core.api;\r
9 \r
10 import org.opendaylight.controller.sal.core.api.Broker.ConsumerSession;\r
11 \r
12 /**\r
13  * \r
14  * Session-specific instance of the broker functionality.\r
15  * \r
16  * <p>\r
17  * BrokerService is marker interface for infrastructure services provided by the\r
18  * SAL. These services are session-specific, each {@link Provider} and\r
19  * {@link Consumer} usually has own instance of the service with it's own\r
20  * context.\r
21  * \r
22  * <p>\r
23  * The consumer's (or provider's) instance of specific service could be obtained\r
24  * by invoking {@link ConsumerSession#getService(Class)} method on session\r
25  * assigned to the consumer.\r
26  * \r
27  * <p>\r
28  * {@link BrokerService} and {@link Provider} may seem similar, but provider\r
29  * provides YANG model-based functionality and {@link BrokerService} exposes the\r
30  * necessary supporting functionality to implement specific functionality of\r
31  * YANG and to reuse it in the development of {@link Consumer}s and\r
32  * {@link Provider}s.\r
33  * \r
34  * \r
35  */\r
36 public interface BrokerService {\r
37 \r
38     void closeSession();\r
39 }\r