From: Michael Vorburger Date: Mon, 2 May 2016 16:55:58 +0000 (+0200) Subject: Fixed Eclipse specific compilation error related to generics X-Git-Tag: release/boron~156 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=commitdiff_plain;h=c2eae5d09ddef70e4963ab00b0f2773eec8d7ac0;p=yangtools.git Fixed Eclipse specific compilation error related to generics until https://bugs.eclipse.org/bugs/show_bug.cgi?id=492838 is resolved Change-Id: I910996a06341e44b2a7bc588bfa17264be0f0b08 Signed-off-by: Michael Vorburger --- diff --git a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/spi/meta/AbstractDeclaredStatement.java b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/spi/meta/AbstractDeclaredStatement.java index 3be9aec1c6..eaeaaea5d6 100644 --- a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/spi/meta/AbstractDeclaredStatement.java +++ b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/spi/meta/AbstractDeclaredStatement.java @@ -5,8 +5,10 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ + package org.opendaylight.yangtools.yang.parser.spi.meta; +import com.google.common.base.Function; import com.google.common.base.Predicates; import com.google.common.collect.Collections2; import com.google.common.collect.ImmutableList; @@ -15,6 +17,7 @@ import java.util.Collection; import org.opendaylight.yangtools.yang.model.api.meta.DeclaredStatement; import org.opendaylight.yangtools.yang.model.api.meta.StatementDefinition; import org.opendaylight.yangtools.yang.model.api.meta.StatementSource; +import org.opendaylight.yangtools.yang.parser.stmt.reactor.StatementContextBase; /** * Utility abstract base class for implementing declared statements. @@ -40,8 +43,9 @@ public abstract class AbstractDeclaredStatement implements DeclaredStatement< * Perform an explicit copy, because Collections2.transform() is lazily transformed and retains pointer to * original collection, which may contains references to mutable context. */ - substatements = ImmutableList.copyOf(Collections2.transform(context.declaredSubstatements(), - StmtContextUtils.buildDeclared())); + Collection> declaredSubstatements = context.declaredSubstatements(); + Function, ?>, DeclaredStatement> buildDeclared = StmtContextUtils.buildDeclared(); + substatements = ImmutableList.copyOf(Collections2.transform(declaredSubstatements, buildDeclared)); } protected final > S firstDeclared(final Class type) { diff --git a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/effective/EffectiveStatementBase.java b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/effective/EffectiveStatementBase.java index 7151db18f4..8b94095781 100644 --- a/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/effective/EffectiveStatementBase.java +++ b/yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/effective/EffectiveStatementBase.java @@ -7,6 +7,7 @@ */ package org.opendaylight.yangtools.yang.parser.stmt.rfc6020.effective; +import com.google.common.base.Function; import com.google.common.base.Optional; import com.google.common.base.Predicate; import com.google.common.base.Predicates; @@ -91,13 +92,13 @@ public abstract class EffectiveStatementBase> this.unknownSubstatementsToBuild = ImmutableList.of(); } - this.substatements = ImmutableList.copyOf(Collections2.transform(substatementsToBuild, - StmtContextUtils.buildEffective())); + Function>, EffectiveStatement> buildEffective = StmtContextUtils.buildEffective(); + this.substatements = ImmutableList.copyOf(Collections2.transform(substatementsToBuild, buildEffective)); } Collection> getOmittedUnknownSubstatements() { - return Collections2.transform(unknownSubstatementsToBuild, - StmtContextUtils.buildEffective()); + Function>, EffectiveStatement> buildEffective = StmtContextUtils.buildEffective(); + return Collections2.transform(unknownSubstatementsToBuild, buildEffective); } @Override