patterntesting.runtime.annotation.DrawSequenceDiagram Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of patterntesting-rt Show documentation
Show all versions of patterntesting-rt Show documentation
PatternTesting Runtime (patterntesting-rt) is the runtime component for
the PatternTesting framework. It provides the annotations and base classes
for the PatternTesting testing framework (e.g. patterntesting-check,
patterntesting-concurrent or patterntesting-exception) but can be also
used standalone for classpath monitoring or profiling.
It uses AOP and AspectJ to perform this feat.
/*
* $Id: DrawSequenceDiagram.java,v 1.6 2014/01/12 18:57:54 oboehm Exp $
*
* Copyright (c) 2013 by Oliver Boehm
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express orimplied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
* (c)reated 06.09.2013 by oliver ([email protected])
*/
package patterntesting.runtime.annotation;
import java.lang.annotation.*;
/**
* With this annotation you can control the generation of sequence diagrams.
* You can put this annotation before a constructor or method.
*
* @author oliver
* @since 1.4 (06.09.2013)
* @see IgnoreForSequenceDiagram
*/
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.CONSTRUCTOR, ElementType.METHOD})
public @interface DrawSequenceDiagram {
/**
* If this value is given a new diagram with this name will be generated.
* If no value is given the marked method or constructor will appended to
* the last generated diagram.
*/
String value() default "";
/**
* If you don't want the call to a class of the "com.pany" package you can
* add "com.pany.*" as pattern.
*
* For the pattern the same syntax as in AspectJ is supported.
*
*
* NOTE: not yet realized
*
*/
String[] excluded() default "";
/**
* By default all classes are included. If you do not like that you can
* define a pattern wich packages and/or classes should be include.
*
* For the pattern the same syntax as in AspectJ is supported.
*
*
* NOTE: not yet realized
*
*/
String[] included() default "*";
}