Package com.asakusafw.trace.model

Examples of com.asakusafw.trace.model.Tracepoint


            FlowElement element,
            Map<Tracepoint, TraceSetting> settings,
            String className, String methodName) {
        boolean modified = false;
        for (FlowElementInput port : element.getInputPorts()) {
            Tracepoint point = new Tracepoint(className, methodName, PortKind.INPUT, port.getDescription().getName());
            if (settings.containsKey(point)) {
                edit(port, settings.get(point));
                rest.remove(point);
                modified = true;
            }
        }
        for (FlowElementOutput port : element.getOutputPorts()) {
            Tracepoint point = new Tracepoint(className, methodName, PortKind.OUTPUT, port.getDescription().getName());
            if (settings.containsKey(point)) {
                edit(port, settings.get(point));
                rest.remove(point);
                modified = true;
            }
View Full Code Here


    private Expression createTraceContext(Context context) {
        TraceSettingAttribute attribute = context.getOperatorDescription().getAttribute(TraceSettingAttribute.class);
        if (attribute == null) {
            throw new IllegalStateException();
        }
        Tracepoint tracepoint = attribute.getSetting().getTracepoint();
        ModelFactory f = Models.getModelFactory();
        List<Expression> arguments = new ArrayList<Expression>();

        // serial number
        arguments.add(Models.toLiteral(f, attribute.getSerialNumber()));

        // operator class
        arguments.add(Models.toLiteral(f, tracepoint.getOperatorClassName()));

        // operator method
        arguments.add(Models.toLiteral(f, tracepoint.getOperatorMethodName()));

        // port direction
        arguments.add(new TypeBuilder(f, context.convert(PortDirection.class))
                .field(tracepoint.getPortKind() == PortKind.INPUT
                        ? PortDirection.INPUT.name() : PortDirection.OUTPUT.name())
                .toExpression());

        // port name
        arguments.add(Models.toLiteral(f, tracepoint.getPortName()));

        // data type
        arguments.add(f.newClassLiteral(context.convert(context.getInputPort(0).getDataType())));

        // attributes
View Full Code Here

        assert methodName != null;
        assert portKind != null;
        assert portName != null;
        assert attributes != null;
        return new TraceSetting(
                new Tracepoint(operatorClass.getName(), methodName, portKind, portName),
                Mode.STRICT, attributes);
    }
View Full Code Here

    private Collection<? extends TraceSetting> normalize(
            Collection<? extends TraceSetting> settings) throws RewriteException {
        ClassLoader loader = getEnvironment().getServiceClassLoader();
        List<TraceSetting> results = new ArrayList<TraceSetting>();
        for (TraceSetting setting : settings) {
            Tracepoint orig = setting.getTracepoint();
            Class<?> operatorClass;
            try {
                operatorClass = loader.loadClass(orig.getOperatorClassName());
            } catch (ClassNotFoundException e) {
                throw new RewriteException(MessageFormat.format(
                        Messages.getString("TracepointWeaveRewriter.errorLoadOperatorClass"), //$NON-NLS-1$
                        orig.getOperatorClassName()), e);
            }
            Tracepoint normalized = createTracepoint(
                    operatorClass, orig.getOperatorMethodName(),
                    orig.getPortKind(), orig.getPortName());
            results.add(new TraceSetting(normalized, setting.getMode(), setting.getAttributes()));
        }
        return results;
View Full Code Here

                        factoryMethod.getName(),
                        portName,
                        list));
            }
        }
        return new Tracepoint(factory.value().getName(), factoryMethod.getName(), portKind, portName);
    }
View Full Code Here

        assertThat(weave, is(pred(gen.get("out"))));
    }

    private TraceSetting in_trace(Class<?> operatorClass, String operatorMethodName, String portName, Mode mode) {
        return new TraceSetting(
                new Tracepoint(operatorClass.getName(), operatorMethodName, PortKind.INPUT, portName),
                mode, attr());
    }
View Full Code Here

                mode, attr());
    }

    private TraceSetting out_trace(Class<?> operatorClass, String operatorMethodName, String portName, Mode mode) {
        return new TraceSetting(
                new Tracepoint(operatorClass.getName(), operatorMethodName, PortKind.OUTPUT, portName),
                mode, attr());
    }
View Full Code Here

     */
    @Test
    public void simple_in() throws Exception {
        trace(new TraceSetting[] {
                new TraceSetting(
                        new Tracepoint(SimpleOperator.class.getName(), "line", PortKind.INPUT, "model"),
                        mode, attr()),
        });
        TestInput<Model> in = tester.input(Model.class, "in");
        prepare(in);

View Full Code Here

     */
    @Test
    public void simple_out() throws Exception {
        trace(new TraceSetting[] {
                new TraceSetting(
                        new Tracepoint(SimpleOperator.class.getName(), "line", PortKind.OUTPUT, "out"),
                        mode, attr()),
        });
        TestInput<Model> in = tester.input(Model.class, "in");
        prepare(in);

View Full Code Here

     */
    @Test
    public void simple_both() throws Exception {
        trace(new TraceSetting[] {
                new TraceSetting(
                        new Tracepoint(SimpleOperator.class.getName(), "line", PortKind.INPUT, "model"),
                        mode, attr()),
                new TraceSetting(
                        new Tracepoint(SimpleOperator.class.getName(), "line", PortKind.OUTPUT, "out"),
                        mode, attr()),
        });
        TestInput<Model> in = tester.input(Model.class, "in");
        prepare(in);

View Full Code Here

TOP

Related Classes of com.asakusafw.trace.model.Tracepoint

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.