X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=parser%2Fyang-parser-reactor%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fyangtools%2Fyang%2Fparser%2Fstmt%2Freactor%2FAbstractResumedStatement.java;h=1358f284ffe477610b07b80791922d3aa02e7200;hb=0f34ef9c1d749b903a476b84c3c54e5e98225669;hp=17ce23e1509f065f2776773c397a013a062ff8a6;hpb=db65d54257bccbb283d47e023a803daccad1ec1d;p=yangtools.git diff --git a/parser/yang-parser-reactor/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/reactor/AbstractResumedStatement.java b/parser/yang-parser-reactor/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/reactor/AbstractResumedStatement.java index 17ce23e150..1358f284ff 100644 --- a/parser/yang-parser-reactor/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/reactor/AbstractResumedStatement.java +++ b/parser/yang-parser-reactor/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/reactor/AbstractResumedStatement.java @@ -106,27 +106,29 @@ abstract class AbstractResumedStatement, E ext @Override final E createEffective(final StatementFactory factory) { - return createEffective(factory, this); + return createEffective(factory, this, streamDeclared(), streamEffective()); } // Creates EffectiveStatement through full materialization and assumes declared statement presence private @NonNull E createEffective(final StatementFactory factory, - final StatementContextBase ctx) { + final StatementContextBase ctx, final Stream> declared, + final Stream> effective) { // Statement reference count infrastructure makes an assumption that effective statement is only built after // the declared statement is already done. Statements tracked by this class always have a declared view, and // we need to ensure that is built before we touch effective substatements. // // Once the effective substatement stream has been exhausted, reference counting will triggers a sweep, hence // the substatements may be gone by the time the factory attempts to acquire the declared statement. - declared(); + ctx.declared(); - return factory.createEffective(ctx, ctx.streamDeclared(), ctx.streamEffective()); + return factory.createEffective(ctx, declared, effective); } @Override final E createInferredEffective(final StatementFactory factory, - final InferredStatementContext ctx) { - return createEffective(factory, ctx); + final InferredStatementContext ctx, final Stream> declared, + final Stream> effective) { + return createEffective(factory, ctx, declared, effective); } /**