summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/invocation/impl/DOMInvokerImpl.java
blob: 1bda350a7a3b6d60579bbc6fa0bf6c02bb9cbc42 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package org.apache.tuscany.sca.core.invocation.impl;

import org.apache.tuscany.sca.runtime.DOMInvoker;
import org.oasisopen.sca.ServiceRuntimeException;
import org.w3c.dom.Node;

public class DOMInvokerImpl implements DOMInvoker {

    AsyncJDKInvocationHandler handler;
    
    public DOMInvokerImpl(AsyncJDKInvocationHandler handler) {
        this.handler = handler;
    }

    @Override
    public Node invoke(String opName, Node arg) {
        try {
            return (Node)handler.invoke(opName, new Object[]{arg}, handler.source, null);
        } catch (Throwable e) {
            throw new ServiceRuntimeException(e);
        }
    }

}