Browse Source

Delete unused directories org.aspectj.lib, shadows.org.eclipse.jdt.core

I have not used those directories or any files inside them at all. I
hope I am not taking away anything helpful from people who prefer
working with inter-linked Eclipse projects instead of Maven, but I think
we will notice if anyone complains and can revert in case of an
emergency.

Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
tags/V1_9_19
Alexander Kriegisch 2 years ago
parent
commit
cefa5d6bfc

+ 0
- 9
org.aspectj.lib/.classpath View File

@@ -1,9 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.ajdt.core.ASPECTJRT_CONTAINER"/>
<classpathentry kind="src" path="testsrc"/>
<classpathentry sourcepath="/lib/junit/junit-src.jar" kind="lib" path="/lib/junit/junit.jar"/>
<classpathentry kind="output" path="bin"/>
</classpath>

+ 0
- 158
org.aspectj.lib/build-aspectjlib.xml View File

@@ -1,158 +0,0 @@
<!-- wrapped at 70 characters, long elements wrapped -->
<!-- ===========================================================================

Copyright (c) 2005 Contributors.
All rights reserved.
This program and the accompanying materials are made available
under the terms of the Eclipse Public License v 2.0
which accompanies this distribution and is available at
https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt

Contributors:
Wes Isberg initial implementation

============================================================================ -->

<project name="aspectj-library" default="aspectjlib" basedir=".">

<target name="aspectjlib" depends="compile" />
<target name="info">
<echo>
This script builds the AspectJ library.

Relevant targets:
aspectjlib build library

Setup:
- Run from the doc/aspectjlib directory in your AspectJ distribution.
The tasks in ../../lib/aspectjtools.jar are used automatically.

Variants:
- To define a variable, use the Ant -D option - e.g., on Windows:

ant -f build.xml -DJAVA_HOME=c:\jdk1.3.1 -Dnorun=skip

</echo>
</target>


<!-- ============================================================= -->
<!-- setup and cleanup targets -->
<!-- ============================================================= -->

<target name="clean"
depends="init"
description="clean and create classes/jar dir, .ajesym files"
>
<delete quiet="on" dir="${jar.dir}" />
<delete quiet="on">
<fileset dir="${org.aspectj.lib.dir}"
includes="**/*.ajesym"
/>
</delete>
<mkdir dir="${jar.dir}" />
</target>

<target name="init" depends="init.variables,init.taskdefs" />

<target name="init.variables" description="init variables">

<property name="org.aspectj.lib.dir" location="${basedir}" />
<property name="src.dir"
location="${org.aspectj.lib.dir}/src"
/>

<!-- find AspectJ lib dir in distribution or AspectJ CVS tree -->
<property name="aspectj.dist.lib"
location="${basedir}/../../lib"
/>

<property name="aspectj.tree.lib"
location="${basedir}/../lib/aspectj/lib"
/>

<condition property="aspectj.lib.dir"
value="${aspectj.dist.lib}"
>
<available file="${aspectj.dist.lib}/aspectjtools.jar" />
</condition>

<condition property="aspectj.lib.dir"
value="${aspectj.tree.lib}"
>
<available file="${aspectj.tree.lib}/aspectjtools.jar" />
</condition>

<property name="aspectjrt.jar"
location="${aspectj.lib.dir}/aspectjrt.jar"
/>
<property name="aspectjtools.jar"
location="${aspectj.lib.dir}/aspectjtools.jar"
/>
<property name="aspectjweaver.jar"
location="${aspectj.lib.dir}/aspectjweaver.jar"
/>

<property name="jar.dir"
location="${org.aspectj.lib.dir}/jars"
/>
<property name="aspectjlib.out.jar"
location="${jar.dir}/aspectjlib.out.jar"
/>

<available file="${aspectjtools.jar}"
property="aspectjtools.jar.available"
/>
<available file="${aspectjrt.jar}"
property="aspectjrt.jar.available"
/>

<property name="library.packages" value="org.aspectj.lib" />
</target>

