import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
-public abstract class AbstractDOMBrokerTransaction<K, T extends DOMStoreTransaction> implements
+public abstract class AbstractDOMBrokerTransaction<T extends DOMStoreTransaction> implements
AsyncTransaction<YangInstanceIdentifier, NormalizedNode<?, ?>> {
- private Map<K, T> backingTxs;
+ private EnumMap<LogicalDatastoreType, T> backingTxs;
private final Object identifier;
private final Map<LogicalDatastoreType, ? extends DOMStoreTransactionFactory> storeTxFactories;
protected AbstractDOMBrokerTransaction(final Object identifier, Map<LogicalDatastoreType, ? extends DOMStoreTransactionFactory> storeTxFactories) {
this.identifier = Preconditions.checkNotNull(identifier, "Identifier should not be null");
this.storeTxFactories = Preconditions.checkNotNull(storeTxFactories, "Store Transaction Factories should not be null");
- this.backingTxs = new EnumMap(LogicalDatastoreType.class);
+ this.backingTxs = new EnumMap<>(LogicalDatastoreType.class);
}
/**
* @throws IllegalArgumentException
* if no subtransaction is associated with key.
*/
- protected final T getSubtransaction(final K key) {
+ protected final T getSubtransaction(final LogicalDatastoreType key) {
Preconditions.checkNotNull(key, "key must not be null.");
T ret = backingTxs.get(key);
return ret;
}
- protected abstract T createTransaction(final K key);
+ protected abstract T createTransaction(final LogicalDatastoreType key);
/**
* Returns immutable Iterable of all subtransactions.
}
}
- protected DOMStoreTransactionFactory getTxFactory(K type){
+ protected DOMStoreTransactionFactory getTxFactory(LogicalDatastoreType type){
return storeTxFactories.get(type);
}
}