61714b1b9b7e7cfc6abdd63f3158e3758bb2fe0b
[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 by invoking
21  * {@link org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ConsumerContext#getSALService(Class)}
22  * method on session assigned to the consumer.
23  *
24  * <p>
25  * {@link org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ConsumerContext}
26  * and {@link BindingAwareProvider} may seem 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 }