<target name="init.taskdefs"
depends="init.variables,
aspectjtools.jar.available,
aspectjrt.jar.available"
unless="taskdefs.init"
>
<taskdef resource="org/aspectj/tools/ant/taskdefs/aspectjTaskdefs.properties"
>
<classpath>
<pathelement path="${aspectjtools.jar}" />
</classpath>
</taskdef>
<property name="taskdefs.init" value="true" />
</target>

<target name="aspectjrt.jar.available"
depends="init.variables"
unless="aspectjrt.jar.available"
>
<fail message="expecting aspectjrt.jar at ${aspectjrt.jar}" />
</target>

<target name="aspectjtools.jar.available"
depends="init.variables"
unless="aspectjtools.jar.available"
>
<fail message="expecting aspectjtools.jar at ${aspectjtools.jar}"
/>
</target>

<target name="compile"
depends="init"
description="compile library"
>
<antcall target="clean" />
<!-- can use ajc or iajc here -->
<iajc sourceroots="${src.dir}"
fork="true"
forkclasspath="${aspectjtools.jar}"
classpath="${aspectjrt.jar}"
outjar="${aspectjlib.out.jar}"
/>

</target>

</project>

+ 0
- 2
org.aspectj.lib/build.ajproperties View File

@@ -1,2 +0,0 @@
src.includes = src/,\
testsrc/

+ 0
- 18
org.aspectj.lib/org.aspectj.lib.mf.txt View File

@@ -1,18 +0,0 @@
Manifest-Version: 1.0

Name: org/aspectj/lib/
Specification-Title: AspectJ Library Classes
Specification-Version: @build.version.base@
Specification-Vendor: @company.name@
Implementation-Title: org.aspectj.lib
Implementation-Version: @build.version@
Implementation-Vendor: @company.name@
Bundle-Name: AspectJ
Bundle-Version: @build.version.base@
Import-Package: org.aspectj.lib,org.aspectj.lib.pointcuts
Bundle-Copyright: (C) Copyright 2005 Contributors.
All Rights Reserved.





+ 0
- 23
org.aspectj.lib/pom.xml View File

@@ -1,23 +0,0 @@
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>

<parent>
<groupId>org.aspectj</groupId>
<artifactId>aspectj-parent</artifactId>
<version>1.9.4</version>
</parent>

<artifactId>runtime</artifactId>

<dependencies>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>testing-util</artifactId>
<version>${project.version}</version>
<scope>test</scope>
</dependency>
</dependencies>

</project>

+ 0
- 58
org.aspectj.lib/readme-org.aspectj.lib.html View File

