/*
- * Copyright (c) 2015 Cisco Systems, Inc. and others. All rights reserved.
+ * Copyright (c) 2015, 2016 Cisco Systems, Inc. and others. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
private <K, C extends StmtContext<?,?,?>, N extends StatementNamespace<K, ?, ?>> AbstractPrerequisite<C> requiresCtxImpl(final StmtContext<?, ?, ?> context, final Class<N> namespace, final K key,final ModelProcessingPhase phase) {
checkNotRegistered();
try {
- AddedToNamespace<C> addedToNs = new AddedToNamespace<C>(phase);
+ AddedToNamespace<C> addedToNs = new AddedToNamespace<>(phase);
addReq(addedToNs);
contextImpl(context).onNamespaceItemAddedAction((Class) namespace,key,addedToNs);
return addedToNs;
private <C extends StmtContext<?, ?, ?>> AbstractPrerequisite<C> requiresCtxImpl(final C context, final ModelProcessingPhase phase) {
Preconditions.checkState(action == null, "Action was already registered.");
try {
- PhaseFinished<C> phaseFin = new PhaseFinished<C>();
+ PhaseFinished<C> phaseFin = new PhaseFinished<>();
addReq(phaseFin);
contextImpl(context).addPhaseCompletedListener(phase,phaseFin);
return phaseFin;
private <K, C extends StmtContext.Mutable<?, ?, ?> , N extends IdentifierNamespace<K, ? extends StmtContext<?, ?, ?>>> AbstractPrerequisite<C> mutatesCtxImpl(
final StmtContext<?, ?, ?> context, final Class<N> namespace, final K key, final ModelProcessingPhase phase) {
try {
- PhaseModificationInNamespace<C> mod = new PhaseModificationInNamespace<C>(phase);
+ PhaseModificationInNamespace<C> mod = new PhaseModificationInNamespace<>(phase);
addReq(mod);
addMutation(mod);
contextImpl(context).onNamespaceItemAddedAction((Class) namespace,key,mod);
@Override
public <C extends Mutable<?, ?, ?>, CT extends C> Prerequisite<C> mutatesCtx(final CT context, final ModelProcessingPhase phase) {
try {
- return addMutation(new PhaseMutation<C>(contextImpl(context),phase));
+ return addMutation(new PhaseMutation<>(contextImpl(context), phase));
} catch (InferenceException e) {
throw shouldNotHappenProbablyBug(e);
}
@Override
public <D extends DeclaredStatement<?>> Prerequisite<D> requiresDeclared(final StmtContext<?, ? extends D, ?> context) {
- return requiresCtxImpl(context, FULL_DECLARATION).transform(StmtContextUtils.<D>buildDeclared());
+ return requiresCtxImpl(context, FULL_DECLARATION).transform(StmtContextUtils.buildDeclared());
}
@Override
public <K, D extends DeclaredStatement<?>, N extends StatementNamespace<K, ? extends D, ?>> Prerequisite<D> requiresDeclared(
final StmtContext<?, ?, ?> context, final Class<N> namespace, final K key) {
final AbstractPrerequisite<StmtContext<?,D,?>> rawContext = requiresCtxImpl(context, namespace, key, FULL_DECLARATION);
- return rawContext.transform(StmtContextUtils.<D>buildDeclared());
+ return rawContext.transform(StmtContextUtils.buildDeclared());
}
@Override
public <E extends EffectiveStatement<?, ?>> Prerequisite<E> requiresEffective(final StmtContext<?, ?, ? extends E> stmt) {
- return requiresCtxImpl(stmt, EFFECTIVE_MODEL).transform(StmtContextUtils.<E>buildEffective());
+ return requiresCtxImpl(stmt, EFFECTIVE_MODEL).transform(StmtContextUtils.buildEffective());
}
@Override
public <K, E extends EffectiveStatement<?, ?>, N extends StatementNamespace<K, ?, ? extends E>> Prerequisite<E> requiresEffective(
final StmtContext<?, ?, ?> context, final Class<N> namespace, final K key) {
final AbstractPrerequisite<StmtContext<?,?,E>> rawContext = requiresCtxImpl(context, namespace, key, EFFECTIVE_MODEL);
- return rawContext.transform(StmtContextUtils.<E>buildEffective());
+ return rawContext.transform(StmtContextUtils.buildEffective());
}
public <N extends IdentifierNamespace<?, ?>> Prerequisite<Mutable<?, ?, ?>> mutatesNs(final Mutable<?, ?, ?> context,
final Class<N> namespace) {
try {
- return addMutation(new NamespaceMutation<N>(contextImpl(context),namespace));
+ return addMutation(new NamespaceMutation<>(contextImpl(context), namespace));
} catch (SourceException e) {
throw shouldNotHappenProbablyBug(e);
}