Example usage for org.apache.commons.lang3.mutable MutableObject MutableObject

List of usage examples for org.apache.commons.lang3.mutable MutableObject MutableObject

Introduction

In this page you can find the example usage for org.apache.commons.lang3.mutable MutableObject MutableObject.

Prototype

public MutableObject(final T value) 

Source Link

Document

Constructs a new MutableObject with the specified value.

Usage

From source file:com.examples.with.different.packagename.ClassHierarchyIncludingInterfaces.java

public static Iterable<Class<?>> hierarchy(final Class<?> type, final Interfaces interfacesBehavior) {
    final Iterable<Class<?>> classes = new Iterable<Class<?>>() {

        @Override//  w w w. j av a 2 s  .c  om
        public Iterator<Class<?>> iterator() {
            final MutableObject<Class<?>> next = new MutableObject<Class<?>>(type);
            return new Iterator<Class<?>>() {

                @Override
                public boolean hasNext() {
                    return next.getValue() != null;
                }

                @Override
                public Class<?> next() {
                    final Class<?> result = next.getValue();
                    next.setValue(result.getSuperclass());
                    return result;
                }

                @Override
                public void remove() {
                    throw new UnsupportedOperationException();
                }

            };
        }

    };
    if (interfacesBehavior != Interfaces.INCLUDE) {
        return classes;
    }
    return new Iterable<Class<?>>() {

        @Override
        public Iterator<Class<?>> iterator() {
            final Set<Class<?>> seenInterfaces = new HashSet<Class<?>>();
            final Iterator<Class<?>> wrapped = classes.iterator();

            return new Iterator<Class<?>>() {
                Iterator<Class<?>> interfaces = Collections.<Class<?>>emptySet().iterator();

                @Override
                public boolean hasNext() {
                    return interfaces.hasNext() || wrapped.hasNext();
                }

                @Override
                public Class<?> next() {
                    if (interfaces.hasNext()) {
                        final Class<?> nextInterface = interfaces.next();
                        seenInterfaces.add(nextInterface);
                        return nextInterface;
                    }
                    final Class<?> nextSuperclass = wrapped.next();
                    final Set<Class<?>> currentInterfaces = new LinkedHashSet<Class<?>>();
                    walkInterfaces(currentInterfaces, nextSuperclass);
                    interfaces = currentInterfaces.iterator();
                    return nextSuperclass;
                }

                private void walkInterfaces(final Set<Class<?>> addTo, final Class<?> c) {
                    for (final Class<?> iface : c.getInterfaces()) {
                        if (!seenInterfaces.contains(iface)) {
                            addTo.add(iface);
                        }
                        walkInterfaces(addTo, iface);
                    }
                }

                @Override
                public void remove() {
                    throw new UnsupportedOperationException();
                }

            };
        }
    };
}

From source file:io.restassured.module.mockmvc.ResultHandlerTest.java

@Test
public void supports_using_result_handlers_using_the_response_dsl() {
    MutableObject<Boolean> mutableObject = new MutableObject<Boolean>(false);

    RestAssuredMockMvc.given().header(new Header("headerName", "John Doe")).when().get("/header").then()
            .apply(print(), customResultHandler(mutableObject)).statusCode(200)
            .body("headerName", equalTo("John Doe"));

    assertThat(mutableObject.getValue(), is(true));
}

From source file:edu.uci.ics.hyracks.algebricks.rewriter.rules.AbstractExtractExprRule.java

protected LogicalVariable extractExprIntoAssignOpRef(ILogicalExpression gExpr, Mutable<ILogicalOperator> opRef2,
        IOptimizationContext context) throws AlgebricksException {
    LogicalVariable v = context.newVar();
    AssignOperator a = new AssignOperator(v, new MutableObject<ILogicalExpression>(gExpr));
    a.getInputs().add(new MutableObject<ILogicalOperator>(opRef2.getValue()));
    opRef2.setValue(a);/*from   w w w  . j  av a 2 s.  co  m*/
    if (gExpr.getExpressionTag() == LogicalExpressionTag.CONSTANT) {
        context.addNotToBeInlinedVar(v);
    }
    context.computeAndSetTypeEnvironmentForOperator(a);
    return v;
}