@@ -1,58 +0,0 @@
<html>
<head><title>org.aspectj.lib library module</title></head>
<body>
<h2>org.aspectj.lib library module</h2>
<p>
This module has source for both <code>{AspectJ}/lib/aspectjlib.jar</code>
and <code>{AspectJ}/docs/aspectjlib/*</code>.
</p>

<h3>Building {AspectJ}/lib/aspectjlib.jar</h3>
<p>
This module is compiled using AspectJ, both in Eclipse and with Ant.
The Eclipse support is defined as usual in
<a href=".classpath">.classpath</a> and <a href=".project">.project</a>.
The Ant build support in <a href="../build/build.xml">../build/build.xml</a>
is limited:
</p>
<ul>
<li>This module is built and published as
<code>{aspectj}/lib/aspectjlib.jar</code>.
This happens automatically, with no explicit Ant script.
The <a href="../build/src/org/aspectj/internal/tools/build/Builder.java">
Builder.java</a>
task uses <code>moduleAliasFor(String)</code> to map from the name of
the empty file
<a href="../build/products/tools/dist/lib/aspectjlib.jar">
../build/products/tools/dist/lib/aspectjlib.jar</a>
back to the module output
<a href="../aj-build/jars/org.aspectj.lib.jar">
../aj-build/jars/org.aspectj.lib.jar</a>.</li>
<li>The AspectJ support compiles only source files in <a href="src/">src/</a></li>
<li>It does not use inpath, aspectpath, or any other aspectj-specific
option</li>
<li>All non-Java (resource) files in the source directory will be included
in the library.</li>
<li>There should be no dependencies. Any libraries or modules on
the Java classpath would be included in the shipped library.</li>
<li>This is built using the release of AspectJ in
<a href="../lib/aspectj">../lib/aspectj</a>.</li>
</ul>
<h3>Building {AspectJ}/examples/aspectjlib/*</h3>
<p>
The docs build script <a href="../docs/build.xml">../docs/build.xml</a>
is responsible for assembling sources from this directory into the docs
directory. It relies on the name of the source directory and build script.
Also, <code>Builder.java</code> is designed to try to use any
<code>build.xml</code> to build the module, but Ant builds are now disabled.
So if you change the build script name or the source directory names, update
the docs build script and the builder as needed.
</p>
<p>
The <a href="build-aspectjlib.xml">build-aspectjlib.xml</a> script looks for
an AspectJ lib directory from either the distribution (aspectj/docs/aspectjlib)
or from the CVS tree (modules/org.aspectj.lib), so the script can be tested
in situ.
</p>
</body>
</html>

+ 0
- 183
org.aspectj.lib/src/main/java/org/aspectj/lib/pointcuts/Pointcuts.java View File

@@ -1,183 +0,0 @@
/* *******************************************************************
* Copyright (c) 2003-2005 Contributors.
* All rights reserved.
* This program and the accompanying materials are made available
* under the terms of the Eclipse Public License v 2.0
* which accompanies this distribution and is available at
* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt
*
* Contributors:
* Wes Isberg initial implementation
* ******************************************************************/

// START-SAMPLE library-pointcutIdioms Standard pointcut idioms
package org.aspectj.lib.pointcuts;

import java.util.Collection;
import java.io.PrintStream;

