Merge changes I52e0dd0d,I6dbf3316,Iafae27bc,Ibbb1250b,Icdb56d14,I7ede1482,Ib335fd1d...
[controller.git] / opendaylight / md-sal / sal-binding-api / src / main / java / org / opendaylight / controller / sal / binding / api / BindingAwareService.java
1 /*
2  * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8 package org.opendaylight.controller.sal.binding.api;
9
10 /**
11  * Session-specific instance of the broker functionality.
12  *
13  * <p>
14  * BindingAwareService is marker interface for infrastructure services provided
15  * by the SAL. These services are session-specific, each
16  * {@link BindingAwareConsumer} and {@link BindingAwareProvider} usually has own
17  * instance of the service with it's own context.
18  *
19  * <p>
20  * The consumer's (or provider's) instance of specific service could be obtained
21  * by invoking {@link org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ConsumerContext#getSALService(Class)} method on session
22  * assigned to the consumer.
23  *
24  * <p>
25  * {@link org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ConsumerContext} and {@link BindingAwareProvider} may seem
26  * similar, but provider provides YANG model-based functionality and
27  * {@link BindingAwareProvider} exposes the necessary supporting functionality
28  * to implement specific functionality of YANG and to reuse it in the
29  * development of {@link BindingAwareConsumer}s and {@link BindingAwareProvider}s.
30  */
31 public interface BindingAwareService {
32
33 }