Package com.asakusafw.vocabulary.flow.graph

Examples of com.asakusafw.vocabulary.flow.graph.ShuffleKey


            OperatorDescription.Builder builder0 = new OperatorDescription.Builder(Fold.class);
            builder0.declare(FoldFlow.class, FoldFlowImpl.class, "withParameter");
            builder0.declareParameter(Ex1.class);
            builder0.declareParameter(Ex1.class);
            builder0.declareParameter(int.class);
            builder0.addInput("in", in, new ShuffleKey(Arrays.asList(new String[]{"string"}), Arrays.asList(new
                    ShuffleKey.Order[]{})));
            builder0.addOutput("out", in);
            builder0.addParameter("parameter", int.class, parameter);
            builder0.addAttribute(FlowBoundary.SHUFFLE);
            builder0.addAttribute(ObservationCount.DONT_CARE);
View Full Code Here


        }
        if (a.hasError()) {
            return null;
        }

        ShuffleKey masterKey = a.getParameterKey(0);
        if (masterKey == null) {
            a.error("マスタつき更新演算子の引数には@Key注釈によってグループ化項目を指定する必要があります");
        }
        ShuffleKey transactionKey = a.getParameterKey(1);
        if (transactionKey == null) {
            a.error("マスタつき更新演算子の引数には@Key注釈によってグループ化項目を指定する必要があります");
        }
        ExecutableElement selector = null;
        try {
View Full Code Here

        Simple(Source<Ex2> master, Source<Ex1> model) {
            OperatorDescription.Builder builder = new OperatorDescription.Builder(MasterBranch.class);
            builder.declare(MasterBranchFlow.class, MasterBranchFlowImpl.class, "simple");
            builder.declareParameter(Ex2.class);
            builder.declareParameter(Ex1.class);
            builder.addInput("master", Ex2.class, new ShuffleKey(Arrays.asList(new String[]{"string"}), Arrays.asList(
                    new ShuffleKey.Order[]{})));
            builder.addInput("model", Ex1.class, new ShuffleKey(Arrays.asList(new String[]{"string"}), Arrays.asList(new
                    ShuffleKey.Order[]{})));
            builder.addOutput("high", Ex1.class);
            builder.addOutput("low", Ex1.class);
            builder.addOutput("stop", Ex1.class);
            builder.addAttribute(FlowBoundary.SHUFFLE);
View Full Code Here

            OperatorDescription.Builder builder0 = new OperatorDescription.Builder(MasterBranch.class);
            builder0.declare(MasterBranchFlow.class, MasterBranchFlowImpl.class, "withParameter");
            builder0.declareParameter(Ex2.class);
            builder0.declareParameter(Ex1.class);
            builder0.declareParameter(int.class);
            builder0.addInput("master", Ex2.class, new ShuffleKey(Arrays.asList(new String[]{"string"}), Arrays.asList(
                    new ShuffleKey.Order[]{})));
            builder0.addInput("model", Ex1.class, new ShuffleKey(Arrays.asList(new String[]{"string"}), Arrays.asList(
                    new ShuffleKey.Order[]{})));
            builder0.addOutput("high", Ex1.class);
            builder0.addOutput("low", Ex1.class);
            builder0.addOutput("stop", Ex1.class);
            builder0.addParameter("parameter", int.class, parameter);
View Full Code Here

        Selection(Source<Ex2> master, Source<Ex1> model) {
            OperatorDescription.Builder builder1 = new OperatorDescription.Builder(MasterBranch.class);
            builder1.declare(MasterBranchFlow.class, MasterBranchFlowImpl.class, "selection");
            builder1.declareParameter(Ex2.class);
            builder1.declareParameter(Ex1.class);
            builder1.addInput("master", Ex2.class, new ShuffleKey(Arrays.asList(new String[]{"string"}), Arrays.asList(
                    new ShuffleKey.Order[]{})));
            builder1.addInput("model", Ex1.class, new ShuffleKey(Arrays.asList(new String[]{"string"}), Arrays.asList(
                    new ShuffleKey.Order[]{})));
            builder1.addOutput("high", Ex1.class);
            builder1.addOutput("low", Ex1.class);
            builder1.addOutput("stop", Ex1.class);
            builder1.addAttribute(new OperatorHelper("selector", Arrays.asList(new Class<?>[]{List.class, Ex1.class})));
View Full Code Here

            return null;
        }

        List<ShuffleKey> keys = Lists.create();
        for (int i = 0; i < startResults; i++) {
            ShuffleKey key = a.getParameterKey(i);
            if (key == null) {
                a.error(i, "グループ結合演算子の引数には@Key注釈によってグループ化項目を指定する必要があります");
            } else {
                keys.add(key);
            }
        }
        if (keys.isEmpty() == false) {
            ShuffleKey first = keys.get(0);
            for (int i = 1, n = keys.size(); i < n; i++) {
                if (first.getGroupProperties().size() != keys.get(i).getGroupProperties().size()) {
                    a.error(0, "グループ結合演算子の@Key注釈ではグループ化項目の個数を全て一致させる必要があります");
                }
            }
        }
        if (a.hasError()) {
View Full Code Here

            OperatorDescription.Builder builder2 = new OperatorDescription.Builder(MasterBranch.class);
            builder2.declare(MasterBranchFlow.class, MasterBranchFlowImpl.class, "selectionWithParameter0");
            builder2.declareParameter(Ex2.class);
            builder2.declareParameter(Ex1.class);
            builder2.declareParameter(int.class);
            builder2.addInput("master", Ex2.class, new ShuffleKey(Arrays.asList(new String[]{"string"}), Arrays.asList(
                    new ShuffleKey.Order[]{})));
            builder2.addInput("model", Ex1.class, new ShuffleKey(Arrays.asList(new String[]{"string"}), Arrays.asList(
                    new ShuffleKey.Order[]{})));
            builder2.addOutput("high", Ex1.class);
            builder2.addOutput("low", Ex1.class);
            builder2.addOutput("stop", Ex1.class);
            builder2.addParameter("parameter", int.class, parameter);
View Full Code Here

            OperatorDescription.Builder builder3 = new OperatorDescription.Builder(MasterBranch.class);
            builder3.declare(MasterBranchFlow.class, MasterBranchFlowImpl.class, "selectionWithParameter1");
            builder3.declareParameter(Ex2.class);
            builder3.declareParameter(Ex1.class);
            builder3.declareParameter(int.class);
            builder3.addInput("master", Ex2.class, new ShuffleKey(Arrays.asList(new String[]{"string"}), Arrays.asList(
                    new ShuffleKey.Order[]{})));
            builder3.addInput("model", Ex1.class, new ShuffleKey(Arrays.asList(new String[]{"string"}), Arrays.asList(
                    new ShuffleKey.Order[]{})));
            builder3.addOutput("high", Ex1.class);
            builder3.addOutput("low", Ex1.class);
            builder3.addOutput("stop", Ex1.class);
            builder3.addParameter("parameter", int.class, parameter);
View Full Code Here

        FoldAdd(Source<Ex1> in) {
            OperatorDescription.Builder builder = new OperatorDescription.Builder(Fold.class);
            builder.declare(ExOperator.class, ExOperatorImpl.class, "foldAdd");
            builder.declareParameter(Ex1.class);
            builder.declareParameter(Ex1.class);
            builder.addInput("in", in, new ShuffleKey(Arrays.asList(new String[]{"STRING"}), Arrays.asList(new
                    ShuffleKey.Order[]{})));
            builder.addOutput("out", in);
            builder.addAttribute(FlowBoundary.SHUFFLE);
            builder.addAttribute(ObservationCount.DONT_CARE);
            builder.addAttribute(PartialAggregation.DEFAULT);
View Full Code Here

        CogroupAdd(Source<Ex1> list) {
            OperatorDescription.Builder builder5 = new OperatorDescription.Builder(CoGroup.class);
            builder5.declare(ExOperator.class, ExOperatorImpl.class, "cogroupAdd");
            builder5.declareParameter(List.class);
            builder5.declareParameter(Result.class);
            builder5.addInput("list", list, new ShuffleKey(Arrays.asList(new String[]{"STRING"}), Arrays.asList(new
                    ShuffleKey.Order[]{new ShuffleKey.Order("SID", ShuffleKey.Direction.ASC)})));
            builder5.addOutput("result", Ex1.class);
            builder5.addAttribute(FlowBoundary.SHUFFLE);
            builder5.addAttribute(ObservationCount.DONT_CARE);
            builder5.addAttribute(InputBuffer.EXPAND);
View Full Code Here

TOP

Related Classes of com.asakusafw.vocabulary.flow.graph.ShuffleKey

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.