/**
* Library of pointcut idioms to use in combination with
* other pointcuts.
*
* @author Wes Isberg
*/
public final class Pointcuts {

// ------- not staticly-determinable
public pointcut adviceCflow() : cflow(adviceexecution());

public pointcut notInAdviceCflow() : !adviceCflow();

public pointcut cflowMainExecution() :
cflow(mainExecution());

// ------- staticly-determinable

public pointcut mainExecution() :
execution(public static void main(String[]));

/** staticly-determinable to never match any join point */
public pointcut never();

public pointcut afterAdviceSupported() : !handler(*);

public pointcut aroundAdviceSupported() : !handler(*)
&& !initialization(new(..)) && !preinitialization(new(..));

public pointcut anyMethodExecution() :
execution(* *(..));

public pointcut anyPublicMethodExecution() :
execution(public * *(..));

public pointcut anyPackageProtectedMethodExecution() :
execution(!private !public !protected * *(..));

public pointcut anyNonPrivateMethodExecution() :
execution(!private * *(..));

public pointcut anyConstructorExecution() :
execution(new(..));

public pointcut anyPublicConstructorExecution() :
execution(public new(..));

public pointcut anyNonPrivateConstructorExecution() :
execution(!private new(..));

public pointcut anyPublicFieldGet() :
get(public * *);

public pointcut anyNonPrivateFieldGet() :
get(!private * *);

public pointcut anyPublicFieldSet() :
set(public * *);

public pointcut anyNonPrivateFieldSet() :
set(!private * *); // also !transient?

public pointcut withinSetter() : // require !static?
withincode(void set*(*)); // use any return type? multiple parms?

public pointcut withinGetter() :
withincode(!void get*()); // permit parms? require !static?

public pointcut anyNonPublicFieldSetOutsideConstructorOrSetter() :
set(!public * *) && !withincode(new(..))
&& !withinSetter();

public pointcut anyRunnableImplementation() :
staticinitialization(Runnable+);

public pointcut anyGetSystemErrOut() :
get(PrintStream System.err) || get(PrintStream System.out);

public pointcut anySetSystemErrOut() :
call(void System.setOut(..)) || call(void System.setErr(..));

public pointcut withinAnyJavaCode() :
within(java..*) || within(javax..*);

public pointcut notWithinJavaCode() :
!withinAnyJavaCode();

public pointcut toStringExecution() :
execution(String toString()) && !within(String);

/** call or execution of any Thread constructor, including subclasses */
public pointcut anyThreadConstruction() :
call(Thread+.new(..)) || execution(Thread+.new(..));

/**
* Any calls to java.io classes
* (but not methods declared only on their subclasses).
*/
public pointcut anyJavaIOCalls() :
call(* java.io..*.*(..)) || call(java.io..*.new(..));

/**
* Any calls to java.awt or javax.swing methods or constructors
* (but not methods declared only on their subclasses).
*/
public pointcut anyJavaAWTOrSwingCalls() :
call(* java.awt..*.*(..)) || call(java.awt..*.new(..))
|| call(* javax.swing..*.*(..)) || call(javax.swing..*.new(..));

public pointcut cloneImplementationsInNonCloneable() :
execution(Object !Cloneable+.clone());

public pointcut runImplementationsInNonRunnable() :
execution(void !Runnable+.run());

/** any calls to java.lang.reflect or Class.get* (except getName()) */
public pointcut anySystemReflectiveCalls() :
call(* java.lang.reflect..*.*(..))
|| (!call(* Class.getName())
&& call(* Class.get*(..)));

/** standard class-loading calls by Class and ClassLoader
* Note that `Foo.class` in bytecode is `Class.forName("Foo")`,
* so 'Foo.class' will also be picked out by this pointcut.
*/
public pointcut anySystemClassLoadingCalls() :
call(Class Class.forName(..))
|| call(Class ClassLoader.loadClass(..));

public pointcut anySystemProcessSpawningCalls() :
call(Process Runtime.exec(..))
|| call(Class ClassLoader.loadClass(..));

/** Write methods on Collection
* Warning: Does not pick out <code>iterator()</code>, even though
* an Iterator can remove elements.
*/
public pointcut anyCollectionWriteCalls() :
call(boolean Collection+.add(Object))
|| call(boolean Collection+.addAll(Collection))
|| call(void Collection+.clear())
|| call(boolean Collection+.remove(Object))
|| call(boolean Collection+.removeAll(Collection))
|| call(boolean Collection+.retainAll(Collection));

public pointcut mostThrowableReadCalls() :
call(* Throwable+.get*(..))
|| call(* Throwable+.print*(..))
|| call(String Throwable+.toString(..));

public pointcut exceptionWrappingCalls() :
(args(Throwable+,..) || args(.., Throwable+))
&& (set(Throwable+ Throwable+.*)
|| (call(* Throwable+.*(..))
|| call(Throwable+.new(..))));

public pointcut anyCodeThrowingException() :
execution(* *(..) throws Exception+)
|| execution(new(..) throws Exception+);

private Pointcuts() {}
}
//END-SAMPLE library-pointcutIdioms



+ 0
- 141
org.aspectj.lib/src/main/java/org/aspectj/lib/tracing/TraceJoinPoints.java View File

@@ -1,141 +0,0 @@
/* *******************************************************************
* Copyright (c) 2005 Contributors.
* All rights reserved.
* This program and the accompanying materials are made available
* under the terms of the Eclipse Public License v 2.0
* which accompanies this distribution and is available at
* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt
*
* Contributors:
* Wes Isberg initial implementation
* ******************************************************************/

// START-SAMPLE tracing-traceJoinPoints Trace join points executed to log

package org.aspectj.lib.tracing;

import org.aspectj.lang.*;
import org.aspectj.lang.reflect.*;
import java.io.*;

