*/
package org.opendaylight.controller.clustering.it.provider;
+import static java.util.Objects.requireNonNull;
+
import com.google.common.collect.ImmutableSet;
import com.google.common.util.concurrent.FutureCallback;
import com.google.common.util.concurrent.ListenableFuture;
private static final Logger LOG = LoggerFactory.getLogger(PeopleProvider.class);
private final Set<ObjectRegistration<?>> regs = new HashSet<>();
- private DataBroker dataProvider;
- private RpcProviderService rpcProviderService;
- private CarPurchaseService rpcImplementation;
+ private final DataBroker dataProvider;
+ private final RpcProviderService rpcProviderService;
+ private final CarPurchaseService rpcImplementation;
- public void setDataProvider(final DataBroker salDataProvider) {
- this.dataProvider = salDataProvider;
- }
+ public PeopleProvider(final DataBroker dataProvider, final RpcProviderService rpcProviderService,
+ final CarPurchaseService rpcImplementation) {
+ this.dataProvider = requireNonNull(dataProvider);
+ this.rpcProviderService = requireNonNull(rpcProviderService);
+ this.rpcImplementation = requireNonNull(rpcImplementation);
- public void setRpcImplementation(final CarPurchaseService rpcImplementation) {
- this.rpcImplementation = rpcImplementation;
+ // Add global registration
+ regs.add(rpcProviderService.registerRpcImplementation(CarPurchaseService.class, rpcImplementation));
}
@Override
.child(Person.class, person.key()).build();
// Place entry in data store tree
WriteTransaction tx = dataProvider.newWriteOnlyTransaction();
- tx.put(LogicalDatastoreType.CONFIGURATION, personId, person, true);
+ tx.put(LogicalDatastoreType.CONFIGURATION, personId, person);
tx.commit().addCallback(new FutureCallback<CommitInfo>() {
@Override