Package org.apache.hivemind.service

Examples of org.apache.hivemind.service.MethodIterator


        ClassFab classFab,
        Class serviceInterface,
        String serviceId,
        String jndiName)
    {
        MethodIterator mi = new MethodIterator(serviceInterface);

        while (mi.hasNext())
        {
            addServiceMethod(classFab, mi.next());
        }

        if (!mi.getToString())
            addToStringMethod(classFab, serviceInterface, serviceId, jndiName);
    }
View Full Code Here


    }

    private void addMethods(ClassFab cf, String serviceId, Class serviceInterface,
            String propertyName, Object targetService)
    {
        MethodIterator mi = new MethodIterator(serviceInterface);

        while (mi.hasNext())
        {
            MethodSignature sig = mi.next();

            String body = "return ($r) _targetServiceProperty()." + sig.getName() + "($$);";

            cf.addMethod(Modifier.PUBLIC, sig, body);
        }

        if (!mi.getToString())
            ClassFabUtils.addToStringMethod(cf, ImplMessages.servicePropertyToString(
                    serviceId,
                    serviceInterface,
                    propertyName,
                    targetService));
View Full Code Here

    protected Set getInterceptedMethods(InterceptorStack stack, List parameters)
    {
        Set methods = new HashSet();
        MethodMatcher matcher = buildMethodMatcher(parameters);

        MethodIterator mi = new MethodIterator(stack.getServiceInterface());

        while (mi.hasNext())
        {
            MethodSignature sig = mi.next();

            if (includeMethod(matcher, sig))
                methods.add(sig);
        }
        return methods;
View Full Code Here

     */
    public void addServiceMethods(String indirection)
    {
        BodyBuilder builder = new BodyBuilder();

        MethodIterator mi = new MethodIterator(_serviceInterface);
        while (mi.hasNext())
        {
            MethodSignature m = mi.next();
            if( !_classFab.containsMethod( m ) )
            {
                builder.clear();
                builder.begin();
                builder.add("return ($r) ");
                builder.add(indirection);
                builder.add(".");
                builder.add(m.getName());
                builder.addln("($$);");
                builder.end();
                _classFab.addMethod(Modifier.PUBLIC, m, builder.toString());
            }
        }

        if (!mi.getToString())
            ClassFabUtils.addToStringMethod(_classFab, "<" + _type + " for "
                    + _point.getExtensionPointId() + "(" + _serviceInterface.getName() + ")>");
    }
View Full Code Here

    protected void addServiceMethods(InterceptorStack stack, ClassFab fab, List parameters)
    {
        MethodMatcher matcher = buildMethodMatcher(parameters);

        MethodIterator mi = new MethodIterator(stack.getServiceInterface());

        while (mi.hasNext())
        {
            MethodSignature sig = mi.next();

            if (includeMethod(matcher, sig))
                addServiceMethodImplementation(fab, sig);
            else
                addPassThruMethodImplementation(fab, sig);
        }

        if (!mi.getToString())
            addToStringMethod(stack, fab);
    }
View Full Code Here

    protected Set getInterceptedMethods(InterceptorStack stack, List parameters)
    {
        Set methods = new HashSet();
        MethodMatcher matcher = buildMethodMatcher(parameters);

        MethodIterator mi = new MethodIterator(stack.getServiceInterface());

        while (mi.hasNext())
        {
            MethodSignature sig = mi.next();

            if (includeMethod(matcher, sig))
                methods.add(sig);
        }
        return methods;
View Full Code Here

    protected void addServiceMethods(InterceptorStack stack, ClassFab fab, List parameters)
    {
        MethodMatcher matcher = buildMethodMatcher(parameters);

        MethodIterator mi = new MethodIterator(stack.getServiceInterface());

        while (mi.hasNext())
        {
            MethodSignature sig = mi.next();

            if (includeMethod(matcher, sig))
                addServiceMethodImplementation(fab, sig);
            else
                addPassThruMethodImplementation(fab, sig);
        }

        if (!mi.getToString())
            addToStringMethod(stack, fab);
    }
View Full Code Here

        public String toString();
    }

    public void testNormal()
    {
        MethodIterator mi = new MethodIterator(Runnable.class);

        assertTrue(mi.hasNext());

        MethodSignature actual = mi.next();

        assertEquals(new MethodSignature(void.class, "run", null, null), actual);

        assertFalse(mi.hasNext());

        assertNull(mi.next());

        assertEquals(false, mi.getToString());
    }
View Full Code Here

        assertEquals(false, mi.getToString());
    }

    public void testInherited()
    {
        MethodIterator mi = new MethodIterator(Play.class);

        assertTrue(mi.hasNext());

        // Problematic because the order in which they are returned is
        // JDK specific and not defined!

        MethodSignature actual = mi.next();

        assertEquals(new MethodSignature(void.class, "jump", null, null), actual);

        assertTrue(mi.hasNext());

        actual = mi.next();

        assertEquals(new MethodSignature(void.class, "run", null, null), actual);

        assertFalse(mi.hasNext());

        assertNull(mi.next());

        assertEquals(false, mi.getToString());
    }
View Full Code Here

        assertEquals(false, mi.getToString());
    }

    public void testFiltersFuplication()
    {
        MethodIterator mi = new MethodIterator(Runnable3.class);

        MethodSignature actual = mi.next();

        assertEquals(new MethodSignature(void.class, "run", null, null), actual);

        assertNull(mi.next());

        assertEquals(false, mi.getToString());
    }
View Full Code Here

TOP

Related Classes of org.apache.hivemind.service.MethodIterator

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.