/**
* Print join points being executed in context to a log.xml file.
* To use this, define the abstract pointcuts in a subaspect.
* @author Jim Hugunin, Wes Isberg
*/
public abstract aspect TraceJoinPoints
extends TraceJoinPointsBase {

// abstract protected pointcut entry();

PrintStream out;
int logs = 0;
int depth = 0;
boolean terminal = false;

/**
* Emit a message in the log, e.g.,
* <pre>TraceJoinPoints tjp = TraceJoinPoints.aspectOf();
* if (null != tjp) tjp.message("Hello, World!");</pre>
*/
public void message(String s) {
out.println("<message>" + prepareMessage(s) + "</message>");
}

protected void startLog() {
makeLogStream();
}

protected void completeLog() {
closeLogStream();
}

protected void logEnter(JoinPoint.StaticPart jp) {
if (terminal) out.println(">");
indent(depth);
out.print("<" + jp.getKind());
writeSig(jp);
writePos(jp);

depth += 1;
terminal = true;
}

protected void logExit(JoinPoint.StaticPart jp) {
depth -= 1;
if (terminal) {
getOut().println("/>");
} else {
indent(depth);
getOut().println("</" + jp.getKind() + ">");
}
terminal = false;
}

protected PrintStream getOut() {
if (null == out) {
String m = "not in the control flow of entry()";
throw new IllegalStateException(m);
}
return out;
}

protected void makeLogStream() {
try {
String name = "log" + logs++ + ".xml";
out = new PrintStream(new FileOutputStream(name));
} catch (IOException ioe) {
out = System.err;
}
}

protected void closeLogStream() {
PrintStream out = this.out;
if (null != out) {
out.close();
// this.out = null;
}
}

/** @return input String formatted for XML */
protected String prepareMessage(String s) { // XXX unimplemented
return s;
}

void message(String sink, String s) {
if (null == sink) {
message(s);
} else {
getOut().println("<message sink=" + quoteXml(sink)
+ " >" + prepareMessage(s) + "</message>");
}
}

void writeSig(JoinPoint.StaticPart jp) {
PrintStream out = getOut();
out.print(" sig=");
out.print(quoteXml(jp.getSignature().toShortString()));
}

void writePos(JoinPoint.StaticPart jp) {
SourceLocation loc = jp.getSourceLocation();
if (loc == null) return;
PrintStream out = getOut();

out.print(" pos=");
out.print(quoteXml(loc.getFileName() +
":" + loc.getLine() +
":" + loc.getColumn()));
}

protected String quoteXml(String s) { // XXX weak
return "\"" + s.replace('<', '_').replace('>', '_') + "\"";
}

protected void indent(int i) {
PrintStream out = getOut();
while (i-- > 0) out.print(" ");
}
}
// END-SAMPLE tracing-traceJoinPoints


+ 0
- 69
org.aspectj.lib/src/main/java/org/aspectj/lib/tracing/TraceJoinPointsBase.java View File

@@ -1,69 +0,0 @@
/* *******************************************************************
* Copyright (c) 2005 Contributors.
* All rights reserved.
* This program and the accompanying materials are made available
* under the terms of the Eclipse Public License v 2.0
* which accompanies this distribution and is available at
* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt
*
* Contributors:
* Wes Isberg initial implementation
* ******************************************************************/

// START-SAMPLE tracing-traceJoinPoints Trace join points executed

package org.aspectj.lib.tracing;

import org.aspectj.lang.JoinPoint;

/**
* Trace join points being executed in context.
* To use this, define the abstract members in a subaspect.
* <b>Warning</b>: this does not trace join points that do not
* support after advice.
* @author Jim Hugunin, Wes Isberg
*/
abstract aspect TraceJoinPointsBase {

declare precedence : TraceJoinPointsBase, *;

abstract protected pointcut entry();

/** ignore join points outside this scope - use within(..) */
abstract protected pointcut withinScope();

protected pointcut exit(): withinScope() && call(* java..*.*(..));

final pointcut start(): withinScope() && entry() && !cflowbelow(entry());

final pointcut trace(): withinScope() && cflow(entry())
&& !cflowbelow(exit()) && !within(TraceJoinPointsBase+);

private pointcut supportsAfterAdvice() : !handler(*)
&& !preinitialization(new(..));

before(): start() { startLog(); }

before(): trace() && supportsAfterAdvice(){
logEnter(thisJoinPointStaticPart);
}

after(): trace() && supportsAfterAdvice() {
logExit(thisJoinPointStaticPart);
}

after(): start() { completeLog(); }

abstract protected void logEnter(JoinPoint.StaticPart jp);

abstract protected void logExit(JoinPoint.StaticPart jp);

/** called before any logging */
abstract protected void startLog();

/** called after any logging */
abstract protected void completeLog();
}

