You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(73) |
Sep
(92) |
Oct
(9) |
Nov
(80) |
Dec
(60) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(92) |
Feb
(52) |
Mar
(71) |
Apr
(64) |
May
(53) |
Jun
(10) |
Jul
(111) |
Aug
(93) |
Sep
(134) |
Oct
|
Nov
|
Dec
|
From: Marek P. <ma...@us...> - 2002-05-05 21:09:31
|
Update of /cvsroot/javaprofiler/library/src/allocator In directory usw-pr-cvs1:/tmp/cvs-serv3328/src/allocator Modified Files: allocator.cpp Log Message: unnecessary changes Index: allocator.cpp =================================================================== RCS file: /cvsroot/javaprofiler/library/src/allocator/allocator.cpp,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -r1.7 -r1.8 *** allocator.cpp 21 Nov 2001 22:31:42 -0000 1.7 --- allocator.cpp 5 May 2002 21:09:24 -0000 1.8 *************** *** 36,40 **** #include "../allocator/allocator.h" - #include "../prof/prof.h" void* Allocator::get( size_t unitSize) { --- 36,39 ---- |
From: Marek P. <ma...@us...> - 2002-04-25 14:38:43
|
Update of /cvsroot/javaprofiler/library In directory usw-pr-cvs1:/tmp/cvs-serv14327 Modified Files: README Log Message: README changed Index: README =================================================================== RCS file: /cvsroot/javaprofiler/library/README,v retrieving revision 1.39 retrieving revision 1.40 diff -C2 -r1.39 -r1.40 *** README 22 Apr 2002 12:04:05 -0000 1.39 --- README 25 Apr 2002 14:38:39 -0000 1.40 *************** *** 2,5 **** --- 2,8 ---- beta version + http://javaprofiler.sourceforge.net/ + http://sourceforge.net/projects/javaprofiler/ + CONTENTS *************** *** 32,38 **** 6.2 Profiler dynamic library command-line arguments ! 7. AUTHORS ! 8. COPYRIGHT and LICENSE --- 35,43 ---- 6.2 Profiler dynamic library command-line arguments ! 7. FEATURES ! ! 8. AUTHORS ! 9. COPYRIGHT and LICENSE *************** *** 485,495 **** ! 7. AUTHORS ! * Marek Przeczek, 2001, 2002 * Petr Luner, 2001, 2002 ! ma...@us... lu...@us... ! 8. COPYRIGHT and LICENSE Java Profiler module (dynamic library as its part) is developed --- 490,617 ---- ! 7. FEATURES ! ! * memory profiling ! ! + number of live/total instances ! + size of all live/total instances together ! ! - various granularity levels ! ! summarized information on each level of profiling ! (classes, methods, traces, object types, threads and ! crosses between them - the whole "cube") ! ! - resolution to threads ! ! * cpu profiling ! ! + optional method of profiling ! ! - exact (slow but accurate) ! - sampling (fast but not accurate) ! ! + pure time spent in given entity while a call of method ! ! - various granularity levels ! ! summarized information on each level of profiling ! (classes, methods, traces, threads and crosses ! between them - the whole "cube") ! ! - resolution to threads ! ! + calltree ! ! - pure time & cumulative time spent in each method ! - number of calls of each method in the stack call tree ! - resolution to threads ! ! * monitor profiling ! ! + pure time spent in given entity while waiting for the monitor ! + number of waitings ! ! - various granularity levels ! ! summarized information on each level of profiling ! (classes, methods, traces, threads and crosses ! between them - the whole "cube") ! ! - resolution to threads ! ! * garbage collector info ! ! + number of used objects on the heap ! + amount of space used by the objects ! + total amount of object space ! + time of start/end when GC was running ! ! * general information about Java entity ! ! + class ! + method ! + thread ! + thread group ! + object (type) ! + arena ! + garbage collector ! ! * various granularity levels for each type ! of profiling independent on the other ones ! ! * resolution to threads can be turned on/off ! for each type of profiling independently ! on the other ones ! ! * types of communication ! ! + tcp sockets ! + shared memory segments ! ! * connection modes ! ! + dynamic profiler library acting as ! ! - server ! - client ! ! * management of profiled JVM ! ! + suspending/resuming whole JVM ! + disabling/enabling GC ! + running GC on request ! + exiting JVM ! ! * Java profiling interface ! ! + Java classes for accessing all features ! of dynamic profiler library thru methods of one class ! ! * operating system support ! ! + Microsoft Windows 9x, Me, NT, 2000 (XP) ! + SunOS 5.8 (5.7) ! + Linux ! ! * additional features ! ! + memory leaks ! + snapshots, realtime data gathering ! + remote profiling ! + profiling of clients hidden behind proxies ! ! ! NOTE: each of the features above can be turned on/off or set ! to different granularity level independently on the others. ! ! ! 8. AUTHORS ! * Marek Przeczek, (C) 2000-2002 * Petr Luner, (C) 2000-2002 ! ma...@us... lu...@us... ! 9. COPYRIGHT and LICENSE Java Profiler module (dynamic library as its part) is developed |
From: Lukas P. <pe...@us...> - 2002-04-23 14:33:37
|
Update of /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/realtime In directory usw-pr-cvs1:/tmp/cvs-serv10585 Modified Files: AllocThreadMethodR.java AllocThreadTraceR.java AllocTypeMethodR.java AllocTypeThreadMethodR.java AllocTypeThreadR.java AllocTypeThreadTraceR.java AllocTypeTraceR.java ImageR.java Added Files: MultiRootDataR.java Log Message: fixed lazy object creation bug --- NEW FILE: MultiRootDataR.java --- /* * Sun Public License Notice * * The contents of this file are subject to the Sun Public License * Version 1.0 (the "License"); you may not use this file except * in compliance with the License. A copy of the License is available * at http://www.sun.com/ * * The Original Code is the Java Profiler module. The Initial Developers * of the Original Code are Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, * Lukas Petru and Marek Przeczek. * * Portions created by Jan Stola are Copyright (C) 2000-2001. * All Rights Reserved. * * Portions created by Pavel Vacha are Copyright (C) 2000-2001. * All Rights Reserved. * * Portions created by Michal Pise are Copyright (C) 2000-2001. * All Rights Reserved. * * Portions created by Petr Luner are Copyright (C) 2000-2001. * All Rights Reserved. * * Portions created by Lukas Petru are Copyright (C) 2000-2001. * All Rights Reserved. * * Portions created by Marek Przeczek are Copyright (C) 2000-2001. * All Rights Reserved. * * Contributors: Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, * Lukas Petru and Marek Przeczek. */ package net.sourceforge.javaprofiler.jpiimpl.realtime; import net.sourceforge.javaprofiler.jpiimpl.commun.IProf; /** Superclass for multi-rooted realtime data classes. * @author Lukas Petru */ abstract class MultiRootDataR extends DataR { /** Finishes multi-root object construction with info gained from * profiled VM. * @param typeId Identification of <code>AllocType</code> root. * @param threadId Identification of <code>Thread</code> root. * @param locationId Identification of <code>Location</code> root. * @param sid Object info. */ abstract void construct(Integer typeId, Integer threadId, Integer locationId, IProf.sID sid); } Index: AllocThreadMethodR.java =================================================================== RCS file: /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/realtime/AllocThreadMethodR.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** AllocThreadMethodR.java 21 Apr 2002 19:43:48 -0000 1.2 --- AllocThreadMethodR.java 23 Apr 2002 14:33:34 -0000 1.3 *************** *** 46,50 **** * @author Lukas Petru */ ! public class AllocThreadMethodR extends DataR implements AllocThreadMethod { /** Tells if any data was loaded from profiled VM about this Type. */ private boolean isReady; --- 46,51 ---- * @author Lukas Petru */ ! public class AllocThreadMethodR extends MultiRootDataR implements ! AllocThreadMethod { /** Tells if any data was loaded from profiled VM about this Type. */ private boolean isReady; *************** *** 92,103 **** image=RtImage; objId=new Integer(sid.objId); ! // resolve roots ! thread=image.resolveThread(threadId); ! location=image.resolveMethod(locationId); ! // resolve parents ! isReady=true; ! // add to parents' lists ! thread.addAllocThreadMethod(this); ! location.addAllocThreadMethod(this); } --- 93,97 ---- image=RtImage; objId=new Integer(sid.objId); ! construct(typeId, threadId, locationId, sid); } *************** *** 218,221 **** --- 212,230 ---- void addAllocThreadTrace(AllocThreadTrace o) { allocThreadTraces.add(o); + } + + /** Finishes full object construction. */ + void construct(Integer typeId, Integer threadId, Integer locationId, + IProf.sID sid) { + if (! isReady) { + // resolve roots + thread=image.resolveThread(threadId); + location=image.resolveMethod(locationId); + // resolve parents + isReady=true; + // add to parents' lists + thread.addAllocThreadMethod(this); + location.addAllocThreadMethod(this); + } } Index: AllocThreadTraceR.java =================================================================== RCS file: /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/realtime/AllocThreadTraceR.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** AllocThreadTraceR.java 21 Apr 2002 19:43:48 -0000 1.1 --- AllocThreadTraceR.java 23 Apr 2002 14:33:34 -0000 1.2 *************** *** 46,50 **** * @author Lukas Petru */ ! public class AllocThreadTraceR extends DataR implements AllocThreadTrace { /** Tells if any data was loaded from profiled VM about this Type. */ private boolean isReady; --- 46,51 ---- * @author Lukas Petru */ ! public class AllocThreadTraceR extends MultiRootDataR implements ! AllocThreadTrace { /** Tells if any data was loaded from profiled VM about this Type. */ private boolean isReady; *************** *** 90,109 **** image=RtImage; objId=new Integer(sid.objId); ! // resolve roots ! thread=image.resolveThread(threadId); ! location=image.resolveAllocTrace(locationId); ! // resolve parent ! Integer methodId=new Integer(sid.parentUpObjId); ! if (image.containsId(methodId)) ! method=(AllocThreadMethodR) image.getObject(methodId); ! else { ! method=new AllocThreadMethodR(methodId, image); ! image.putObject(methodId, method); ! } ! isReady=true; ! // add to parents' lists ! thread.addAllocThreadTrace(this); ! location.addAllocThreadTrace(this); ! method.addAllocThreadTrace(this); } --- 91,95 ---- image=RtImage; objId=new Integer(sid.objId); ! construct(typeId, threadId, locationId, sid); } *************** *** 214,217 **** --- 200,226 ---- void addAllocTypeThreadTrace(AllocTypeThreadTrace o) { allocTypeThreadTraces.add(o); + } + + /** Finishes full object construction. */ + void construct(Integer typeId, Integer threadId, Integer locationId, + IProf.sID sid) { + if (! isReady) { + // resolve roots + thread=image.resolveThread(threadId); + location=image.resolveAllocTrace(locationId); + // resolve parent + Integer methodId=new Integer(sid.parentUpObjId); + if (image.containsId(methodId)) + method=(AllocThreadMethodR) image.getObject(methodId); + else { + method=new AllocThreadMethodR(methodId, image); + image.putObject(methodId, method); + } + isReady=true; + // add to parents' lists + thread.addAllocThreadTrace(this); + location.addAllocThreadTrace(this); + method.addAllocThreadTrace(this); + } } Index: AllocTypeMethodR.java =================================================================== RCS file: /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/realtime/AllocTypeMethodR.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** AllocTypeMethodR.java 15 Apr 2002 19:46:05 -0000 1.2 --- AllocTypeMethodR.java 23 Apr 2002 14:33:34 -0000 1.3 *************** *** 44,48 **** * @author Lukas Petru */ ! public class AllocTypeMethodR extends DataR implements AllocTypeMethod { /** Tells if any data was loaded from profiled VM about this Type. */ private boolean isReady; --- 44,49 ---- * @author Lukas Petru */ ! public class AllocTypeMethodR extends MultiRootDataR implements AllocTypeMethod ! { /** Tells if any data was loaded from profiled VM about this Type. */ private boolean isReady; *************** *** 88,98 **** image=RtImage; objId=new Integer(sid.objId); ! // resolve roots ! type=image.resolveAllocType(typeId); ! location=image.resolveMethod(locationId); ! isReady=true; ! // add to parents' lists ! type.addAllocTypeMethod(this); ! location.addAllocTypeMethod(this); } --- 89,93 ---- image=RtImage; objId=new Integer(sid.objId); ! construct(typeId, threadId, locationId, sid); } *************** *** 218,221 **** --- 213,230 ---- void addAllocTypeThreadMethod(AllocTypeThreadMethod o) { allocTypeThreadMethods.add(o); + } + + /** Finishes full object construction. */ + void construct(Integer typeId, Integer threadId, Integer locationId, + IProf.sID sid) { + if (! isReady) { + // resolve roots + type=image.resolveAllocType(typeId); + location=image.resolveMethod(locationId); + isReady=true; + // add to parents' lists + type.addAllocTypeMethod(this); + location.addAllocTypeMethod(this); + } } Index: AllocTypeThreadMethodR.java =================================================================== RCS file: /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/realtime/AllocTypeThreadMethodR.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** AllocTypeThreadMethodR.java 21 Apr 2002 19:43:48 -0000 1.2 --- AllocTypeThreadMethodR.java 23 Apr 2002 14:33:34 -0000 1.3 *************** *** 46,50 **** * @author Lukas Petru */ ! public class AllocTypeThreadMethodR extends DataR implements AllocTypeThreadMethod { /** Tells if any data was loaded from profiled VM about this Type. */ --- 46,50 ---- * @author Lukas Petru */ ! public class AllocTypeThreadMethodR extends MultiRootDataR implements AllocTypeThreadMethod { /** Tells if any data was loaded from profiled VM about this Type. */ *************** *** 94,128 **** image=RtImage; objId=new Integer(sid.objId); ! // resolve roots ! type=image.resolveAllocType(typeId); ! thread=image.resolveThread(threadId); ! location=image.resolveMethod(locationId); ! // resolve parents ! Integer typeMethodId=new Integer(sid.parentLeftObjId); ! if (image.containsId(typeMethodId)) ! typeMethod=(AllocTypeMethodR) image.getObject(typeMethodId); ! else { ! typeMethod=new AllocTypeMethodR(typeMethodId, image); ! image.putObject(typeMethodId, typeMethod); ! } ! Integer typeThreadId=new Integer(sid.parentUpObjId); ! if (image.containsId(typeThreadId)) ! typeThread=(AllocTypeThreadR) image.getObject(typeThreadId); ! else { ! typeThread=new AllocTypeThreadR(typeThreadId, image); ! image.putObject(typeThreadId, typeThread); ! } ! Integer threadMethodId=new Integer(sid.parentRightObjId); ! if (image.containsId(threadMethodId)) ! threadMethod=(AllocThreadMethodR) image.getObject(threadMethodId); ! else { ! threadMethod=new AllocThreadMethodR(threadMethodId, image); ! image.putObject(threadMethodId, threadMethod); ! } ! isReady=true; ! // add to parents' lists ! typeMethod.addAllocTypeThreadMethod(this); ! typeThread.addAllocTypeThreadMethod(this); ! threadMethod.addAllocTypeThreadMethod(this); } --- 94,98 ---- image=RtImage; objId=new Integer(sid.objId); ! construct(typeId, threadId, locationId, sid); } *************** *** 234,237 **** --- 204,245 ---- void addAllocTypeThreadTrace(AllocTypeThreadTrace o) { allocTypeThreadTraces.add(o); + } + + /** Finishes full object construction. */ + void construct(Integer typeId, Integer threadId, Integer locationId, + IProf.sID sid) { + if (! isReady) { + // resolve roots + type=image.resolveAllocType(typeId); + thread=image.resolveThread(threadId); + location=image.resolveMethod(locationId); + // resolve parents + Integer typeMethodId=new Integer(sid.parentLeftObjId); + if (image.containsId(typeMethodId)) + typeMethod=(AllocTypeMethodR) image.getObject(typeMethodId); + else { + typeMethod=new AllocTypeMethodR(typeMethodId, image); + image.putObject(typeMethodId, typeMethod); + } + Integer typeThreadId=new Integer(sid.parentUpObjId); + if (image.containsId(typeThreadId)) + typeThread=(AllocTypeThreadR) image.getObject(typeThreadId); + else { + typeThread=new AllocTypeThreadR(typeThreadId, image); + image.putObject(typeThreadId, typeThread); + } + Integer threadMethodId=new Integer(sid.parentRightObjId); + if (image.containsId(threadMethodId)) + threadMethod=(AllocThreadMethodR) image.getObject(threadMethodId); + else { + threadMethod=new AllocThreadMethodR(threadMethodId, image); + image.putObject(threadMethodId, threadMethod); + } + isReady=true; + // add to parents' lists + typeMethod.addAllocTypeThreadMethod(this); + typeThread.addAllocTypeThreadMethod(this); + threadMethod.addAllocTypeThreadMethod(this); + } } Index: AllocTypeThreadR.java =================================================================== RCS file: /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/realtime/AllocTypeThreadR.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** AllocTypeThreadR.java 21 Apr 2002 19:43:48 -0000 1.3 --- AllocTypeThreadR.java 23 Apr 2002 14:33:34 -0000 1.4 *************** *** 46,50 **** * @author Lukas Petru */ ! public class AllocTypeThreadR extends DataR implements AllocTypeThread { /** Tells if any data was loaded from profiled VM about this Type. */ private boolean isReady; --- 46,51 ---- * @author Lukas Petru */ ! public class AllocTypeThreadR extends MultiRootDataR implements AllocTypeThread ! { /** Tells if any data was loaded from profiled VM about this Type. */ private boolean isReady; *************** *** 90,100 **** image=RtImage; objId=new Integer(sid.objId); ! // resolve roots ! type=image.resolveAllocType(typeId); ! thread=image.resolveThread(threadId); ! isReady=true; ! // add to parents' lists ! type.addAllocTypeThread(this); ! thread.addAllocTypeThread(this); } --- 91,95 ---- image=RtImage; objId=new Integer(sid.objId); ! construct(typeId, threadId, locationId, sid); } *************** *** 222,225 **** --- 217,234 ---- void addAllocTypeThreadTrace(AllocTypeThreadTrace o) { allocTypeThreadTraces.add(o); + } + + /** Finishes full object construction. */ + void construct(Integer typeId, Integer threadId, Integer locationId, + IProf.sID sid) { + if (! isReady) { + // resolve roots + type=image.resolveAllocType(typeId); + thread=image.resolveThread(threadId); + isReady=true; + // add to parents' lists + type.addAllocTypeThread(this); + thread.addAllocTypeThread(this); + } } Index: AllocTypeThreadTraceR.java =================================================================== RCS file: /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/realtime/AllocTypeThreadTraceR.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** AllocTypeThreadTraceR.java 21 Apr 2002 19:43:48 -0000 1.1 --- AllocTypeThreadTraceR.java 23 Apr 2002 14:33:34 -0000 1.2 *************** *** 46,50 **** * @author Lukas Petru */ ! public class AllocTypeThreadTraceR extends DataR implements AllocTypeThreadTrace { /** Tells if any data was loaded from profiled VM about this Type. */ --- 46,50 ---- * @author Lukas Petru */ ! public class AllocTypeThreadTraceR extends MultiRootDataR implements AllocTypeThreadTrace { /** Tells if any data was loaded from profiled VM about this Type. */ *************** *** 88,125 **** image=RtImage; objId=new Integer(sid.objId); ! // resolve roots ! type=image.resolveAllocType(typeId); ! thread=image.resolveThread(threadId); ! location=image.resolveAllocTrace(locationId); ! // resolve parents ! Integer methodId=new Integer(sid.parentUpObjId); ! if (image.containsId(methodId)) ! method=(AllocTypeThreadMethodR) image.getObject(methodId); ! else { ! method=new AllocTypeThreadMethodR(methodId, image); ! image.putObject(methodId, method); ! } ! Integer typeTraceId=new Integer(sid.parentLeftObjId); ! if (image.containsId(typeTraceId)) ! typeTrace=(AllocTypeTraceR) image.getObject(typeTraceId); ! else { ! typeTrace=new AllocTypeTraceR(typeTraceId, image); ! image.putObject(typeTraceId, typeTrace); ! } ! Integer threadTraceId=new Integer(sid.parentRightObjId); ! if (image.containsId(threadTraceId)) ! threadTrace=(AllocThreadTraceR) image.getObject(threadTraceId); ! else { ! threadTrace=new AllocThreadTraceR(threadTraceId, image); ! image.putObject(threadTraceId, threadTrace); ! } ! typeThread=(AllocTypeThreadR) method.getParentAllocTypeThread(); ! ! isReady=true; ! // add to parents' lists ! method.addAllocTypeThreadTrace(this); ! typeTrace.addAllocTypeThreadTrace(this); ! threadTrace.addAllocTypeThreadTrace(this); ! typeThread.addAllocTypeThreadTrace(this); } --- 88,92 ---- image=RtImage; objId=new Integer(sid.objId); ! construct(typeId, threadId, locationId, sid); } *************** *** 223,226 **** --- 190,234 ---- // ---------- private / package + /** Finishes full object construction. */ + void construct(Integer typeId, Integer threadId, Integer locationId, + IProf.sID sid) { + if (! isReady) { + // resolve roots + type=image.resolveAllocType(typeId); + thread=image.resolveThread(threadId); + location=image.resolveAllocTrace(locationId); + // resolve parents + Integer methodId=new Integer(sid.parentUpObjId); + if (image.containsId(methodId)) + method=(AllocTypeThreadMethodR) image.getObject(methodId); + else { + method=new AllocTypeThreadMethodR(methodId, image); + image.putObject(methodId, method); + } + Integer typeTraceId=new Integer(sid.parentLeftObjId); + if (image.containsId(typeTraceId)) + typeTrace=(AllocTypeTraceR) image.getObject(typeTraceId); + else { + typeTrace=new AllocTypeTraceR(typeTraceId, image); + image.putObject(typeTraceId, typeTrace); + } + Integer threadTraceId=new Integer(sid.parentRightObjId); + if (image.containsId(threadTraceId)) + threadTrace=(AllocThreadTraceR) image.getObject(threadTraceId); + else { + threadTrace=new AllocThreadTraceR(threadTraceId, image); + image.putObject(threadTraceId, threadTrace); + } + typeThread=(AllocTypeThreadR) method.getParentAllocTypeThread(); + + isReady=true; + // add to parents' lists + method.addAllocTypeThreadTrace(this); + typeTrace.addAllocTypeThreadTrace(this); + threadTrace.addAllocTypeThreadTrace(this); + typeThread.addAllocTypeThreadTrace(this); + } + } + /** Determines whether refresh should be done and does, if so. */ Index: AllocTypeTraceR.java =================================================================== RCS file: /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/realtime/AllocTypeTraceR.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** AllocTypeTraceR.java 21 Apr 2002 19:43:48 -0000 1.2 --- AllocTypeTraceR.java 23 Apr 2002 14:33:34 -0000 1.3 *************** *** 45,49 **** * @author Lukas Petru */ ! public class AllocTypeTraceR extends DataR implements AllocTypeTrace { /** Tells if any data was loaded from profiled VM about this Type. */ private boolean isReady; --- 45,49 ---- * @author Lukas Petru */ ! public class AllocTypeTraceR extends MultiRootDataR implements AllocTypeTrace { /** Tells if any data was loaded from profiled VM about this Type. */ private boolean isReady; *************** *** 89,108 **** image=RtImage; objId=new Integer(sid.objId); ! // resolve roots ! type=image.resolveAllocType(typeId); ! location=image.resolveAllocTrace(locationId); ! // resolve parent ! Integer methodId=new Integer(sid.parentUpObjId); ! if (image.containsId(methodId)) ! method=(AllocTypeMethodR) image.getObject(methodId); ! else { ! method=new AllocTypeMethodR(methodId, image); ! image.putObject(methodId, method); ! } ! isReady=true; ! // add to parents' lists ! type.addAllocTypeTrace(this); ! location.addAllocTypeTrace(this); ! method.addAllocTypeTrace(this); } --- 89,93 ---- image=RtImage; objId=new Integer(sid.objId); ! construct(typeId, threadId, locationId, sid); } *************** *** 213,216 **** --- 198,224 ---- void addAllocTypeThreadTrace(AllocTypeThreadTrace o) { allocTypeThreadTraces.add(o); + } + + /** Finishes full object construction. */ + void construct(Integer typeId, Integer threadId, Integer locationId, + IProf.sID sid) { + if (! isReady) { + // resolve roots + type=image.resolveAllocType(typeId); + location=image.resolveAllocTrace(locationId); + // resolve parent + Integer methodId=new Integer(sid.parentUpObjId); + if (image.containsId(methodId)) + method=(AllocTypeMethodR) image.getObject(methodId); + else { + method=new AllocTypeMethodR(methodId, image); + image.putObject(methodId, method); + } + isReady=true; + // add to parents' lists + type.addAllocTypeTrace(this); + location.addAllocTypeTrace(this); + method.addAllocTypeTrace(this); + } } Index: ImageR.java =================================================================== RCS file: /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/realtime/ImageR.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** ImageR.java 21 Apr 2002 19:43:48 -0000 1.3 --- ImageR.java 23 Apr 2002 14:33:34 -0000 1.4 *************** *** 112,115 **** --- 112,123 ---- final Constructor allocThreadTraceFactory; final Constructor allocTypeThreadTraceFactory; + // multi-root ID factories + final Constructor allocTypeMethodIDFactory; + final Constructor allocTypeTraceIDFactory; + final Constructor allocTypeThreadIDFactory; + final Constructor allocThreadMethodIDFactory; + final Constructor allocTypeThreadMethodIDFactory; + final Constructor allocThreadTraceIDFactory; + final Constructor allocTypeThreadTraceIDFactory; Set getAllFlags=new HashSet(); *************** *** 217,220 **** --- 225,252 ---- "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocTypeThreadTraceR" ).getDeclaredConstructor(mrParameterTypes); + // init multi-root ID factories + mrParameterTypes=new java.lang.Class[] { + integerClass, this.getClass() }; + allocTypeMethodIDFactory=java.lang.Class.forName( + "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocTypeMethodR" + ).getDeclaredConstructor(mrParameterTypes); + allocTypeTraceIDFactory=java.lang.Class.forName( + "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocTypeTraceR") + .getDeclaredConstructor(mrParameterTypes); + allocTypeThreadIDFactory=java.lang.Class.forName( + "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocTypeThreadR" + ).getDeclaredConstructor(mrParameterTypes); + allocThreadMethodIDFactory=java.lang.Class.forName( + "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocThreadMethodR" + ).getDeclaredConstructor(mrParameterTypes); + allocTypeThreadMethodIDFactory=java.lang.Class.forName( + "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocTypeThreadMethodR" + ).getDeclaredConstructor(mrParameterTypes); + allocThreadTraceIDFactory=java.lang.Class.forName( + "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocThreadTraceR" + ).getDeclaredConstructor(mrParameterTypes); + allocTypeThreadTraceIDFactory=java.lang.Class.forName( + "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocTypeThreadTraceR" + ).getDeclaredConstructor(mrParameterTypes); } catch (ClassNotFoundException e) { throw new RuntimeException(e); *************** *** 242,248 **** Integer oId=new Integer(sid.objId); DataR dataObject; ! if ( containsId(oId) ) dataObject=getObject(oId); ! else { try { dataObject=(DataR) factory.newInstance(new Object[] {sid, this --- 274,281 ---- Integer oId=new Integer(sid.objId); DataR dataObject; ! if ( containsId(oId) ) { dataObject=getObject(oId); ! dataObject.construct(sid); ! } else { try { dataObject=(DataR) factory.newInstance(new Object[] {sid, this *************** *** 391,402 **** IProf.sID sid=(IProf.sID) itChildren.next(); Integer oId=new Integer(sid.objId); ! DataR dataObject; ! if ( containsId(oId) ) ! dataObject=getObject(oId); ! else { ! parentMap.put(varyKey, new Integer(sid.infoId)); try { ! dataObject=(DataR) factory.newInstance(new Object[] { ! parentMap.get(TYPE_KEY), parentMap.get(THREAD_KEY), parentMap.get(LOCATION_KEY), sid, this}); } catch (InstantiationException e) { --- 424,438 ---- IProf.sID sid=(IProf.sID) itChildren.next(); Integer oId=new Integer(sid.objId); ! MultiRootDataR dataObject; ! parentMap.put(varyKey, new Integer(sid.infoId)); ! if ( containsId(oId) ) { ! dataObject=(MultiRootDataR) getObject(oId); ! dataObject.construct((Integer) parentMap.get(TYPE_KEY), ! (Integer) parentMap.get(THREAD_KEY), (Integer) parentMap. ! get(LOCATION_KEY), sid); ! } else { try { ! dataObject=(MultiRootDataR) factory.newInstance(new Object[] ! { parentMap.get(TYPE_KEY), parentMap.get(THREAD_KEY), parentMap.get(LOCATION_KEY), sid, this}); } catch (InstantiationException e) { *************** *** 551,554 **** --- 587,619 ---- boolean getAlwaysRefresh() { return isAlwaysRefresh; + } + + /** Find object by its objId. If none such object exists, create new + * object using given constructor. + * @param oId Object ID. + * @param factory Constructor to create new object. Parameter must be + * "IDFactory". + */ + MultiRootDataR resolveObject(Integer oId, java.lang.reflect.Constructor + factory) { + MultiRootDataR o; + if (containsId(oId)) + o=(MultiRootDataR) getObject(oId); + else { + try { + o=(MultiRootDataR) factory.newInstance(new Object[] {oId, this}) + ; + } catch (InstantiationException e) { + throw new RuntimeException(e); + } catch (IllegalAccessException e) { + throw new RuntimeException(e); + } catch (IllegalArgumentException e) { + throw new RuntimeException(e); + } catch (java.lang.reflect.InvocationTargetException e) { + throw new RuntimeException(e); + } + putObject(oId, o); + } + return o; } |
From: Marek P. <ma...@us...> - 2002-04-22 12:04:07
|
Update of /cvsroot/javaprofiler/library In directory usw-pr-cvs1:/tmp/cvs-serv21217 Modified Files: README config.mk Log Message: readme changed Index: README =================================================================== RCS file: /cvsroot/javaprofiler/library/README,v retrieving revision 1.38 retrieving revision 1.39 diff -C2 -r1.38 -r1.39 *** README 4 Apr 2002 00:49:14 -0000 1.38 --- README 22 Apr 2002 12:04:05 -0000 1.39 *************** *** 128,144 **** doc/ documentation (most of it is generated during compilation) ! doc/interface/ project documentation of sources ! of Java interface for the library ! doc/library/ project documentation of sources ! of the profiler dynamic library ! doc/native/ project documentation of sources ! of native Java classes of the interface ! doc/dia/ data flows, schemes and relations between ! structures inside of profiler dynamic library ! doc/dia/pdf/ Dia files exported to PDF format --- 128,150 ---- doc/ documentation (most of it is generated during compilation) ! doc/interface/ project documentation of sources ! of Java interface for the library ! doc/library/ project documentation of sources ! of the profiler dynamic library ! doc/native/ project documentation of sources ! of native Java classes of the interface ! doc/communication/ communication interface frames, ! format and types of messages ! doc/communication/pdf/ Dia files exported to PDF format ! ! doc/dia/ data flows, schemes and relations between ! structures inside of profiler dynamic ! library ! ! doc/dia/pdf/ Dia files exported to PDF format *************** *** 179,183 **** * GNU C/C++ 3.0.2 (gcc.gnu.org) [for free] ! * JDK 1.4.0 release candidate (java.sun.com) [for free] * Doxygen 1.2.12 (www.doxygen.org) [for free] --- 185,189 ---- * GNU C/C++ 3.0.2 (gcc.gnu.org) [for free] ! * JDK 1.4.0 (java.sun.com) [for free] * Doxygen 1.2.12 (www.doxygen.org) [for free] Index: config.mk =================================================================== RCS file: /cvsroot/javaprofiler/library/config.mk,v retrieving revision 1.38 retrieving revision 1.39 diff -C2 -r1.38 -r1.39 *** config.mk 16 Apr 2002 12:41:35 -0000 1.38 --- config.mk 22 Apr 2002 12:04:05 -0000 1.39 *************** *** 1,12 **** ################################################################ # configuration file ! # Microsoft Windows 9x/NT4.0/2000, x86, Visual C/C++ 6.0 # # author: Marek Przeczek ! PROF_LIBRARY_NAME = profiler\profiler.dll PROF_JAVA_INTERF_PACKAGE = IProf.jar ! NATIVE_LIBRARY_NAME = CommunShMem.dll ################################################################ --- 1,12 ---- ################################################################ # configuration file ! # Linux, x86, GNU C/C++ 3.0.2 # # author: Marek Przeczek ! PROF_LIBRARY_NAME = profiler/libprofiler.so PROF_JAVA_INTERF_PACKAGE = IProf.jar ! NATIVE_LIBRARY_NAME = libCommunShMem.so ################################################################ *************** *** 15,28 **** # do not use "\" as a last character in path definition ! COMPILER_PATH = C:\Program Files\Microsoft Visual Studio\VC98 ! JAVA_PATH = C:\j2sdk1.4.0 ! DOXYGEN_PATH = C:\Program Files\doxygen-1.2.12 ! ! CCC = "$(COMPILER_PATH)\Bin\cl" ! LD = "$(COMPILER_PATH)\Bin\link" ! JAVAC = "$(JAVA_PATH)\bin\javac" ! JAVAH = "$(JAVA_PATH)\bin\javah" ! JAR = "$(JAVA_PATH)\bin\jar" ! DOXYGEN = "$(DOXYGEN_PATH)\bin\doxygen" ################################################################ --- 15,28 ---- # do not use "\" as a last character in path definition ! COMPILER_PATH = /home2/mm/gcc-3.0.2 ! JAVA_PATH = /home2/mm/j2sdk1.4.0 ! DOXYGEN_PATH = /home2/mm ! ! CCC = "$(COMPILER_PATH)/bin/g++" ! LD = "$(COMPILER_PATH)/bin/g++" ! JAVAC = "$(JAVA_PATH)/bin/javac" ! JAVAH = "$(JAVA_PATH)/bin/javah" ! JAR = "$(JAVA_PATH)/bin/jar" ! DOXYGEN = "$(DOXYGEN_PATH)/bin/doxygen" ################################################################ *************** *** 31,35 **** DOXYGENFLAGS = ! JAVACFLAGS = -classpath ..\..\src2\$(PROF_JAVA_INTERF_PACKAGE) ################################################################ --- 31,35 ---- DOXYGENFLAGS = ! JAVACFLAGS = -classpath ../../src2/$(PROF_JAVA_INTERF_PACKAGE) ################################################################ *************** *** 37,70 **** # modify as needed ! DEFINES = /DWIN32 /DUSE_RAW_MONITORS /DUSE_ALLOCATOR /DEXPERIMENTAL ! INCLUDES = /I "$(JAVA_PATH)\include" /I "$(JAVA_PATH)\include\win32" # debug or not ? # choose one of following two possibilities ! FLAGS = /Od /Zi /D_DEBUG /MDd /LDd ! #FLAGS = /O2 /Og /Oi /Ot /Ox /DNDEBUG /MD /LD /G6 /GD ! LDFLAGS = /NOLOGO /DLL /OUT:$(PROF_LIBRARY_NAME) ! LDLIBS = wsock32.lib winmm.lib ! LDFLAGS2 = /NOLOGO /DLL /OUT:$(NATIVE_LIBRARY_NAME) LDLIBS2 = ! CPPFLAGS = /nologo /c $(FLAGS) $(DEFINES) $(INCLUDES) ################################################################ # MAKEFILE ! MFLAGS = /NOLOGO /f Makefile.mak include dir.info ! all: ! for %i in (xxx $(DIRS)) do if not %%i == xxx $(MAKE) $(MFLAGS) %%i.dir ! for %i in (xxx $(FILES)) do if not %%i == xxx $(MAKE) $(MFLAGS) %%i.obj ! ! clean: ! for %i in (xxx $(CLEAN_FILES)) do if exist %%i del %%i ! for %i in (xxx $(DIRS)) do if not %%i == xxx $(MAKE) $(MFLAGS) %%i.clean --- 37,68 ---- # modify as needed ! DEFINES = -DLINUX -DUSE_RAW_MONITORS -DUSE_ALLOCATOR -DEXPERIMENTAL -fpic ! INCLUDES = -I$(JAVA_PATH)/include -I$(JAVA_PATH)/include/linux # debug or not ? # choose one of following two possibilities ! FLAGS = -O0 -D_DEBUG ! #FLAGS = -O3 -DNDEBUG -fno-rtti -fno-exceptions ! LDFLAGS = $(DEFINES) -shared -o $(PROF_LIBRARY_NAME) ! LDLIBS = ! LDFLAGS2 = $(DEFINES) -shared -o $(NATIVE_LIBRARY_NAME) LDLIBS2 = ! CPPFLAGS = -c $(FLAGS) $(DEFINES) $(INCLUDES) ################################################################ # MAKEFILE ! MFLAGS = -f Makefile -C include dir.info ! all: $(addsuffix .dir.2, $(DIRS)) $(addsuffix .o, $(FILES)) ! ! clean: $(addsuffix .clean.2, $(DIRS)) ! rm -Rf $(CLEAN_FILES) ! |
From: Lukas P. <pe...@us...> - 2002-04-21 19:43:57
|
Update of /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/realtime In directory usw-pr-cvs1:/tmp/cvs-serv32693 Modified Files: AllocThreadMethodR.java AllocTraceR.java AllocTypeThreadMethodR.java AllocTypeThreadR.java AllocTypeTraceR.java ImageR.java ThreadR.java Added Files: AllocThreadTraceR.java AllocTypeThreadTraceR.java Log Message: added alloc classes --- NEW FILE: AllocThreadTraceR.java --- /* * Sun Public License Notice * * The contents of this file are subject to the Sun Public License * Version 1.0 (the "License"); you may not use this file except * in compliance with the License. A copy of the License is available * at http://www.sun.com/ * * The Original Code is the Java Profiler module. The Initial Developers * of the Original Code are Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, * Lukas Petru and Marek Przeczek. * * Portions created by Jan Stola are Copyright (C) 2000-2001. * All Rights Reserved. * * Portions created by Pavel Vacha are Copyright (C) 2000-2001. * All Rights Reserved. * * Portions created by Michal Pise are Copyright (C) 2000-2001. * All Rights Reserved. * * Portions created by Petr Luner are Copyright (C) 2000-2001. * All Rights Reserved. * * Portions created by Lukas Petru are Copyright (C) 2000-2001. * All Rights Reserved. * * Portions created by Marek Przeczek are Copyright (C) 2000-2001. * All Rights Reserved. * * Contributors: Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, * Lukas Petru and Marek Przeczek. */ package net.sourceforge.javaprofiler.jpiimpl.realtime; import java.util.*; import net.sourceforge.javaprofiler.api.*; import net.sourceforge.javaprofiler.api.Class; import net.sourceforge.javaprofiler.api.Thread; import net.sourceforge.javaprofiler.api.ThreadGroup; import net.sourceforge.javaprofiler.jpiimpl.commun.IProf; import net.sourceforge.javaprofiler.jpiimpl.commun.IProfException; /** Implementation of API AllocThreadTrace * @author Lukas Petru */ public class AllocThreadTraceR extends DataR implements AllocThreadTrace { /** Tells if any data was loaded from profiled VM about this Type. */ private boolean isReady; /** VM Image that constructed this object. */ private ImageR image; /** Object identification. */ private final Integer objId; // roots to which this object is linked private ThreadR thread; private AllocTraceR location; // parents private AllocThreadMethodR method; // memory info private long numLiveInstances; private long numTotalInstances; private long sizeLiveInstances; private long sizeTotalInstances; // lists for children private final List allocTypeThreadTraces=new ArrayList(0); // unmodifiable variants of lists for children private final List roAllocTypeThreadTraces=Collections.unmodifiableList( allocTypeThreadTraces); /** Constructs multi-rooted object * @param typeId Identification of <code>AllocTypeR</code> object. Should * be null if N/A. * @param threadId Identification of <code>ThreadR</code> object. Should * be null if N/A. * @param locationId Identification of <code>Location</code> object. * Should be null if N/A. * @param sid Object with data from communication layer. * @param RtImage <code>VirtualMachineImage</code> object to which this * object shall belong */ AllocThreadTraceR(Integer typeId, Integer threadId, Integer locationId, IProf.sID sid, ImageR RtImage) { image=RtImage; objId=new Integer(sid.objId); // resolve roots thread=image.resolveThread(threadId); location=image.resolveAllocTrace(locationId); // resolve parent Integer methodId=new Integer(sid.parentUpObjId); if (image.containsId(methodId)) method=(AllocThreadMethodR) image.getObject(methodId); else { method=new AllocThreadMethodR(methodId, image); image.putObject(methodId, method); } isReady=true; // add to parents' lists thread.addAllocThreadTrace(this); location.addAllocThreadTrace(this); method.addAllocThreadTrace(this); } /** Constructs object with only <code>ID</code>. * @param oId Object identification. * @param RtImage <code>VirtualMachineImage</code> object to which this * object shall belong */ AllocThreadTraceR(Integer oId, ImageR RtImage) { image=RtImage; objId=oId; } // ---------- return child Lists public void refreshAllocTypeThreadTraces() { image.extractMultiRoot(this, IProf.ALLOC_THREAD_METHOD_TRACE_OBJECTS, image.allocTypeThreadTraceFactory); } public List getAllocTypeThreadTraces() { if ( image.getAlwaysRefresh() ) refreshAllocTypeThreadTraces(); return roAllocTypeThreadTraces; } // ---------- return parents public AllocThreadMethod getParentAllocThreadMethod() { needConstructed(); return method; } public Thread getParentThread() { needConstructed(); return thread; } public AllocTrace getParentAllocTrace() { needConstructed(); return location; } // ---------- return roots of this object /** Returns AllocType root of multi-rooted object. Returns <code>null * </code> if this root is N / A. */ public AllocTypeR getAllocType() { return null; } /** Returns Thread root of multi-rooted object. Returns <code>null * </code> if this root is N / A. */ public ThreadR getThread() { needConstructed(); return thread; } /** Returns Location root of multi-rooted object. Returns <code>null * </code> if this root is N / A. */ public Location getLocation() { needConstructed(); return location; } // ---------- profiler statistic public long getNumOfLiveInstances() { conditionalRefresh(); return numLiveInstances; } public long getTotalNumOfInstances() { conditionalRefresh(); return numTotalInstances; } public long getSizeOfLiveInstances() { conditionalRefresh(); return sizeLiveInstances; } public long getTotalSizeOfInstances() { conditionalRefresh(); return sizeTotalInstances; } // ---------- refresh /** Refreshes statistics. */ public void refresh() { IProf.sData data; try { data = image.getIProf().getData(objId.intValue(), IProf.ALLOC_DATA); } catch (IProfException e) { throw new RuntimeException(e); } setData((IProf.sAllocStatData) data.statData); } // ---------- private / package void addAllocTypeThreadTrace(AllocTypeThreadTrace o) { allocTypeThreadTraces.add(o); } /** Determines whether refresh should be done and does, if so. */ private void conditionalRefresh() { if (image.getAlwaysRefresh()) refresh(); } private void needConstructed() { if (!isReady) { IProf.sParents parents; try { parents=image.getIProf().getParents(objId.intValue()); } catch (IProfException e) { throw new RuntimeException(e); } // link to parents Integer methodId=new Integer(parents.parentUpObjId); if (image.containsId(methodId)) method=(AllocThreadMethodR) image.getObject(methodId); else { method=new AllocThreadMethodR(methodId, image); image.putObject(methodId, method); } // link to roots location=image.resolveAllocTrace(new Integer(parents. parentLeftObjId)); thread=method.getThread(); isReady=true; // add to parents' and root lists thread.addAllocThreadTrace(this); location.addAllocThreadTrace(this); method.addAllocThreadTrace(this); } } /** Finishes object construction with info gained from profiled VM. * @param sid Object info. */ void construct(IProf.sID sid) { // not yet determined, how to use this method } /** Fills object with data gained from profiled VM. * @param data Data. */ void setData(IProf.sAllocStatData allocData) { numLiveInstances=allocData.allocNumInstancesLive; numTotalInstances=allocData.allocNumInstancesTotal; sizeLiveInstances=allocData.allocSizeInstancesLive; sizeTotalInstances=allocData.allocSizeInstancesTotal; } /** Fills object with data gained from profiled VM. * @param sid Object info and data. */ void setData(IProf.sID sid) { setData(sid.alloc); } /** Returns number that identifies object for profiler library. */ Integer getId() { return objId; } public String toString() { return getThread() + "-" + getLocation(); } } --- NEW FILE: AllocTypeThreadTraceR.java --- /* * Sun Public License Notice * * The contents of this file are subject to the Sun Public License * Version 1.0 (the "License"); you may not use this file except * in compliance with the License. A copy of the License is available * at http://www.sun.com/ * * The Original Code is the Java Profiler module. The Initial Developers * of the Original Code are Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, * Lukas Petru and Marek Przeczek. * * Portions created by Jan Stola are Copyright (C) 2000-2001. * All Rights Reserved. * * Portions created by Pavel Vacha are Copyright (C) 2000-2001. * All Rights Reserved. * * Portions created by Michal Pise are Copyright (C) 2000-2001. * All Rights Reserved. * * Portions created by Petr Luner are Copyright (C) 2000-2001. * All Rights Reserved. * * Portions created by Lukas Petru are Copyright (C) 2000-2001. * All Rights Reserved. * * Portions created by Marek Przeczek are Copyright (C) 2000-2001. * All Rights Reserved. * * Contributors: Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, * Lukas Petru and Marek Przeczek. */ package net.sourceforge.javaprofiler.jpiimpl.realtime; import java.util.*; import net.sourceforge.javaprofiler.api.*; import net.sourceforge.javaprofiler.api.Class; import net.sourceforge.javaprofiler.api.Thread; import net.sourceforge.javaprofiler.api.ThreadGroup; import net.sourceforge.javaprofiler.jpiimpl.commun.IProf; import net.sourceforge.javaprofiler.jpiimpl.commun.IProfException; /** Implementation of API AllocTypeThreadTrace * @author Lukas Petru */ public class AllocTypeThreadTraceR extends DataR implements AllocTypeThreadTrace { /** Tells if any data was loaded from profiled VM about this Type. */ private boolean isReady; /** VM Image that constructed this object. */ private ImageR image; /** Object identification. */ private final Integer objId; // roots to which this object is linked private AllocTypeR type; private ThreadR thread; private AllocTraceR location; // parents private AllocTypeTraceR typeTrace; private AllocTypeThreadMethodR method; private AllocThreadTraceR threadTrace; private AllocTypeThreadR typeThread; // memory info private long numLiveInstances; private long numTotalInstances; private long sizeLiveInstances; private long sizeTotalInstances; /** Constructs multi-rooted object * @param typeId Identification of <code>AllocTypeR</code> object. Should * be null if N/A. * @param threadId Identification of <code>ThreadR</code> object. Should * be null if N/A. * @param locationId Identification of <code>Location</code> object. * Should be null if N/A. * @param sid Object with data from communication layer. * @param RtImage <code>VirtualMachineImage</code> object to which this * object shall belong */ AllocTypeThreadTraceR(Integer typeId, Integer threadId, Integer locationId, IProf.sID sid, ImageR RtImage) { image=RtImage; objId=new Integer(sid.objId); // resolve roots type=image.resolveAllocType(typeId); thread=image.resolveThread(threadId); location=image.resolveAllocTrace(locationId); // resolve parents Integer methodId=new Integer(sid.parentUpObjId); if (image.containsId(methodId)) method=(AllocTypeThreadMethodR) image.getObject(methodId); else { method=new AllocTypeThreadMethodR(methodId, image); image.putObject(methodId, method); } Integer typeTraceId=new Integer(sid.parentLeftObjId); if (image.containsId(typeTraceId)) typeTrace=(AllocTypeTraceR) image.getObject(typeTraceId); else { typeTrace=new AllocTypeTraceR(typeTraceId, image); image.putObject(typeTraceId, typeTrace); } Integer threadTraceId=new Integer(sid.parentRightObjId); if (image.containsId(threadTraceId)) threadTrace=(AllocThreadTraceR) image.getObject(threadTraceId); else { threadTrace=new AllocThreadTraceR(threadTraceId, image); image.putObject(threadTraceId, threadTrace); } typeThread=(AllocTypeThreadR) method.getParentAllocTypeThread(); isReady=true; // add to parents' lists method.addAllocTypeThreadTrace(this); typeTrace.addAllocTypeThreadTrace(this); threadTrace.addAllocTypeThreadTrace(this); typeThread.addAllocTypeThreadTrace(this); } /** Constructs object with only <code>ID</code>. * @param oId Object identification. * @param RtImage <code>VirtualMachineImage</code> object to which this * object shall belong */ AllocTypeThreadTraceR(Integer oId, ImageR RtImage) { image=RtImage; objId=oId; } // ---------- return child Lists // ---------- return parents public AllocTypeThreadMethod getParentAllocTypeThreadMethod() { needConstructed(); return method; } public AllocTypeTrace getParentAllocTypeTrace() { needConstructed(); return typeTrace; } public AllocThreadTrace getParentAllocThreadTrace() { needConstructed(); return threadTrace; } public AllocTypeThread getParentAllocTypeThread() { needConstructed(); return typeThread; } // ---------- return roots of this object /** Returns AllocType root of multi-rooted object. Returns <code>null * </code> if this root is N / A. */ public AllocTypeR getAllocType() { needConstructed(); return type; } /** Returns Thread root of multi-rooted object. Returns <code>null * </code> if this root is N / A. */ public ThreadR getThread() { needConstructed(); return thread; } /** Returns Location root of multi-rooted object. Returns <code>null * </code> if this root is N / A. */ public Location getLocation() { needConstructed(); return location; } // ---------- profiler statistic public long getNumOfLiveInstances() { conditionalRefresh(); return numLiveInstances; } public long getTotalNumOfInstances() { conditionalRefresh(); return numTotalInstances; } public long getSizeOfLiveInstances() { conditionalRefresh(); return sizeLiveInstances; } public long getTotalSizeOfInstances() { conditionalRefresh(); return sizeTotalInstances; } // ---------- refresh /** Refreshes statistics. */ public void refresh() { IProf.sData data; try { data = image.getIProf().getData(objId.intValue(), IProf.ALLOC_DATA); } catch (IProfException e) { throw new RuntimeException(e); } setData((IProf.sAllocStatData) data.statData); } // ---------- private / package /** Determines whether refresh should be done and does, if so. */ private void conditionalRefresh() { if (image.getAlwaysRefresh()) refresh(); } private void needConstructed() { if (!isReady) { IProf.sParents parents; try { parents=image.getIProf().getParents(objId.intValue()); } catch (IProfException e) { throw new RuntimeException(e); } // link to parents Integer methodId=new Integer(parents.parentUpObjId); if (image.containsId(methodId)) method=(AllocTypeThreadMethodR) image.getObject(methodId); else { method=new AllocTypeThreadMethodR(methodId, image); image.putObject(methodId, method); } Integer typeTraceId=new Integer(parents.parentLeftObjId); if (image.containsId(typeTraceId)) typeTrace=(AllocTypeTraceR) image.getObject(typeTraceId); else { typeTrace=new AllocTypeTraceR(typeTraceId, image); image.putObject(typeTraceId, typeTrace); } Integer threadTraceId=new Integer(parents.parentRightObjId); if (image.containsId(threadTraceId)) threadTrace=(AllocThreadTraceR) image.getObject(threadTraceId); else { threadTrace=new AllocThreadTraceR(threadTraceId, image); image.putObject(threadTraceId, threadTrace); } typeThread=(AllocTypeThreadR) method.getParentAllocTypeThread(); // link to roots type=method.getAllocType(); thread=method.getThread(); location=(AllocTraceR) typeTrace.getLocation(); isReady=true; // add to parents' and root lists method.addAllocTypeThreadTrace(this); typeTrace.addAllocTypeThreadTrace(this); threadTrace.addAllocTypeThreadTrace(this); typeThread.addAllocTypeThreadTrace(this); } } /** Finishes object construction with info gained from profiled VM. * @param sid Object info. */ void construct(IProf.sID sid) { // not yet determined, how to use this method } /** Fills object with data gained from profiled VM. * @param data Data. */ void setData(IProf.sAllocStatData allocData) { numLiveInstances=allocData.allocNumInstancesLive; numTotalInstances=allocData.allocNumInstancesTotal; sizeLiveInstances=allocData.allocSizeInstancesLive; sizeTotalInstances=allocData.allocSizeInstancesTotal; } /** Fills object with data gained from profiled VM. * @param sid Object info and data. */ void setData(IProf.sID sid) { setData(sid.alloc); } /** Returns number that identifies object for profiler library. */ Integer getId() { return objId; } public String toString() { return getAllocType() + "-" + getThread() + "-" + getLocation(); } } Index: AllocThreadMethodR.java =================================================================== RCS file: /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/realtime/AllocThreadMethodR.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** AllocThreadMethodR.java 15 Apr 2002 19:46:03 -0000 1.1 --- AllocThreadMethodR.java 21 Apr 2002 19:43:48 -0000 1.2 *************** *** 69,76 **** --- 69,79 ---- // lists for children private final List allocTypeThreadMethods=new ArrayList(0); + private final List allocThreadTraces=new ArrayList(0); // unmodifiable variants of lists for children private final List roAllocTypeThreadMethods=Collections.unmodifiableList( allocTypeThreadMethods); + private final List roAllocThreadTraces=Collections.unmodifiableList( + allocThreadTraces); /** Constructs multi-rooted object *************** *** 111,117 **** // ---------- return child Lists public List getAllocThreadTraces() { ! //PENDING ! return Collections.EMPTY_LIST; } --- 114,126 ---- // ---------- return child Lists + public void refreshAllocThreadTraces() { + image.extractMultiRoot(this, IProf.ALLOC_THREAD_METHOD_TRACES, + image.allocThreadTraceFactory); + } + public List getAllocThreadTraces() { ! if ( image.getAlwaysRefresh() ) ! refreshAllocThreadTraces(); ! return roAllocThreadTraces; } *************** *** 205,208 **** --- 214,221 ---- void addAllocTypeThreadMethod(AllocTypeThreadMethod o) { allocTypeThreadMethods.add(o); + } + + void addAllocThreadTrace(AllocThreadTrace o) { + allocThreadTraces.add(o); } Index: AllocTraceR.java =================================================================== RCS file: /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/realtime/AllocTraceR.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** AllocTraceR.java 10 Apr 2002 16:01:15 -0000 1.1 --- AllocTraceR.java 21 Apr 2002 19:43:48 -0000 1.2 *************** *** 68,75 **** --- 68,78 ---- // lists for children private final List allocTypeTraces=new ArrayList(0); + private final List allocThreadTraces=new ArrayList(0); // unmodifiable variants of lists for children private final List roAllocTypeTraces=Collections.unmodifiableList( allocTypeTraces); + private final List roAllocThreadTraces=Collections.unmodifiableList( + allocThreadTraces); /** Constructs new object with info. *************** *** 108,113 **** // children lists getter methods public List getAllocThreadTraces() { ! return Collections.EMPTY_LIST; } --- 111,123 ---- // children lists getter methods + public void refreshAllocThreadTraces() { + image.extractMultiRoot(this, IProf.ALLOC_METHOD_TRACE_THREADS, + image.allocThreadTraceFactory); + } + public List getAllocThreadTraces() { ! if ( image.getAlwaysRefresh() ) ! refreshAllocThreadTraces(); ! return roAllocThreadTraces; } *************** *** 175,178 **** --- 185,192 ---- void addAllocTypeTrace(AllocTypeTrace o) { allocTypeTraces.add(o); + } + + void addAllocThreadTrace(AllocThreadTrace o) { + allocThreadTraces.add(o); } Index: AllocTypeThreadMethodR.java =================================================================== RCS file: /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/realtime/AllocTypeThreadMethodR.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** AllocTypeThreadMethodR.java 15 Apr 2002 19:46:05 -0000 1.1 --- AllocTypeThreadMethodR.java 21 Apr 2002 19:43:48 -0000 1.2 *************** *** 72,75 **** --- 72,82 ---- private long sizeTotalInstances; + // lists for children + private final List allocTypeThreadTraces=new ArrayList(0); + + // unmodifiable variants of lists for children + private final List roAllocTypeThreadTraces=Collections.unmodifiableList( + allocTypeThreadTraces); + /** Constructs multi-rooted object * @param typeId Identification of <code>AllocTypeR</code> object. Should *************** *** 132,138 **** // ---------- return child Lists public List getAllocTypeThreadTraces() { ! //PENDING ! return Collections.EMPTY_LIST; } --- 139,151 ---- // ---------- return child Lists + public void refreshAllocTypeThreadTraces() { + image.extractMultiRoot(this, IProf.ALLOC_THREAD_OBJECT_METHOD_TRACES, + image.allocTypeThreadTraceFactory); + } + public List getAllocTypeThreadTraces() { ! if ( image.getAlwaysRefresh() ) ! refreshAllocTypeThreadTraces(); ! return roAllocTypeThreadTraces; } *************** *** 219,222 **** --- 232,239 ---- // ---------- private / package + void addAllocTypeThreadTrace(AllocTypeThreadTrace o) { + allocTypeThreadTraces.add(o); + } + /** Determines whether refresh should be done and does, if so. */ Index: AllocTypeThreadR.java =================================================================== RCS file: /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/realtime/AllocTypeThreadR.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** AllocTypeThreadR.java 15 Apr 2002 19:46:06 -0000 1.2 --- AllocTypeThreadR.java 21 Apr 2002 19:43:48 -0000 1.3 *************** *** 162,166 **** public void refreshAllocTypeThreadTraces() { ! //PENDING } --- 162,172 ---- public void refreshAllocTypeThreadTraces() { ! if (! image.getAlwaysRefresh()) ! refreshAllocTypeThreadMethods(); ! Iterator it=getAllocTypeThreadMethods().iterator(); ! while (it.hasNext()) { ! AllocTypeThreadMethodR o=(AllocTypeThreadMethodR) it.next(); ! o.refreshAllocTypeThreadTraces(); ! } } Index: AllocTypeTraceR.java =================================================================== RCS file: /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/realtime/AllocTypeTraceR.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** AllocTypeTraceR.java 10 Apr 2002 16:01:15 -0000 1.1 --- AllocTypeTraceR.java 21 Apr 2002 19:43:48 -0000 1.2 *************** *** 52,56 **** /** Object identification. */ ! private Integer objId; // roots to which this object is linked --- 52,56 ---- /** Object identification. */ ! private final Integer objId; // roots to which this object is linked *************** *** 67,70 **** --- 67,77 ---- private long sizeTotalInstances; + // lists for children + private final List allocTypeThreadTraces=new ArrayList(0); + + // unmodifiable variants of lists for children + private final List roAllocTypeThreadTraces=Collections.unmodifiableList( + allocTypeThreadTraces); + /** Constructs multi-rooted object * @param typeId Identification of <code>AllocTypeR</code> object. Should *************** *** 112,118 **** // ---------- return child Lists public List getAllocTypeThreadTraces() { ! //PENDING ! return Collections.EMPTY_LIST; } --- 119,131 ---- // ---------- return child Lists + public void refreshAllocTypeThreadTraces() { + image.extractMultiRoot(this, IProf.ALLOC_OBJECT_METHOD_TRACE_THREADS, + image.allocTypeThreadTraceFactory); + } + public List getAllocTypeThreadTraces() { ! if ( image.getAlwaysRefresh() ) ! refreshAllocTypeThreadTraces(); ! return roAllocTypeThreadTraces; } *************** *** 198,201 **** --- 211,218 ---- // ---------- private / package + void addAllocTypeThreadTrace(AllocTypeThreadTrace o) { + allocTypeThreadTraces.add(o); + } + /** Determines whether refresh should be done and does, if so. */ *************** *** 217,222 **** if (image.containsId(methodId)) method=(AllocTypeMethodR) image.getObject(methodId); ! else method=new AllocTypeMethodR(methodId, image); location=image.resolveAllocTrace(new Integer(parents. parentLeftObjId)); --- 234,241 ---- if (image.containsId(methodId)) method=(AllocTypeMethodR) image.getObject(methodId); ! else { method=new AllocTypeMethodR(methodId, image); + image.putObject(methodId, method); + } location=image.resolveAllocTrace(new Integer(parents. parentLeftObjId)); Index: ImageR.java =================================================================== RCS file: /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/realtime/ImageR.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** ImageR.java 15 Apr 2002 19:46:06 -0000 1.2 --- ImageR.java 21 Apr 2002 19:43:48 -0000 1.3 *************** *** 110,113 **** --- 110,115 ---- final Constructor allocThreadMethodFactory; final Constructor allocTypeThreadMethodFactory; + final Constructor allocThreadTraceFactory; + final Constructor allocTypeThreadTraceFactory; Set getAllFlags=new HashSet(); *************** *** 195,212 **** this.getClass() }; allocTypeMethodFactory=java.lang.Class.forName( ! "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocTypeMethodR") ! .getDeclaredConstructor(mrParameterTypes); allocTypeTraceFactory=java.lang.Class.forName( "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocTypeTraceR") .getDeclaredConstructor(mrParameterTypes); allocTypeThreadFactory=java.lang.Class.forName( ! "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocTypeThreadR") ! .getDeclaredConstructor(mrParameterTypes); allocThreadMethodFactory=java.lang.Class.forName( ! "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocThreadMethodR") ! .getDeclaredConstructor(mrParameterTypes); allocTypeThreadMethodFactory=java.lang.Class.forName( ! "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocTypeThreadMethodR") ! .getDeclaredConstructor(mrParameterTypes); } catch (ClassNotFoundException e) { throw new RuntimeException(e); --- 197,220 ---- this.getClass() }; allocTypeMethodFactory=java.lang.Class.forName( ! "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocTypeMethodR" ! ).getDeclaredConstructor(mrParameterTypes); allocTypeTraceFactory=java.lang.Class.forName( "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocTypeTraceR") .getDeclaredConstructor(mrParameterTypes); allocTypeThreadFactory=java.lang.Class.forName( ! "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocTypeThreadR" ! ).getDeclaredConstructor(mrParameterTypes); allocThreadMethodFactory=java.lang.Class.forName( ! "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocThreadMethodR" ! ).getDeclaredConstructor(mrParameterTypes); allocTypeThreadMethodFactory=java.lang.Class.forName( ! "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocTypeThreadMethodR" ! ).getDeclaredConstructor(mrParameterTypes); ! allocThreadTraceFactory=java.lang.Class.forName( ! "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocThreadTraceR" ! ).getDeclaredConstructor(mrParameterTypes); ! allocTypeThreadTraceFactory=java.lang.Class.forName( ! "net.sourceforge.javaprofiler.jpiimpl.realtime.AllocTypeThreadTraceR" ! ).getDeclaredConstructor(mrParameterTypes); } catch (ClassNotFoundException e) { throw new RuntimeException(e); *************** *** 329,332 **** --- 337,344 ---- private final String LOCATION_KEY="location"; + /** Tells which root is extracted when going along given direction. + * @return One of <code>TYPE_KEY</code>, <code>THREAD_KEY</code>, + * <code>LOCATION_KEY</code>. + */ private String getVaryKey(int direction) { switch (direction) { *************** *** 342,345 **** --- 354,362 ---- case IProf.ALLOC_THREAD_OBJECT_METHODS: return LOCATION_KEY; case IProf.ALLOC_THREAD_METHOD_OBJECTS: return TYPE_KEY; + case IProf.ALLOC_THREAD_METHOD_TRACES: return LOCATION_KEY; + case IProf.ALLOC_METHOD_TRACE_THREADS: return THREAD_KEY; + case IProf.ALLOC_THREAD_OBJECT_METHOD_TRACES: return LOCATION_KEY; + case IProf.ALLOC_OBJECT_METHOD_TRACE_THREADS: return THREAD_KEY; + case IProf.ALLOC_THREAD_METHOD_TRACE_OBJECTS: return TYPE_KEY; default: throw new RuntimeException("No branch in switch!"); } *************** *** 720,729 **** optionalArg, boolean clearFlag) throws COMMUN_Exception, BAD_OBJ_ID_Exception, BAD_COMMAND_Exception, UNKNOWN_Exception { ! if ( getAllFlags.add(new Long(direction << 32 + parent)) ) return iprof.getAllThruIterator(parent, direction, sameOutputObject, includeInfo, optionalArg, clearFlag); ! else return iprof.getChangedThruIterator(parent, direction, sameOutputObject, includeInfo, optionalArg, clearFlag); } --- 737,747 ---- optionalArg, boolean clearFlag) throws COMMUN_Exception, BAD_OBJ_ID_Exception, BAD_COMMAND_Exception, UNKNOWN_Exception { ! if ( getAllFlags.add(new Long(direction << 32 + parent)) ) { return iprof.getAllThruIterator(parent, direction, sameOutputObject, includeInfo, optionalArg, clearFlag); ! } else { return iprof.getChangedThruIterator(parent, direction, sameOutputObject, includeInfo, optionalArg, clearFlag); + } } Index: ThreadR.java =================================================================== RCS file: /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/realtime/ThreadR.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** ThreadR.java 15 Apr 2002 19:46:06 -0000 1.2 --- ThreadR.java 21 Apr 2002 19:43:48 -0000 1.3 *************** *** 79,82 **** --- 79,83 ---- private final List allocTypeThreads=new ArrayList(0); private final List allocThreadMethods=new ArrayList(0); + private final List allocThreadTraces=new ArrayList(0); // unmodifiable variants of lists for children *************** *** 85,88 **** --- 86,91 ---- private final List roAllocThreadMethods=Collections.unmodifiableList( allocThreadMethods); + private final List roAllocThreadTraces=Collections.unmodifiableList( + allocThreadTraces); /** Constructs new object with info. *************** *** 147,153 **** } public List getAllocThreadTraces() { ! //PENDING ! return Collections.EMPTY_LIST; } --- 150,167 ---- } + public void refreshAllocThreadTraces() { + if (! image.getAlwaysRefresh()) + refreshAllocThreadMethods(); + Iterator it=getAllocThreadMethods().iterator(); + while (it.hasNext()) { + AllocThreadMethodR o=(AllocThreadMethodR) it.next(); + o.refreshAllocThreadTraces(); + } + } + public List getAllocThreadTraces() { ! if ( image.getAlwaysRefresh() ) ! refreshAllocThreadTraces(); ! return roAllocThreadTraces; } *************** *** 265,268 **** --- 279,286 ---- void addAllocThreadMethod(AllocThreadMethod o) { allocThreadMethods.add(o); + } + + void addAllocThreadTrace(AllocThreadTrace o) { + allocThreadTraces.add(o); } |
From: Pavel V. <va...@us...> - 2002-04-20 22:40:53
|
Update of /cvsroot/javaprofiler/test/snapshot In directory usw-pr-cvs1:/tmp/cvs-serv7126 Modified Files: TestSnap.java PrintSnap.java Log Message: changes because of new IProf.run() prototype Index: TestSnap.java =================================================================== RCS file: /cvsroot/javaprofiler/test/snapshot/TestSnap.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -r1.6 -r1.7 *** TestSnap.java 9 Apr 2002 08:19:29 -0000 1.6 --- TestSnap.java 20 Apr 2002 22:40:50 -0000 1.7 *************** *** 92,134 **** public void runTest() { ! // initialize and start communication ! //iprof = new IProf(); ! iprof = new IProf( new CommunSetupSocket() ); ! //iprof = new IProf( new CommunSetupShMem() ); ! if ( !iprof.run() ) { ! System.err.println("Error in communication"); ! return; ! } ! ! try { ! System.out.println( "Ready" ); ! ! // til profiled program is going, do nothing ! //while( !iprof.isShutdowned()) Thread.sleep( 1000); ! ! // profiled program has finished, so ask for all classes ! ! getSnapShot(); ! ! // now, i don't want anything else, ! // so I shutdown profiled JVM definitely ! iprof.shutdown(); ! } ! catch( Exception e) { ! ! System.err.println( "an error occurred, exception:"); ! System.err.println( e.getClass().getName()); ! } ! ! // communication must be stopped even if an error occurred ! ! iprof.stop(); ! iprof = null; } public static void main( String[] arg) { ! // let's run the test ! (new TestSnap()).runTest(); } --- 92,130 ---- public void runTest() { ! // initialize and start communication ! //iprof = new IProf(); ! iprof = new IProf( new CommunSetupSocket() ); ! //iprof = new IProf( new CommunSetupShMem() ); ! try { ! iprof.run(); ! System.out.println( "Ready" ); ! ! // til profiled program is going, do nothing ! //while( !iprof.isShutdowned()) Thread.sleep( 1000); ! ! // profiled program has finished, so ask for all classes ! ! getSnapShot(); ! ! // now, i don't want anything else, ! // so I shutdown profiled JVM definitely ! iprof.shutdown(); ! } ! catch( Exception e) { ! System.err.println( "an error occurred, exception:"); ! System.err.println( e.getClass().getName()); ! e.printStackTrace(); ! } ! ! // communication must be stopped even if an error occurred ! ! iprof.stop(); ! iprof = null; } public static void main( String[] arg) { ! // let's run the test ! (new TestSnap()).runTest(); } Index: PrintSnap.java =================================================================== RCS file: /cvsroot/javaprofiler/test/snapshot/PrintSnap.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -r1.6 -r1.7 *** PrintSnap.java 13 Mar 2002 21:09:31 -0000 1.6 --- PrintSnap.java 20 Apr 2002 22:40:50 -0000 1.7 *************** *** 89,129 **** public void runTest() { ! // initialize and start communication ! //iprof = new IProf(); ! iprof = new IProf( new CommunSetupSocket() ); ! //iprof = new IProf( new CommunSetupShMem() ); ! ! if ( !iprof.run() ) { ! System.err.println("Error in communication"); ! return; ! } ! ! try { ! System.err.println( "Ready" ); ! // til profiled program is going, do nothing ! while( !iprof.isShutdowned()) Thread.sleep( 1000); ! ! System.err.println( "DebugOut START" ); ! printSnapShot(); ! System.err.println( "DebugOut END" ); ! iprof.shutdown(); ! } ! catch( Exception e) { ! ! System.err.println( "an error occurred, exception:"); ! System.err.println( e.getClass().getName()); ! } ! ! // communication must be stopped even if an error occurred ! ! iprof.stop(); ! iprof = null; } public static void main( String[] arg) { ! // let's run the test ! (new PrintSnap()).runTest(); } --- 89,127 ---- public void runTest() { ! // initialize and start communication ! //iprof = new IProf(); ! iprof = new IProf( new CommunSetupSocket() ); ! //iprof = new IProf( new CommunSetupShMem() ); ! ! try { ! iprof.run(); ! ! System.err.println( "Ready" ); ! // til profiled program is going, do nothing ! while( !iprof.isShutdowned()) Thread.sleep( 1000); ! ! System.err.println( "DebugOut START" ); ! printSnapShot(); ! System.err.println( "DebugOut END" ); ! iprof.shutdown(); ! } ! catch( Exception e) { ! ! System.err.println( "an error occurred, exception:"); ! System.err.println( e.getClass().getName()); ! e.printStackTrace(); ! } ! ! // communication must be stopped even if an error occurred ! ! iprof.stop(); ! iprof = null; } public static void main( String[] arg) { ! // let's run the test ! (new PrintSnap()).runTest(); } |
From: Pavel V. <va...@us...> - 2002-04-20 22:39:56
|
Update of /cvsroot/javaprofiler/test/snapshot In directory usw-pr-cvs1:/tmp/cvs-serv6861 Modified Files: runsnap.bat printsnap.bat Log Message: no message Index: runsnap.bat =================================================================== RCS file: /cvsroot/javaprofiler/test/snapshot/runsnap.bat,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -r1.4 -r1.5 *** runsnap.bat 13 Mar 2002 21:09:47 -0000 1.4 --- runsnap.bat 20 Apr 2002 22:39:53 -0000 1.5 *************** *** 1,3 **** ! SET JAVA_HOME=d:\j2sdk1.4.0-rc rem **************************** rem SET CLASSPATH=..\..\jpiimpl;..\..\interface;.\;%CLASSPATH% --- 1,3 ---- ! SET JAVA_HOME=d:\programs\j2sdk1.4.0 rem **************************** rem SET CLASSPATH=..\..\jpiimpl;..\..\interface;.\;%CLASSPATH% Index: printsnap.bat =================================================================== RCS file: /cvsroot/javaprofiler/test/snapshot/printsnap.bat,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** printsnap.bat 13 Mar 2002 21:09:47 -0000 1.2 --- printsnap.bat 20 Apr 2002 22:39:53 -0000 1.3 *************** *** 1,3 **** ! SET JAVA_HOME=d:\j2sdk1.4.0-rc rem **************************** rem SET CLASSPATH=..\..\jpiimpl;..\..\interface;.\;%CLASSPATH% --- 1,3 ---- ! SET JAVA_HOME=d:\programs\j2sdk1.4.0 rem **************************** rem SET CLASSPATH=..\..\jpiimpl;..\..\interface;.\;%CLASSPATH% |
From: Pavel V. <va...@us...> - 2002-04-20 22:35:46
|
Update of /cvsroot/javaprofiler/jpiimpl In directory usw-pr-cvs1:/tmp/cvs-serv6167 Modified Files: build.xml Log Message: don't build realtime Index: build.xml =================================================================== RCS file: /cvsroot/javaprofiler/jpiimpl/build.xml,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -r1.8 -r1.9 *** build.xml 16 Feb 2002 10:15:18 -0000 1.8 --- build.xml 20 Apr 2002 22:35:42 -0000 1.9 *************** *** 50,56 **** <javac classpathref="project.classpath" debug="true" failonerror="true"> <src> ! <pathelement location="jpiimpl/net"/> ! <pathelement location="interface/net"/> </src> </javac> </target> --- 50,58 ---- <javac classpathref="project.classpath" debug="true" failonerror="true"> <src> ! <pathelement location="jpiimpl"/> ! <pathelement location="interface"/> </src> + <include name="net/**"/> + <exclude name="net/sourceforge/javaprofiler/jpiimpl/realtime/**"/> </javac> </target> |
From: Jan S. <st...@us...> - 2002-04-20 10:46:24
|
Update of /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/connect In directory usw-pr-cvs1:/tmp/cvs-serv14368 Modified Files: SocketAttachConnector.java ShmemAttachConnector.java Log Message: Changes forced by the change of the IProf.run method prototype. Index: SocketAttachConnector.java =================================================================== RCS file: /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/connect/SocketAttachConnector.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** SocketAttachConnector.java 14 Oct 2001 21:56:31 -0000 1.3 --- SocketAttachConnector.java 20 Apr 2002 10:46:21 -0000 1.4 *************** *** 64,72 **** } IProf iprof=new IProf(new CommunSetupSocket(CommunSetupSocket.CLIENT_MODE, host, port)); ! if (iprof.run()) { ! return new VirtualMachineImpl(iprof); ! } else { ! throw new ConnectingException("Unable to connect to the profiled process."); ! } } --- 64,73 ---- } IProf iprof=new IProf(new CommunSetupSocket(CommunSetupSocket.CLIENT_MODE, host, port)); ! try { ! iprof.run(); ! } catch (IProfException ipe) { ! throw new ConnectingException("Unable to connect to the profiled process: "+ipe); ! } ! return new VirtualMachineImpl(iprof); } *************** *** 138,141 **** --- 139,145 ---- /* * $Log$ + * Revision 1.4 2002/04/20 10:46:21 stolis + * Changes forced by the change of the IProf.run method prototype. + * * Revision 1.3 2001/10/14 21:56:31 stolis * Connectors updated. Index: ShmemAttachConnector.java =================================================================== RCS file: /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/connect/ShmemAttachConnector.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** ShmemAttachConnector.java 14 Oct 2001 21:56:31 -0000 1.3 --- ShmemAttachConnector.java 20 Apr 2002 10:46:21 -0000 1.4 *************** *** 57,65 **** } IProf iprof=new IProf(new CommunSetupShMem(address, 256*1024)); ! if (iprof.run()) { ! return new VirtualMachineImpl(iprof); ! } else { ! throw new ConnectingException("Unable to connect to the profiled process."); } } --- 57,66 ---- } IProf iprof=new IProf(new CommunSetupShMem(address, 256*1024)); ! try { ! iprof.run(); ! } catch (IProfException ipe) { ! throw new ConnectingException("Unable to connect to the profiled process: "+ipe); } + return new VirtualMachineImpl(iprof); } *************** *** 127,130 **** --- 128,134 ---- /* * $Log$ + * Revision 1.4 2002/04/20 10:46:21 stolis + * Changes forced by the change of the IProf.run method prototype. + * * Revision 1.3 2001/10/14 21:56:31 stolis * Connectors updated. |
From: Jan S. <st...@us...> - 2002-04-20 10:44:07
|
Update of /cvsroot/javaprofiler/module/net/sourceforge/javaprofiler/module/resources In directory usw-pr-cvs1:/tmp/cvs-serv13649 Modified Files: mf-layer.xml Log Message: Profiler workspace, toolbar configuration and window modes added. Index: mf-layer.xml =================================================================== RCS file: /cvsroot/javaprofiler/module/net/sourceforge/javaprofiler/module/resources/mf-layer.xml,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** mf-layer.xml 27 Jan 2002 23:02:51 -0000 1.2 --- mf-layer.xml 20 Apr 2002 10:44:05 -0000 1.3 *************** *** 79,82 **** --- 79,84 ---- <folder name="Toolbars"> + <file name="Profiling.xml" url="Profiling.xml" /> + <folder name="Profiler"> <file name="net-sourceforge-javaprofiler-module-actions-ProfilerWindowAction.instance" /> *************** *** 102,105 **** --- 104,175 ---- <folder name="Shortcuts"> <file name="C-9[net-sourceforge-javaprofiler-module-actions-ProfilerWindowAction].instance" /> + </folder> + + <folder name="Services"> + + <file name="net-sourceforge-javaprofiler-module-ProfilerSettings.settings" url="ProfilerSettings.settings"> + <attr name="SystemFileSystem.localizingBundle" stringvalue="net.sourceforge.javaprofiler.module.Bundle"/> + <attr name="SystemFileSystem.icon" urlvalue="nbresloc:/net/sourceforge/javaprofiler/module/resources/ProfilerSettingsIcon.gif"/> + </file> + + <folder name="Executor"> + <file name="net-sourceforge-javaprofiler-module-ProfilerExecutor.settings" url="ProfilerExecutor.settings"> + <attr name="SystemFileSystem.localizingBundle" stringvalue="net.sourceforge.javaprofiler.module.Bundle"/> + <attr name="SystemFileSystem.icon" urlvalue="nbresloc:/net/sourceforge/javaprofiler/module/resources/ProfilerExecutorIcon.gif"/> + <attr name="SystemFileSystem.layer" stringvalue="project"/> + </file> + </folder> + + </folder> + + <folder name="Templates"> + <folder name="Services"> + + <folder name="Executor"> + <file name="net-sourceforge-javaprofiler-module-ProfilerExecutor.settings" url="ProfilerExecutor.settings"> + <attr name="SystemFileSystem.localizingBundle" stringvalue="net.sourceforge.javaprofiler.module.Bundle"/> + <attr name="SystemFileSystem.icon" urlvalue="nbresloc:/net/sourceforge/javaprofiler/module/resources/ProfilerExecutorIcon.gif"/> + <attr boolvalue="true" name="template"/> + </file> + </folder> + </folder> + </folder> + + <folder name="UI"> + <folder name="Services"> + <folder name="DebuggingAndExecuting"> + + <file name="net-sourceforge-javaprofiler-module-ProfilerSettings.shadow"> + <![CDATA[Services/net-sourceforge-javaprofiler-module-ProfilerSettings.settings + SystemFileSystem + ]]> + </file> + + </folder> + </folder> + </folder> + + <folder name="Windows"> + <folder name="WindowManager"> + <attr name="Debugging/Profiling" boolvalue="true" /> + <attr name="Running/Profiling" boolvalue="true" /> + <file name="Profiling.wswksp" url="Profiling.wswksp"/> + <folder name="Profiling"> + + <file name="profiler.wsmode" url="profiler.wsmode"/> + <folder name="profiler"> + </folder> + + <file name="output.wsmode" url="output.wsmode"/> + <folder name="output"> + <file name="output.wstcref" url="output.wstcref"/> + </folder> + + <file name="editor.wsmode" url="editor.wsmode"/> + <folder name="editor"> + </folder> + + </folder> + </folder> </folder> |
From: Jan S. <st...@us...> - 2002-04-20 10:42:12
|
Update of /cvsroot/javaprofiler/module/net/sourceforge/javaprofiler/module/resources In directory usw-pr-cvs1:/tmp/cvs-serv13143 Added Files: editor.wsmode Log Message: Source Editor window mode. --- NEW FILE: editor.wsmode --- <!-- Sun Public License Notice The contents of this file are subject to the Sun Public License Version 1.0 (the "License"). You may not use this file except in compliance with the License. A copy of the License is available at http://www.sun.com/ The Original Code is the Java Profiler module. The Initial Developers of the Original Code are Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, Lukas Petru and Marek Przeczek. Portions created by Jan Stola are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Pavel Vacha are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Michal Pise are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Petr Luner are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Lukas Petru are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Marek Przeczek are Copyright (C) 2000-2001. All Rights Reserved. Contributors: Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, Lukas Petru and Marek Przeczek. --> <mode version="1.0"> <name unique="editor" display="LBL_editorWindow" from-bundle="true" bundle="net.sourceforge.javaprofiler.module.nodes.Bundle" /> <module name="net.sourceforge.javaprofiler/1" spec="1.0" /> <ui-type type="any" > <relative-bounds x="50" y="0" width="50" height="70" /> <frame type="window" state="normal" /> <container type="split" > </container> <icon url="nbresboot:/org/openide/resources/editorMode.gif" /> <other defined-by="module" mode-state="hidden" /> </ui-type> <ui-type type="mdi" > <relative-bounds x="50" y="0" width="50" height="70" /> <frame type="internal" state="normal" /> <container type="split" > </container> <icon url="nbresboot:/org/openide/resources/editorMode.gif" /> <other defined-by="module" mode-state="hidden" /> </ui-type> </mode> |
From: Jan S. <st...@us...> - 2002-04-20 10:41:35
|
Update of /cvsroot/javaprofiler/module/net/sourceforge/javaprofiler/module/resources In directory usw-pr-cvs1:/tmp/cvs-serv13005 Added Files: output.wstcref Log Message: Output window settings. --- NEW FILE: output.wstcref --- <!-- Sun Public License Notice The contents of this file are subject to the Sun Public License Version 1.0 (the "License"). You may not use this file except in compliance with the License. A copy of the License is available at http://www.sun.com/ The Original Code is the Java Profiler module. The Initial Developers of the Original Code are Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, Lukas Petru and Marek Przeczek. Portions created by Jan Stola are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Pavel Vacha are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Michal Pise are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Petr Luner are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Lukas Petru are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Marek Przeczek are Copyright (C) 2000-2001. All Rights Reserved. Contributors: Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, Lukas Petru and Marek Przeczek. --> <tc-ref id="output" > <ui-type type="any" state="opened" constraint="center" selected="false" /> <module name="net.sourceforge.javaprofiler/1" spec="1.0" /> </tc-ref> |
From: Jan S. <st...@us...> - 2002-04-20 10:40:47
|
Update of /cvsroot/javaprofiler/module/net/sourceforge/javaprofiler/module/resources In directory usw-pr-cvs1:/tmp/cvs-serv12841 Added Files: output.wsmode Log Message: Output window mode. --- NEW FILE: output.wsmode --- <!-- Sun Public License Notice The contents of this file are subject to the Sun Public License Version 1.0 (the "License"). You may not use this file except in compliance with the License. A copy of the License is available at http://www.sun.com/ The Original Code is the Java Profiler module. The Initial Developers of the Original Code are Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, Lukas Petru and Marek Przeczek. Portions created by Jan Stola are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Pavel Vacha are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Michal Pise are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Petr Luner are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Lukas Petru are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Marek Przeczek are Copyright (C) 2000-2001. All Rights Reserved. Contributors: Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, Lukas Petru and Marek Przeczek. --> <mode version="1.0"> <name unique="output" display="CTL_OutputWindow" from-bundle="true" bundle="org.netbeans.core.windows.Bundle" /> <module name="net.sourceforge.javaprofiler/1" spec="1.0" /> <ui-type type="any" > <relative-bounds x="0" y="70" width="100" height="30" /> <frame type="window" constraints="bottom" state="normal" /> <container type="split" > </container> <icon url="nbresboot:/org/netbeans/core/resources/frames/output.gif" /> <other defined-by="module" mode-state="visible" /> </ui-type> <ui-type type="mdi" > <relative-bounds x="0" y="70" width="100" height="30" /> <frame type="desktop" constraints="bottom" state="normal" /> <container type="split" > </container> <icon url="nbresboot:/org/netbeans/core/resources/frames/output.gif" /> <other defined-by="module" mode-state="visible" /> </ui-type> </mode> |
From: Jan S. <st...@us...> - 2002-04-20 10:39:50
|
Update of /cvsroot/javaprofiler/module/net/sourceforge/javaprofiler/module/resources In directory usw-pr-cvs1:/tmp/cvs-serv12630 Added Files: profiler.wsmode Log Message: Profiler window mode. --- NEW FILE: profiler.wsmode --- <!-- Sun Public License Notice The contents of this file are subject to the Sun Public License Version 1.0 (the "License"). You may not use this file except in compliance with the License. A copy of the License is available at http://www.sun.com/ The Original Code is the Java Profiler module. The Initial Developers of the Original Code are Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, Lukas Petru and Marek Przeczek. Portions created by Jan Stola are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Pavel Vacha are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Michal Pise are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Petr Luner are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Lukas Petru are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Marek Przeczek are Copyright (C) 2000-2001. All Rights Reserved. Contributors: Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, Lukas Petru and Marek Przeczek. --> <mode> <name unique="profiler" display="LBL_profilerWindow" from-bundle="true" bundle="net.sourceforge.javaprofiler.module.nodes.Bundle" /> <module name="net.sourceforge.javaprofiler/1" spec="1.0" /> <ui-type type="any" > <relative-bounds x="0" y="0" width="50" height="70" /> <frame type="window" constraints="left" state="normal" /> <container type="tabbed" > </container> <icon url="nbresboot:/net/sourceforge/javaprofiler/module/resources/ProfilerWindowActionIcon.gif" /> <other defined-by="module" mode-state="visible" /> </ui-type> <ui-type type="mdi" > <relative-bounds x="0" y="0" width="50" height="70" /> <frame type="desktop" constraints="left" state="normal" /> <container type="tabbed" > </container> <icon url="nbresboot:/net/sourceforge/javaprofiler/module/resources/ProfilerWindowActionIcon.gif" /> <other defined-by="module" mode-state="visible" /> </ui-type> </mode> |
From: Jan S. <st...@us...> - 2002-04-20 10:39:08
|
Update of /cvsroot/javaprofiler/module/net/sourceforge/javaprofiler/module/resources In directory usw-pr-cvs1:/tmp/cvs-serv12474 Added Files: ProfilerExecutor.settings Log Message: Configuration of Profiler Execution. --- NEW FILE: ProfilerExecutor.settings --- <!-- Sun Public License Notice The contents of this file are subject to the Sun Public License Version 1.0 (the "License"). You may not use this file except in compliance with the License. A copy of the License is available at http://www.sun.com/ The Original Code is the Java Profiler module. The Initial Developers of the Original Code are Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, Lukas Petru and Marek Przeczek. Portions created by Jan Stola are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Pavel Vacha are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Michal Pise are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Petr Luner are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Lukas Petru are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Marek Przeczek are Copyright (C) 2000-2001. All Rights Reserved. Contributors: Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, Lukas Petru and Marek Przeczek. --> <!DOCTYPE settings PUBLIC "-//NetBeans//DTD Session settings 1.0//EN" "http://www.netbeans.org/dtds/sessionsettings-1_0.dtd"> <settings version="1.0"> <module name="net.sourceforge.javaprofiler/1" spec="1.0" /> <instanceof class="org.openide.ServiceType"/> <instanceof class="org.openide.execution.Executor"/> <instanceof class="org.openide.execution.ProcessExecutor"/> <instanceof class="net.sourceforge.javaprofiler.module.ProfilerExecutor"/> <instance class="net.sourceforge.javaprofiler.module.ProfilerExecutor"/> </settings> |
From: Jan S. <st...@us...> - 2002-04-20 10:38:26
|
Update of /cvsroot/javaprofiler/module/net/sourceforge/javaprofiler/module/resources In directory usw-pr-cvs1:/tmp/cvs-serv12280 Added Files: ProfilerSettings.settings Log Message: Configuration of the Profiler Settings node. --- NEW FILE: ProfilerSettings.settings --- <!-- Sun Public License Notice The contents of this file are subject to the Sun Public License Version 1.0 (the "License"). You may not use this file except in compliance with the License. A copy of the License is available at http://www.sun.com/ The Original Code is the Java Profiler module. The Initial Developers of the Original Code are Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, Lukas Petru and Marek Przeczek. Portions created by Jan Stola are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Pavel Vacha are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Michal Pise are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Petr Luner are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Lukas Petru are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Marek Przeczek are Copyright (C) 2000-2001. All Rights Reserved. Contributors: Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, Lukas Petru and Marek Przeczek. --> <!DOCTYPE settings PUBLIC "-//NetBeans//DTD Session settings 1.0//EN" "http://www.netbeans.org/dtds/sessionsettings-1_0.dtd"> <settings version="1.0"> <module name="net.sourceforge.javaprofiler/1" spec="1.0" /> <instanceof class="org.openide.util.SharedClassObject"/> <instanceof class="org.openide.options.SystemOption"/> <instanceof class="net.sourceforge.javaprofiler.module.ProfilerSettings"/> <instance class="net.sourceforge.javaprofiler.module.ProfilerSettings"/> </settings> |
From: Jan S. <st...@us...> - 2002-04-20 10:37:37
|
Update of /cvsroot/javaprofiler/module/net/sourceforge/javaprofiler/module/resources In directory usw-pr-cvs1:/tmp/cvs-serv12033 Added Files: Profiling.wswksp Log Message: Profiling workspace. --- NEW FILE: Profiling.wswksp --- <!-- Sun Public License Notice The contents of this file are subject to the Sun Public License Version 1.0 (the "License"). You may not use this file except in compliance with the License. A copy of the License is available at http://www.sun.com/ The Original Code is the Java Profiler module. The Initial Developers of the Original Code are Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, Lukas Petru and Marek Przeczek. Portions created by Jan Stola are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Pavel Vacha are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Michal Pise are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Petr Luner are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Lukas Petru are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Marek Przeczek are Copyright (C) 2000-2001. All Rights Reserved. Contributors: Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, Lukas Petru and Marek Przeczek. --> <workspace version="1.0"> <name unique="Profiling" display="LBL_workspace" from-bundle="true" bundle="net.sourceforge.javaprofiler.module.Bundle" /> <module name="net.sourceforge.javaprofiler/1" spec="1.0" /> <ui-type type="any"> <cascade origin-x="0" origin-y="0" step-x="20" step-y="20" count="25" current-x="0" current-y="6" /> <active mode="" /> <mode z-order="profiler,output,editor" /> <toolbar configuration="Profiling" /> </ui-type> </workspace> |
From: Jan S. <st...@us...> - 2002-04-20 10:36:54
|
Update of /cvsroot/javaprofiler/module/net/sourceforge/javaprofiler/module/resources In directory usw-pr-cvs1:/tmp/cvs-serv11821 Added Files: Profiling.xml Log Message: Profiling toolbar configuration. --- NEW FILE: Profiling.xml --- <!-- Sun Public License Notice The contents of this file are subject to the Sun Public License Version 1.0 (the "License"). You may not use this file except in compliance with the License. A copy of the License is available at http://www.sun.com/ The Original Code is the Java Profiler module. The Initial Developers of the Original Code are Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, Lukas Petru and Marek Przeczek. Portions created by Jan Stola are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Pavel Vacha are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Michal Pise are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Petr Luner are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Lukas Petru are Copyright (C) 2000-2001. All Rights Reserved. Portions created by Marek Przeczek are Copyright (C) 2000-2001. All Rights Reserved. Contributors: Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, Lukas Petru and Marek Przeczek. --> <!DOCTYPE Configuration PUBLIC "-//NetBeans IDE//DTD toolbar//EN" "http://www.netbeans.org/dtds/toolbar.dtd"> <Configuration> <Row> <Toolbar name="System" /> <Toolbar name="Edit" /> <Toolbar name="Data" /> <Toolbar name="Build" /> <Toolbar name="Profiler" /> <Toolbar name="Memory" visible="false" /> </Row> <Row> <Toolbar name="Versioning" visible="false" /> <Toolbar name="Debug" visible="false" /> <Toolbar name="DebugFull" visible="false" /> <Toolbar name="View" visible="false" /> </Row> </Configuration> |
From: Jan S. <st...@us...> - 2002-04-20 10:35:02
|
Update of /cvsroot/javaprofiler/module/net/sourceforge/javaprofiler/module/nodes In directory usw-pr-cvs1:/tmp/cvs-serv11287 Modified Files: ProfilerView.java Log Message: Refinement of the window openning. Index: ProfilerView.java =================================================================== RCS file: /cvsroot/javaprofiler/module/net/sourceforge/javaprofiler/module/nodes/ProfilerView.java,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -r1.1.1.1 -r1.2 *** ProfilerView.java 14 Oct 2001 22:18:09 -0000 1.1.1.1 --- ProfilerView.java 20 Apr 2002 10:34:58 -0000 1.2 *************** *** 30,33 **** --- 30,36 ---- import org.openide.util.NbBundle; import org.openide.awt.SplittedPanel; + import org.openide.windows.Mode; + import org.openide.windows.Workspace; + import org.openide.windows.WindowManager; import org.openide.explorer.ExplorerPanel; import org.openide.explorer.ExplorerManager; *************** *** 72,76 **** em.setRootContext(rc); view.setIcon(rc.getIcon(BeanInfo.ICON_COLOR_16x16)); ! String name=rc.getDisplayName(); return view; } --- 75,85 ---- em.setRootContext(rc); view.setIcon(rc.getIcon(BeanInfo.ICON_COLOR_16x16)); ! view.setName(rc.getDisplayName()); ! WindowManager wm=TopManager.getDefault().getWindowManager(); ! Workspace profWork=wm.findWorkspace("Profiling"); ! if (profWork!=null) { ! Mode m=profWork.findMode("profiler"); ! m.dockInto(view); ! } return view; } *************** *** 91,94 **** --- 100,106 ---- /* * $Log$ + * Revision 1.2 2002/04/20 10:34:58 stolis + * Refinement of the window openning. + * * Revision 1.1.1.1 2001/10/14 22:18:09 stolis * The very first version of profiler module. |
From: Jan S. <st...@us...> - 2002-04-20 10:33:38
|
Update of /cvsroot/javaprofiler/module/net/sourceforge/javaprofiler/module/nodes In directory usw-pr-cvs1:/tmp/cvs-serv10930 Modified Files: Bundle.properties Log Message: Entries for Profiler Window and Source Editor added. Index: Bundle.properties =================================================================== RCS file: /cvsroot/javaprofiler/module/net/sourceforge/javaprofiler/module/nodes/Bundle.properties,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** Bundle.properties 26 Feb 2002 00:59:51 -0000 1.3 --- Bundle.properties 20 Apr 2002 10:33:29 -0000 1.4 *************** *** 66,67 **** --- 66,71 ---- FMT_TemplateDefaultPackageName=<default package> [{0}] + + LBL_profilerWindow=Profiler Window + + LBL_editorWindow=Source Editor |
From: Jan S. <st...@us...> - 2002-04-20 10:32:43
|
Update of /cvsroot/javaprofiler/module/net/sourceforge/javaprofiler/module/data In directory usw-pr-cvs1:/tmp/cvs-serv10693 Added Files: Bundle.properties Log Message: Bundle - contains default name of the snapshot. --- NEW FILE: Bundle.properties --- ## ## Sun Public License Notice ## ## The contents of this file are subject to the Sun Public License Version ## 1.0 (the "License"). You may not use this file except in compliance with ## the License. A copy of the License is available at http://www.sun.com/ ## ## The Original Code is the Java Profiler module. ## The Initial Developers of the Original Code are Jan Stola, Pavel Vacha, ## Michal Pise, Petr Luner, Lukas Petru and Marek Przeczek. ## Portions created by Jan Stola are Copyright (C) 2000-2001. All Rights Reserved. ## Portions created by Pavel Vacha are Copyright (C) 2000-2001. All Rights Reserved. ## Portions created by Michal Pise are Copyright (C) 2000-2001. All Rights Reserved. ## Portions created by Petr Luner are Copyright (C) 2000-2001. All Rights Reserved. ## Portions created by Lukas Petru are Copyright (C) 2000-2001. All Rights Reserved. ## Portions created by Marek Przeczek are Copyright (C) 2000-2001. All Rights Reserved. ## ## Contributors: Jan Stola, Pavel Vacha, Michal Pise, Petr Luner, ## Lukas Petru and Marek Przeczek. ## LBL_snapshot=Snapshot no. {0} of the {1} |
From: Jan S. <st...@us...> - 2002-04-20 10:30:43
|
Update of /cvsroot/javaprofiler/module/net/sourceforge/javaprofiler/module In directory usw-pr-cvs1:/tmp/cvs-serv10212 Modified Files: Bundle.properties Log Message: Profiler Executor changed to Profiler Execution. Added entry for the snapshot objects. Index: Bundle.properties =================================================================== RCS file: /cvsroot/javaprofiler/module/net/sourceforge/javaprofiler/module/Bundle.properties,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** Bundle.properties 26 Feb 2002 00:36:00 -0000 1.2 --- Bundle.properties 20 Apr 2002 10:30:40 -0000 1.3 *************** *** 51,55 **** PROP_allocLevel=Memory Profiling Level HINT_allocLevel=Level of the Memory Profiling. ! LBL_executor=Profiler Executor HINT_executor=Starts process with profiling options. PROP_communHost=Host --- 51,55 ---- PROP_allocLevel=Memory Profiling Level HINT_allocLevel=Level of the Memory Profiling. ! LBL_executor=Profiler Execution HINT_executor=Starts process with profiling options. PROP_communHost=Host *************** *** 79,80 **** --- 79,82 ---- HINT_snapshotOnExit=Create snapshot when session finishes. LBL_loaderName=Snapshot Objects + + LBL_snapshotLoaderName=Snapshot Objects |
From: Jan S. <st...@us...> - 2002-04-20 10:29:31
|
Update of /cvsroot/javaprofiler/module/net/sourceforge/javaprofiler/module In directory usw-pr-cvs1:/tmp/cvs-serv9850 Removed Files: ProfilerModule.java Log Message: ProfilerModule is no longer necessary. --- ProfilerModule.java DELETED --- |
From: Jan S. <st...@us...> - 2002-04-20 10:26:48
|
Update of /cvsroot/javaprofiler/module In directory usw-pr-cvs1:/tmp/cvs-serv9195 Modified Files: javaprofiler.jarContent Log Message: Some entries removed from the manifest. Index: javaprofiler.jarContent =================================================================== RCS file: /cvsroot/javaprofiler/module/javaprofiler.jarContent,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 Binary files /tmp/cvssZ0AF2 and /tmp/cvs67NpdV differ |
From: Jan S. <st...@us...> - 2002-04-20 10:25:59
|
Update of /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/data In directory usw-pr-cvs1:/tmp/cvs-serv9007 Modified Files: TraceFrameData.java Log Message: Implements Serializable (is contained in Snapshot). Index: TraceFrameData.java =================================================================== RCS file: /cvsroot/javaprofiler/jpiimpl/net/sourceforge/javaprofiler/jpiimpl/data/TraceFrameData.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** TraceFrameData.java 29 Sep 2001 21:01:33 -0000 1.2 --- TraceFrameData.java 20 Apr 2002 10:25:55 -0000 1.3 *************** *** 21,24 **** --- 21,26 ---- package net.sourceforge.javaprofiler.jpiimpl.data; + import java.io.Serializable; + /** * Frame of some trace. *************** *** 26,30 **** * @author Jan Stola */ ! public class TraceFrameData { /** Line number of this frame in the source file. */ private int line; --- 28,32 ---- * @author Jan Stola */ ! public class TraceFrameData implements Serializable { /** Line number of this frame in the source file. */ private int line; *************** *** 65,68 **** --- 67,73 ---- /* * $Log$ + * Revision 1.3 2002/04/20 10:25:55 stolis + * Implements Serializable (is contained in Snapshot). + * * Revision 1.2 2001/09/29 21:01:33 stolis * Plural added in licenses. |