From source file:com.jayway.restassured.module.mockmvc.ResultHandlerTest.java

@Test
public void supports_using_result_handlers_using_the_dsl() {
    MutableObject<Boolean> mutableObject = new MutableObject<Boolean>(false);

    given().resultHandlers(print(), customResultHandler(mutableObject))
            .header(new Header("headerName", "John Doe")).when().get("/header").then().statusCode(200)
            .body("headerName", equalTo("John Doe"));

    assertThat(mutableObject.getValue(), is(true));
}

From source file:edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.DieOperator.java

public DieOperator(ILogicalExpression maxObjectsExpr) {
    this.afterObjects = new MutableObject<ILogicalExpression>(maxObjectsExpr);
}

From source file:com.romeikat.datamessie.core.base.util.publishedDates.loading.parallel.CountPublishedDateParallelLoadingStrategy.java

@Override
protected MutableObject<Long> initializeEmptyResult() {
    return new MutableObject<Long>(0l);
}

From source file:edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.LimitOperator.java

public LimitOperator(ILogicalExpression maxObjectsExpr, ILogicalExpression offsetExpr, boolean topmost) {
    this.maxObjects = new MutableObject<ILogicalExpression>(maxObjectsExpr);
    this.offset = new MutableObject<ILogicalExpression>(offsetExpr);
    this.topmost = topmost;
}

From source file:io.restassured.module.mockmvc.ResultHandlerTest.java

@Test
public void merges_result_handlers_using_the_dsl() {
    MutableObject<Boolean> mutableObject1 = new MutableObject<Boolean>(false);
    MutableObject<Boolean> mutableObject2 = new MutableObject<Boolean>(false);

    RestAssuredMockMvc.given().header(new Header("headerName", "John Doe")).when().get("/header").then()
            .apply(customResultHandler(mutableObject1)).apply(customResultHandler(mutableObject2))
            .statusCode(200).body("headerName", equalTo("John Doe"));

    assertThat(mutableObject1.getValue(), is(true));
    assertThat(mutableObject2.getValue(), is(true));
}

From source file:com.jayway.restassured.module.mockmvc.ResultHandlerTest.java

@Test
public void supports_using_result_handlers_using_the_response_dsl() {
    MutableObject<Boolean> mutableObject = new MutableObject<Boolean>(false);

    given().header(new Header("headerName", "John Doe")).when().get("/header").then()
            .apply(print(), customResultHandler(mutableObject)).statusCode(200)
            .body("headerName", equalTo("John Doe"));

    assertThat(mutableObject.getValue(), is(true));
}

From source file:edu.uci.ics.asterix.dataflow.data.common.AqlMergeAggregationExpressionFactory.java

@Override
public ILogicalExpression createMergeAggregation(LogicalVariable originalProducedVar, ILogicalExpression expr,
        IOptimizationContext env) throws AlgebricksException {
    AggregateFunctionCallExpression agg = (AggregateFunctionCallExpression) expr;
    FunctionIdentifier fid = agg.getFunctionIdentifier();
    VariableReferenceExpression tempVarExpr = new VariableReferenceExpression(originalProducedVar);
    List<Mutable<ILogicalExpression>> arguments = new ArrayList<Mutable<ILogicalExpression>>();
    Mutable<ILogicalExpression> mutableExpression = new MutableObject<ILogicalExpression>(tempVarExpr);
    arguments.add(mutableExpression);/*from   w w w. ja  va 2 s .  c  o m*/
    /**
     * For global aggregate, the merge function is ALWAYS the same as the original aggregate function.
     */
    FunctionIdentifier mergeFid = AsterixBuiltinFunctions.isGlobalAggregateFunction(fid) ? fid
            : AsterixBuiltinFunctions.getIntermediateAggregateFunction(fid);
    if (mergeFid == null) {
        /**
         * In this case, no merge function (unimplemented) for the local-side aggregate function
         */
        return null;
    }
    ILogicalExpression aggExpr = AsterixBuiltinFunctions.makeAggregateFunctionExpression(mergeFid, arguments);
    return aggExpr;
}