// END-SAMPLE tracing-traceJoinPoints


+ 0
- 29
org.aspectj.lib/src/test/java/org/aspectj/lib/LibModuleTests.java View File

@@ -1,29 +0,0 @@
package org.aspectj.lib;
/* *******************************************************************
* Copyright (c) 2005 Contributors.
* All rights reserved.
* This program and the accompanying materials are made available
* under the terms of the Eclipse Public License v 2.0
* which accompanies this distribution and is available at
* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt
*
* Contributors:
* Wes Isberg initial implementation
* ******************************************************************/

// default package

import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;

public class LibModuleTests extends TestCase {

public static Test suite() {
TestSuite suite = new TestSuite(LibModuleTests.class.getName());
suite.addTest(org.aspectj.lib.pointcuts.PointcutsTests.suite());
suite.addTest(org.aspectj.lib.tracing.TracingTests.suite());
return suite;
}

}

+ 0
- 60
org.aspectj.lib/src/test/java/org/aspectj/lib/pointcuts/PointcutsTest.java View File

@@ -1,60 +0,0 @@
/* *******************************************************************
* Copyright (c) 2005 Contributors.
* All rights reserved.
* This program and the accompanying materials are made available
* under the terms of the Eclipse Public License v 2.0
* which accompanies this distribution and is available at
* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt
*
* Contributors:
* Wes Isberg initial implementation
* ******************************************************************/

package org.aspectj.lib.pointcuts;

import junit.framework.TestCase;

/**
*
*/
public class PointcutsTest extends TestCase {

public void test_anyPublicMethodExecution() {
try {
Test_anyPublicMethodExecution.error();
assertTrue("no exception thrown", false);
} catch (Error e) {
// ok, advice worked
}
}

private static aspect Test_anyPublicMethodExecution {
public static void error() {
throw new RuntimeException("wrong exception");
}

static void nonpublic() {}

before() :
execution(static void Test_anyPublicMethodExecution.error())
&& Pointcuts.anyPublicMethodExecution() {
throw new Error("");
}

declare error :
execution(static void Test_anyPublicMethodExecution.nonpublic())
&& Pointcuts.anyPublicMethodExecution()
: "anyPublicMethodExecution failed - not public";

}
private static aspect compileChecks {
/** balk if Pointcuts has code - s.b. only pointcuts */
declare error : within(Pointcuts) &&
(set(* *) || Pointcuts.anyMethodExecution() ||
(Pointcuts.anyConstructorExecution()
&& !execution(private Pointcuts.new()))) :
"only pointcuts permitted in Pointcuts";


}
}

+ 0
- 31
org.aspectj.lib/src/test/java/org/aspectj/lib/pointcuts/PointcutsTests.java View File

@@ -1,31 +0,0 @@
/* *******************************************************************
* Copyright (c) 2005 Contributors.
* All rights reserved.
* This program and the accompanying materials are made available
* under the terms of the Eclipse Public License v 2.0
* which accompanies this distribution and is available at
* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt
*
* Contributors:
* Wes Isberg initial implementation
* ******************************************************************/

package org.aspectj.lib.pointcuts;

import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;

public class PointcutsTests extends TestCase {

public static Test suite() {
TestSuite suite = new TestSuite(PointcutsTests.class.getName());
//$JUnit-BEGIN$
suite.addTestSuite(PointcutsTest.class);
//$JUnit-END$
return suite;
}

public PointcutsTests(String name) { super(name); }

}

+ 0
- 83
org.aspectj.lib/src/test/java/org/aspectj/lib/tracing/TraceJoinPointsTest.java View File

@@ -1,83 +0,0 @@
/* *******************************************************************
* Copyright (c) 2005 Contributors.
* All rights reserved.
* This program and the accompanying materials are made available
* under the terms of the Eclipse Public License v 2.0
* which accompanies this distribution and is available at
* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt
*
* Contributors:
* Wes Isberg initial implementation
* ******************************************************************/


package org.aspectj.lib.tracing;

import junit.framework.TestCase;

import org.aspectj.lang.JoinPoint.StaticPart;

/**
*
*/
public class TraceJoinPointsTest extends TestCase {

public void testTraceJoinPoints() {
checkTjp();
TestTJP aspect = TestTJP.aspectOf();
assertNotNull("aspect", aspect);
assertTrue("checked", aspect.checked);
}

static final int NUMJP = 1;

static void checkTjp() {
// NUMJP: only 1 join point
long l = System.currentTimeMillis();
}

/** poor design/test */
static aspect TestTJP extends TraceJoinPoints {

protected pointcut withinScope() : within(TraceJoinPointsTest)
&& !within(TestTJP);
pointcut traceJoinPoints() :
execution(static void TraceJoinPointsTest.testTraceJoinPoints());

protected pointcut entry() :
execution(static void TraceJoinPointsTest.checkTjp());

boolean checked;
int logEnter = 10;
int logExit = 10;
int startLog = 10;
int completeLog = 10;
protected void logEnter(StaticPart jp) {
logEnter++;
}

protected void logExit(StaticPart jp) {
logExit++;
}

protected void startLog() {
startLog = 0;
completeLog = 0;
logEnter = 0;
logExit = 0;
startLog++;
}

protected void completeLog() {
completeLog++;
}
after() returning : entry() {
assertEquals("startLog", 1, startLog);
assertEquals("completeLog", 1, startLog);
assertEquals("logExit", NUMJP, startLog);
assertEquals("logEntry", NUMJP, startLog);
assertTrue(!checked);
checked = true;
}
}
}

+ 0
- 29
org.aspectj.lib/src/test/java/org/aspectj/lib/tracing/TracingTests.java View File

@@ -1,29 +0,0 @@
/* *******************************************************************
* Copyright (c) 2005 Contributors.
* All rights reserved.
* This program and the accompanying materials are made available
* under the terms of the Eclipse Public License v 2.0
* which accompanies this distribution and is available at
* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt
*
* Contributors:
* Wes Isberg initial implementation
* ******************************************************************/

package org.aspectj.lib.tracing;

import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;

public class TracingTests extends TestCase {

public static Test suite() {
TestSuite suite = new TestSuite(TracingTests.class.getName());
//$JUnit-BEGIN$
suite.addTestSuite(TraceJoinPointsTest.class);
//$JUnit-END$
return suite;
}

}

+ 0
- 5
shadows.org.eclipse.jdt.core/.classpath View File

@@ -1,5 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path=""/>
<classpathentry kind="output" path=""/>
</classpath>

+ 0
- 17
shadows.org.eclipse.jdt.core/.project View File

@@ -1,17 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>shadows.org.eclipse.jdt.core</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>

+ 0
- 17
shadows.org.eclipse.jdt.core/README.html View File

@@ -1,17 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Placeholder for the Shadow version Eclipse JDT compiler</title>
</head>

<body>
<h1>Placeholder for the Shadow version of the Eclipse JDT Compiler</h1>

<p>This module is here so that the org.eclipse.jdt.core project can
fulfill its project dependencies when not working with the 'real'
shadow version of org.eclipse.jdt.core (the normal mode). It contains
a build.xml file that does nothing, in order to satisfy the external
builder tool added to the chain of the org.eclipse.jdt.core HEAD project.
</p>
</body>
</html>

+ 0
- 5
shadows.org.eclipse.jdt.core/build.xml View File

@@ -1,5 +0,0 @@
<project name="ShadowJdtCore" basedir="." default="make.jdtcore.jar">
<target name="make.jdtcore.jar">
<echo message="dummy build of jdtcore.jar complete."/>
</target>
</project>

+ 0
- 0
shadows.org.eclipse.jdt.core/notamodule View File


+ 0
- 0
shadows.org.eclipse.jdt.core/shadow_folder/shadow_file.txt View File


Loading…
Cancel
Save