Kaynağa Gözat

ThreadInspector#dump(bool, out)

Ranides Atterwim 10 yıl önce
ebeveyn
işleme
ae436fcede

+ 245 - 238
assira/pom.xml

@@ -1,239 +1,246 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<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/xsd/maven-4.0.0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <groupId>net.ranides</groupId>
-        <artifactId>assira.common</artifactId>
-        <version>2.0.1</version>
-    </parent>
-    <name>assira</name>
-    <groupId>net.ranides</groupId>
-    <artifactId>assira</artifactId>
-    <version>2.0.1</version>
-    <packaging>jar</packaging>
-	
-	<properties>
-		<assira.junit.debug>false</assira.junit.debug>
-    </properties>
-
-    <profiles>
-        <profile>
-            <id>recent-coverage</id>
-            <build>
-                <plugins>
-                    <plugin>
-                        <groupId>org.jacoco</groupId>
-                        <artifactId>jacoco-maven-plugin</artifactId>
-                        <version>0.7.5.201505241946</version>
-                        <configuration>
-                            <excludes>
-                                <exclude>net/ranides/assira/test/**</exclude>
-								
-                                <!--  klasy dostatecznie przetestowane -->
-								
-                                <exclude>net/ranides/assira/collection/AIntCollection.class</exclude>
-                                <exclude>net/ranides/assira/collection/ACollection.class</exclude>
-                                <exclude>net/ranides/assira/collection/IntComparator.class</exclude>
-                                <exclude>net/ranides/assira/collection/HashIntComparator.class</exclude>
-                                <exclude>net/ranides/assira/collection/HashIntComparator$*</exclude>
-                                <exclude>net/ranides/assira/collection/HashComparator.class</exclude>
-                                <exclude>net/ranides/assira/collection/HashComparator$*</exclude>
-                                
-                                <exclude>net/ranides/assira/collection/maps/AMap.class</exclude>
-                                <exclude>net/ranides/assira/collection/maps/AMap$*</exclude>
-                                <exclude>net/ranides/assira/collection/maps/IntMap.class</exclude>
-                                <exclude>net/ranides/assira/collection/maps/IntMap$*</exclude>
-                                <exclude>net/ranides/assira/collection/maps/AIntMap.class</exclude>
-                                <exclude>net/ranides/assira/collection/maps/AIntMap$*</exclude>
-
-                                <exclude>net/ranides/assira/collection/maps/ASortedMap.class</exclude>
-                                <exclude>net/ranides/assira/collection/maps/ASortedMap$*</exclude>
-                                <exclude>net/ranides/assira/collection/maps/AIntSortedMap.class</exclude>
-                                <exclude>net/ranides/assira/collection/maps/AIntSortedMap$*</exclude>
-
-                                <exclude>net/ranides/assira/collection/maps/AHashMap.class</exclude>
-                                <exclude>net/ranides/assira/collection/maps/AHashMap$*</exclude>
-                                <exclude>net/ranides/assira/collection/maps/HashMap.class</exclude>
-                                <exclude>net/ranides/assira/collection/maps/HashMap$*</exclude>
-                                <exclude>net/ranides/assira/collection/maps/AIntHashMap.class</exclude>
-                                <exclude>net/ranides/assira/collection/maps/AIntHashMap$*</exclude>
-                                <exclude>net/ranides/assira/collection/maps/IntHashMap.class</exclude>
-                                <exclude>net/ranides/assira/collection/maps/IntHashMap$*</exclude>
-                                
-                                <exclude>net/ranides/assira/collection/maps/MultiMap.class</exclude>
-                                <exclude>net/ranides/assira/collection/maps/IntMultiMap.class</exclude>
-                                <exclude>net/ranides/assira/collection/maps/HashMultiMap.class</exclude>
-                                <exclude>net/ranides/assira/collection/maps/HashMultiMap$*</exclude>
-                                <exclude>net/ranides/assira/collection/maps/IntHashMultiMap.class</exclude>
-                                <exclude>net/ranides/assira/collection/maps/IntHashMultiMap$*</exclude>
-
-                                <exclude>net/ranides/assira/collection/maps/AVLTreeMap.class</exclude>
-                                <exclude>net/ranides/assira/collection/maps/AVLTreeMap$*</exclude>
-                                <exclude>net/ranides/assira/collection/maps/IntAVLTreeMap.class</exclude>
-                                <exclude>net/ranides/assira/collection/maps/IntAVLTreeMap$*</exclude>
-
-                                <exclude>net/ranides/assira/collection/maps/RBTreeMap.class</exclude>
-                                <exclude>net/ranides/assira/collection/maps/RBTreeMap$*</exclude>
-                                <exclude>net/ranides/assira/collection/maps/IntRBTreeMap.class</exclude>
-                                <exclude>net/ranides/assira/collection/maps/IntRBTreeMap$*</exclude>
-
-                                <exclude>net/ranides/assira/collection/maps/CustomMap.class</exclude>
-                                <exclude>net/ranides/assira/collection/maps/IdentMap.class</exclude>
-
-                                <exclude>net/ranides/assira/collection/sets/ASet.class</exclude>
-                                <exclude>net/ranides/assira/collection/sets/AIntSet.class</exclude>
-
-                                <exclude>net/ranides/assira/collection/sets/ASortedSet.class</exclude>
-                                <exclude>net/ranides/assira/collection/sets/ASortedSet$*</exclude>
-                                <exclude>net/ranides/assira/collection/sets/AIntSortedSet.class</exclude>
-                                <exclude>net/ranides/assira/collection/sets/AIntSortedSet$*</exclude>
-
-                                <exclude>net/ranides/assira/collection/sets/AHashSet.class</exclude>
-                                <exclude>net/ranides/assira/collection/sets/AHashSet$*</exclude>
-                                <exclude>net/ranides/assira/collection/sets/HashSet.class</exclude>
-                                <exclude>net/ranides/assira/collection/sets/IntHashSet.class</exclude>
-                                <exclude>net/ranides/assira/collection/sets/IntHashSet$*</exclude>
-
-                                <exclude>net/ranides/assira/collection/sets/AVLTreeSet.class</exclude>
-                                <exclude>net/ranides/assira/collection/sets/AVLTreeSet$*</exclude>
-                                <exclude>net/ranides/assira/collection/sets/IntAVLTreeSet.class</exclude>
-                                <exclude>net/ranides/assira/collection/sets/IntAVLTreeSet$*</exclude>
-
-                                <exclude>net/ranides/assira/collection/sets/RBTreeSet.class</exclude>
-                                <exclude>net/ranides/assira/collection/sets/RBTreeSet$*</exclude>
-                                <exclude>net/ranides/assira/collection/sets/IntRBTreeSet.class</exclude>
-                                <exclude>net/ranides/assira/collection/sets/IntRBTreeSet$*</exclude>
-
-                                <exclude>net/ranides/assira/collection/sets/CustomSet.class</exclude>
-                                <exclude>net/ranides/assira/collection/sets/IdentSet.class</exclude>
-                                <exclude>net/ranides/assira/collection/sets/AIdentSet.class</exclude>
-                                
-                                <exclude>net/ranides/assira/collection/lookups/Lookup.class</exclude>
-                                <exclude>net/ranides/assira/collection/lookups/Lookup$*</exclude>
-                                <exclude>net/ranides/assira/collection/lookups/ALookup.class</exclude>
-                                <exclude>net/ranides/assira/collection/lookups/ALookup$*</exclude>
-                                <exclude>net/ranides/assira/collection/lookups/ASortedLookup.class</exclude>
-                                <exclude>net/ranides/assira/collection/lookups/ASortedLookup$*</exclude>
-                                
-                                <exclude>net/ranides/assira/collection/lookups/AHashLookup.class</exclude>
-                                <exclude>net/ranides/assira/collection/lookups/AHashLookup$*</exclude>
-                                
-                                <exclude>net/ranides/assira/collection/lookups/AVLTreeLookup.class</exclude>
-                                <exclude>net/ranides/assira/collection/lookups/AVLTreeLookup$*</exclude>
-                                <exclude>net/ranides/assira/collection/lookups/RBTreeLookup.class</exclude>
-                                <exclude>net/ranides/assira/collection/lookups/RBTreeLookup$*</exclude>
-                                
-                                <exclude>net/ranides/assira/collection/lookups/CustomLookup.class</exclude>
-                                <exclude>net/ranides/assira/collection/lookups/HashLookup.class</exclude>
-                                <exclude>net/ranides/assira/collection/lookups/IdentLookup.class</exclude>
-                                
-                                <exclude>net/ranides/assira/collection/lookups/AHashLookup.class</exclude>
-                                <exclude>net/ranides/assira/collection/lookups/AHashLookup$*</exclude>
-                                
-                                <exclude>net/ranides/assira/collection/arrays/ArrayAllocator.class</exclude>
-                                <exclude>net/ranides/assira/collection/arrays/ArraySearch.class</exclude>
-                                <exclude>net/ranides/assira/collection/arrays/ArraySort.class</exclude>
-                                <exclude>net/ranides/assira/collection/arrays/ArraySort$*</exclude>
-                                
-                                <exclude>net/ranides/assira/collection/arrays/IntArrayAllocator.class</exclude>
-                                <exclude>net/ranides/assira/collection/arrays/IntArraySearch.class</exclude>
-                                <exclude>net/ranides/assira/collection/arrays/IntArraySort.class</exclude>
-
-                                <exclude>net/ranides/assira/collection/arrays/NativeArrayAllocator.class</exclude>
-                                <exclude>net/ranides/assira/collection/arrays/NativeArraySearch.class</exclude>
-                                <exclude>net/ranides/assira/collection/arrays/NativeArraySort.class</exclude>
-                                
-                                <exclude>net/ranides/assira/collection/arrays/NativeArray.class</exclude>
-                                <exclude>net/ranides/assira/collection/arrays/NativeArray$*</exclude>
-                                
-                                <!--                                
-                                <exclude>net/ranides/assira/collection/arrays/ArrayUtils.class</exclude>
-                                <exclude>net/ranides/assira/collection/arrays/ArrayUtils$*</exclude>
-                                <exclude>net/ranides/assira/collection/arrays/IntArrayUtils.class</exclude>
-                                <exclude>net/ranides/assira/collection/arrays/IntArrayUtils$*</exclude>
-                                -->
-
-                                <exclude>net/ranides/assira/collection/lists/AIntList.class</exclude>
-                                <exclude>net/ranides/assira/collection/lists/AIntList$*</exclude>
-                                <exclude>net/ranides/assira/collection/lists/IntArrayList.class</exclude>
-                                <exclude>net/ranides/assira/collection/lists/IntArrayList$*</exclude>
-                                <exclude>net/ranides/assira/collection/lists/IntRange.class</exclude>
-                                <exclude>net/ranides/assira/collection/lists/IntRange$*</exclude>
-                                <exclude>net/ranides/assira/collection/lists/NativeArrayList.class</exclude>
-                                <exclude>net/ranides/assira/collection/lists/NativeArrayList$*</exclude>
-								
-                                <exclude>net/ranides/assira/collection/rmq/AIntRMQList.class</exclude>
-                                <exclude>net/ranides/assira/collection/rmq/ARMQList.class</exclude>
-                                <exclude>net/ranides/assira/collection/rmq/IntRMQTable.class</exclude>
-                                <exclude>net/ranides/assira/collection/rmq/IntRMQTree.class</exclude>
-                                <exclude>net/ranides/assira/collection/rmq/IntRMQTree$*</exclude>
-                                <exclude>net/ranides/assira/collection/rmq/RMQTable.class</exclude>
-                                <exclude>net/ranides/assira/collection/rmq/RMQTree.class</exclude>
-                                <exclude>net/ranides/assira/collection/rmq/RMQTree$*</exclude>
-                                
-                                <exclude>net/ranides/assira/text/Charsets.class</exclude>
-                                <exclude>net/ranides/assira/text/MazoviaCharset.class</exclude>
-                                <exclude>net/ranides/assira/text/MazoviaCharset$*</exclude>
-                                <exclude>net/ranides/assira/text/FormatHex.class</exclude>
-                                <exclude>net/ranides/assira/text/FormatNumber.class</exclude>
-                                <exclude>net/ranides/assira/text/FormatNumber$*</exclude>
-                            </excludes>
-                        </configuration>
-                    </plugin>
-                </plugins>
-            </build>
-        </profile>
-    </profiles>
-	
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.jacoco</groupId>
-                <artifactId>jacoco-maven-plugin</artifactId>
-                <version>0.7.5.201505241946</version>
-                <configuration>
-                    <excludes>
-                        <exclude>net/ranides/assira/test/**</exclude>
-                    </excludes>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-    
-    <repositories>
-        <repository>
-            <id>ranides.net</id>
-            <name>ranides.net</name>
-            <url>http://maven.ranides.net</url>
-        </repository>
-    </repositories>
-    
-    <dependencies>
-        <dependency>
-            <artifactId>assira.asm</artifactId>
-            <groupId>net.ranides</groupId>
-        </dependency>
-        <dependency>
-            <groupId>junit</groupId>
-            <artifactId>junit</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>net.ranides</groupId>
-            <artifactId>assira.junit</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-api</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-simple</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>com.google.code.findbugs</groupId>
-            <artifactId>annotations</artifactId>
-            <version>3.0.1u2</version>
-            <scope>provided</scope>
-        </dependency>
-    </dependencies>
+<?xml version="1.0" encoding="UTF-8"?>
+<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/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>net.ranides</groupId>
+        <artifactId>assira.common</artifactId>
+        <version>2.0.1</version>
+    </parent>
+    <name>assira</name>
+    <groupId>net.ranides</groupId>
+    <artifactId>assira</artifactId>
+    <version>2.0.1</version>
+    <packaging>jar</packaging>
+	
+	<properties>
+		<assira.junit.debug>false</assira.junit.debug>
+    </properties>
+
+    <profiles>
+        <profile>
+            <id>recent-coverage</id>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.jacoco</groupId>
+                        <artifactId>jacoco-maven-plugin</artifactId>
+                        <version>0.7.5.201505241946</version>
+                        <configuration>
+                            <excludes>
+                                <exclude>net/ranides/assira/test/**</exclude>
+								
+                                <!--  klasy dostatecznie przetestowane -->
+								
+                                <exclude>net/ranides/assira/collection/AIntCollection.class</exclude>
+                                <exclude>net/ranides/assira/collection/ACollection.class</exclude>
+                                <exclude>net/ranides/assira/collection/IntComparator.class</exclude>
+                                <exclude>net/ranides/assira/collection/HashIntComparator.class</exclude>
+                                <exclude>net/ranides/assira/collection/HashIntComparator$*</exclude>
+                                <exclude>net/ranides/assira/collection/HashComparator.class</exclude>
+                                <exclude>net/ranides/assira/collection/HashComparator$*</exclude>
+                                
+                                <exclude>net/ranides/assira/collection/maps/AMap.class</exclude>
+                                <exclude>net/ranides/assira/collection/maps/AMap$*</exclude>
+                                <exclude>net/ranides/assira/collection/maps/IntMap.class</exclude>
+                                <exclude>net/ranides/assira/collection/maps/IntMap$*</exclude>
+                                <exclude>net/ranides/assira/collection/maps/AIntMap.class</exclude>
+                                <exclude>net/ranides/assira/collection/maps/AIntMap$*</exclude>
+
+                                <exclude>net/ranides/assira/collection/maps/ASortedMap.class</exclude>
+                                <exclude>net/ranides/assira/collection/maps/ASortedMap$*</exclude>
+                                <exclude>net/ranides/assira/collection/maps/AIntSortedMap.class</exclude>
+                                <exclude>net/ranides/assira/collection/maps/AIntSortedMap$*</exclude>
+
+                                <exclude>net/ranides/assira/collection/maps/AHashMap.class</exclude>
+                                <exclude>net/ranides/assira/collection/maps/AHashMap$*</exclude>
+                                <exclude>net/ranides/assira/collection/maps/HashMap.class</exclude>
+                                <exclude>net/ranides/assira/collection/maps/HashMap$*</exclude>
+                                <exclude>net/ranides/assira/collection/maps/AIntHashMap.class</exclude>
+                                <exclude>net/ranides/assira/collection/maps/AIntHashMap$*</exclude>
+                                <exclude>net/ranides/assira/collection/maps/IntHashMap.class</exclude>
+                                <exclude>net/ranides/assira/collection/maps/IntHashMap$*</exclude>
+                                
+                                <exclude>net/ranides/assira/collection/maps/MultiMap.class</exclude>
+                                <exclude>net/ranides/assira/collection/maps/IntMultiMap.class</exclude>
+                                <exclude>net/ranides/assira/collection/maps/HashMultiMap.class</exclude>
+                                <exclude>net/ranides/assira/collection/maps/HashMultiMap$*</exclude>
+                                <exclude>net/ranides/assira/collection/maps/IntHashMultiMap.class</exclude>
+                                <exclude>net/ranides/assira/collection/maps/IntHashMultiMap$*</exclude>
+
+                                <exclude>net/ranides/assira/collection/maps/AVLTreeMap.class</exclude>
+                                <exclude>net/ranides/assira/collection/maps/AVLTreeMap$*</exclude>
+                                <exclude>net/ranides/assira/collection/maps/IntAVLTreeMap.class</exclude>
+                                <exclude>net/ranides/assira/collection/maps/IntAVLTreeMap$*</exclude>
+
+                                <exclude>net/ranides/assira/collection/maps/RBTreeMap.class</exclude>
+                                <exclude>net/ranides/assira/collection/maps/RBTreeMap$*</exclude>
+                                <exclude>net/ranides/assira/collection/maps/IntRBTreeMap.class</exclude>
+                                <exclude>net/ranides/assira/collection/maps/IntRBTreeMap$*</exclude>
+
+                                <exclude>net/ranides/assira/collection/maps/CustomMap.class</exclude>
+                                <exclude>net/ranides/assira/collection/maps/IdentMap.class</exclude>
+
+                                <exclude>net/ranides/assira/collection/sets/ASet.class</exclude>
+                                <exclude>net/ranides/assira/collection/sets/AIntSet.class</exclude>
+
+                                <exclude>net/ranides/assira/collection/sets/ASortedSet.class</exclude>
+                                <exclude>net/ranides/assira/collection/sets/ASortedSet$*</exclude>
+                                <exclude>net/ranides/assira/collection/sets/AIntSortedSet.class</exclude>
+                                <exclude>net/ranides/assira/collection/sets/AIntSortedSet$*</exclude>
+
+                                <exclude>net/ranides/assira/collection/sets/AHashSet.class</exclude>
+                                <exclude>net/ranides/assira/collection/sets/AHashSet$*</exclude>
+                                <exclude>net/ranides/assira/collection/sets/HashSet.class</exclude>
+                                <exclude>net/ranides/assira/collection/sets/IntHashSet.class</exclude>
+                                <exclude>net/ranides/assira/collection/sets/IntHashSet$*</exclude>
+
+                                <exclude>net/ranides/assira/collection/sets/AVLTreeSet.class</exclude>
+                                <exclude>net/ranides/assira/collection/sets/AVLTreeSet$*</exclude>
+                                <exclude>net/ranides/assira/collection/sets/IntAVLTreeSet.class</exclude>
+                                <exclude>net/ranides/assira/collection/sets/IntAVLTreeSet$*</exclude>
+
+                                <exclude>net/ranides/assira/collection/sets/RBTreeSet.class</exclude>
+                                <exclude>net/ranides/assira/collection/sets/RBTreeSet$*</exclude>
+                                <exclude>net/ranides/assira/collection/sets/IntRBTreeSet.class</exclude>
+                                <exclude>net/ranides/assira/collection/sets/IntRBTreeSet$*</exclude>
+
+                                <exclude>net/ranides/assira/collection/sets/CustomSet.class</exclude>
+                                <exclude>net/ranides/assira/collection/sets/IdentSet.class</exclude>
+                                <exclude>net/ranides/assira/collection/sets/AIdentSet.class</exclude>
+                                
+                                <exclude>net/ranides/assira/collection/lookups/Lookup.class</exclude>
+                                <exclude>net/ranides/assira/collection/lookups/Lookup$*</exclude>
+                                <exclude>net/ranides/assira/collection/lookups/ALookup.class</exclude>
+                                <exclude>net/ranides/assira/collection/lookups/ALookup$*</exclude>
+                                <exclude>net/ranides/assira/collection/lookups/ASortedLookup.class</exclude>
+                                <exclude>net/ranides/assira/collection/lookups/ASortedLookup$*</exclude>
+                                
+                                <exclude>net/ranides/assira/collection/lookups/AHashLookup.class</exclude>
+                                <exclude>net/ranides/assira/collection/lookups/AHashLookup$*</exclude>
+                                
+                                <exclude>net/ranides/assira/collection/lookups/AVLTreeLookup.class</exclude>
+                                <exclude>net/ranides/assira/collection/lookups/AVLTreeLookup$*</exclude>
+                                <exclude>net/ranides/assira/collection/lookups/RBTreeLookup.class</exclude>
+                                <exclude>net/ranides/assira/collection/lookups/RBTreeLookup$*</exclude>
+                                
+                                <exclude>net/ranides/assira/collection/lookups/CustomLookup.class</exclude>
+                                <exclude>net/ranides/assira/collection/lookups/HashLookup.class</exclude>
+                                <exclude>net/ranides/assira/collection/lookups/IdentLookup.class</exclude>
+                                
+                                <exclude>net/ranides/assira/collection/lookups/AHashLookup.class</exclude>
+                                <exclude>net/ranides/assira/collection/lookups/AHashLookup$*</exclude>
+                                
+                                <exclude>net/ranides/assira/collection/arrays/ArrayAllocator.class</exclude>
+                                <exclude>net/ranides/assira/collection/arrays/ArraySearch.class</exclude>
+                                <exclude>net/ranides/assira/collection/arrays/ArraySort.class</exclude>
+                                <exclude>net/ranides/assira/collection/arrays/ArraySort$*</exclude>
+                                
+                                <exclude>net/ranides/assira/collection/arrays/IntArrayAllocator.class</exclude>
+                                <exclude>net/ranides/assira/collection/arrays/IntArraySearch.class</exclude>
+                                <exclude>net/ranides/assira/collection/arrays/IntArraySort.class</exclude>
+
+                                <exclude>net/ranides/assira/collection/arrays/NativeArrayAllocator.class</exclude>
+                                <exclude>net/ranides/assira/collection/arrays/NativeArraySearch.class</exclude>
+                                <exclude>net/ranides/assira/collection/arrays/NativeArraySort.class</exclude>
+                                
+                                <exclude>net/ranides/assira/collection/arrays/NativeArray.class</exclude>
+                                <exclude>net/ranides/assira/collection/arrays/NativeArray$*</exclude>
+                                
+                                <!--                                
+                                <exclude>net/ranides/assira/collection/arrays/ArrayUtils.class</exclude>
+                                <exclude>net/ranides/assira/collection/arrays/ArrayUtils$*</exclude>
+                                <exclude>net/ranides/assira/collection/arrays/IntArrayUtils.class</exclude>
+                                <exclude>net/ranides/assira/collection/arrays/IntArrayUtils$*</exclude>
+                                -->
+
+                                <exclude>net/ranides/assira/collection/lists/AIntList.class</exclude>
+                                <exclude>net/ranides/assira/collection/lists/AIntList$*</exclude>
+                                <exclude>net/ranides/assira/collection/lists/IntArrayList.class</exclude>
+                                <exclude>net/ranides/assira/collection/lists/IntArrayList$*</exclude>
+                                <exclude>net/ranides/assira/collection/lists/IntRange.class</exclude>
+                                <exclude>net/ranides/assira/collection/lists/IntRange$*</exclude>
+                                <exclude>net/ranides/assira/collection/lists/NativeArrayList.class</exclude>
+                                <exclude>net/ranides/assira/collection/lists/NativeArrayList$*</exclude>
+								
+                                <exclude>net/ranides/assira/collection/rmq/AIntRMQList.class</exclude>
+                                <exclude>net/ranides/assira/collection/rmq/ARMQList.class</exclude>
+                                <exclude>net/ranides/assira/collection/rmq/IntRMQTable.class</exclude>
+                                <exclude>net/ranides/assira/collection/rmq/IntRMQTree.class</exclude>
+                                <exclude>net/ranides/assira/collection/rmq/IntRMQTree$*</exclude>
+                                <exclude>net/ranides/assira/collection/rmq/RMQTable.class</exclude>
+                                <exclude>net/ranides/assira/collection/rmq/RMQTree.class</exclude>
+                                <exclude>net/ranides/assira/collection/rmq/RMQTree$*</exclude>
+                                
+                                <exclude>net/ranides/assira/text/Charsets.class</exclude>
+                                <exclude>net/ranides/assira/text/MazoviaCharset.class</exclude>
+                                <exclude>net/ranides/assira/text/MazoviaCharset$*</exclude>
+                                <exclude>net/ranides/assira/text/FormatHex.class</exclude>
+                                <exclude>net/ranides/assira/text/FormatNumber.class</exclude>
+                                <exclude>net/ranides/assira/text/FormatNumber$*</exclude>
+								
+								<exclude>net/ranides/assira/trace/ThreadInspector.class</exclude>
+								<exclude>net/ranides/assira/trace/ThreadInspector$*</exclude>
+								<exclude>net/ranides/assira/trace/StackInspector.class</exclude>
+								<exclude>net/ranides/assira/trace/StackInspector$*</exclude>
+								<exclude>net/ranides/assira/trace/ExceptionInspector.class</exclude>
+								<exclude>net/ranides/assira/trace/ExceptionInspector$*</exclude>
+                            </excludes>
+                        </configuration>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+    </profiles>
+	
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.jacoco</groupId>
+                <artifactId>jacoco-maven-plugin</artifactId>
+                <version>0.7.5.201505241946</version>
+                <configuration>
+                    <excludes>
+                        <exclude>net/ranides/assira/test/**</exclude>
+                    </excludes>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+    
+    <repositories>
+        <repository>
+            <id>ranides.net</id>
+            <name>ranides.net</name>
+            <url>http://maven.ranides.net</url>
+        </repository>
+    </repositories>
+    
+    <dependencies>
+        <dependency>
+            <artifactId>assira.asm</artifactId>
+            <groupId>net.ranides</groupId>
+        </dependency>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>net.ranides</groupId>
+            <artifactId>assira.junit</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-api</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-simple</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.google.code.findbugs</groupId>
+            <artifactId>annotations</artifactId>
+            <version>3.0.1u2</version>
+            <scope>provided</scope>
+        </dependency>
+    </dependencies>
 </project>

+ 3 - 4
assira/src/main/java/net/ranides/assira/trace/ThreadInspector.java

@@ -34,11 +34,11 @@ public final class ThreadInspector {
 		return new ThreadInspector(thread.getId());
 	}
 	
-	public static void trace(Logger logger) {
-		if(logger.isTraceEnabled()) {
+	public static void dump(boolean condition, Consumer<String> out) {
+		if(condition) {
 			ThreadInspector info = ThreadInspector.get();
 			if(info.locks() > 0) {
-				info.dump(logger::trace);
+				info.dump(out);
 			}
 		}
 	}
@@ -57,7 +57,6 @@ public final class ThreadInspector {
                 item.getLockedStackFrame()
             ));
         }
-        
         for(LockInfo item : info.getLockedSynchronizers()) {
             out.accept(String.format(" - LOCK : %s 0x%08X", 
                 item.getClassName(), 

+ 18 - 1
assira/src/test/java/net/ranides/assira/trace/ThreadInspectorTest.java

@@ -29,7 +29,15 @@ public class ThreadInspectorTest {
 		" - MONITOR : net.ranides.assira.trace.ThreadInspectorTest$Lock3 * @ net.ranides.assira.trace.ThreadInspectorTest.itestDump(ThreadInspectorTest.java:*)",
 		" - MONITOR : net.ranides.assira.trace.ThreadInspectorTest$Lock2 * @ net.ranides.assira.trace.ThreadInspectorTest.testDump(ThreadInspectorTest.java:*)",
 		" - MONITOR : net.ranides.assira.trace.ThreadInspectorTest$Lock1 * @ net.ranides.assira.trace.ThreadInspectorTest.testDump(ThreadInspectorTest.java:*)",
-		" - LOCK : java.util.concurrent.locks.ReentrantLock$NonfairSync *"
+		" - LOCK : java.util.concurrent.locks.ReentrantLock$NonfairSync *",
+		"1 ...",
+		"THREAD: main 0x00000001 (monitors=3, locks=1)",
+		" - MONITOR : net.ranides.assira.trace.ThreadInspectorTest$Lock3 * @ net.ranides.assira.trace.ThreadInspectorTest.itestDump(ThreadInspectorTest.java:*)",
+		" - MONITOR : net.ranides.assira.trace.ThreadInspectorTest$Lock2 * @ net.ranides.assira.trace.ThreadInspectorTest.testDump(ThreadInspectorTest.java:*)",
+		" - MONITOR : net.ranides.assira.trace.ThreadInspectorTest$Lock1 * @ net.ranides.assira.trace.ThreadInspectorTest.testDump(ThreadInspectorTest.java:*)",
+		" - LOCK : java.util.concurrent.locks.ReentrantLock$NonfairSync *",
+		"2 ...",
+		"3 ..."
 	);
 
 	@Test
@@ -60,12 +68,21 @@ public class ThreadInspectorTest {
             }
         }
 		a.unlock();
+		
+		List<String> out = new ArrayList<>();
+		ThreadInspector.dump(true, out::add);
+		assertEquals(Arrays.asList(), out);
     }
     
     private void itestDump() {
         synchronized(new Lock3()) {
 			List<String> out = new ArrayList<>();
 			ThreadInspector.get().dump(out::add);
+			out.add("1 ...");
+			ThreadInspector.dump(true, out::add);
+			out.add("2 ...");
+			ThreadInspector.dump(false, out::add);
+			out.add("3 ...");
 			assertMatch(DUMP, out);
         }
     }