
org.objectweb.dream.dreamannotation.DreamComponent Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of dream-annotation Show documentation
Show all versions of dream-annotation Show documentation
Dream Annotation is an extension of Fraclet Annotation 2.0 to generate
code related to activities managed in Dream Components. It adds the
following annotations : @DreamComponent, @DreamMonolog and @DreamLifeCycle.
This version adds inheritance for the @DreamMonolog annotation.
The newest version!
/**
* Dream
* Copyright (C) 2003-2004 INRIA Rhone-Alpes
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* Contact : [email protected]
*
* Initial developer(s): Pierre Garcia
*/
package org.objectweb.dream.dreamannotation;
import spoon.aval.annotation.structure.AValTarget;
import spoon.reflect.declaration.CtClass;
/**
* This annotation is mandatory. It indicates that the annotated class has to be
* considered as a component. It also allows the user to give a specific
* controller description for the component.
*
The only difference with the fraclet version is
* the addition of the second parameter to know if the component must be
* started in another thread.
*
* @author Pierre Garcia
*/
@AValTarget(CtClass.class)
public @interface DreamComponent {
/**
* Define the type of the Dream component. Available controllers in Dream are :
*
* - dreamPrimitive
* - activeDreamPrimitive
* - dreamUnstoppablePrimitive
* - activeDreamUnstoppablePrimitive
*
*/
String controllerDesc() default "dreamPrimitive";
/**
* This boolean indicates if the component should be started in a separate
* thread or not
*
* @return
*
* -
true
if the component must be started in another thread
* -
false
otherwise.
*/
boolean needAsyncStart() default false;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy