Just a followup to this issue : Aaron and I discussed this today and he is going to start
work on a 'Project JavaClassWorkspaceMapManager' that will allow the mapping to succeed
(for Project/Telemetry analyses) as long as at least one member of the Project has
invoked LOCC and thus determined the class name/workspace file mapping. It's pretty
humbug to require everyone in the project to have to run LOCC each time they create a new
class. In our case, for example, we want to offload that task onto the Daily Build
process (which we already do) and then exploit that information for our own personal
analyses (which Aaron's extensions will enable).
Cheers,
Philip
--On Friday, November 05, 2004 3:06 PM -1000 Philip Johnson <[EMAIL PROTECTED]> wrote:
* When Hackystat receives UnitTest or Coverage data from you, the data contains the
class name (such as edu.hawaii.413.graphster.FamilyTree) and the test or coverage data
associated with it. However, project and telemetry analyses determine what data to look
at based upon Workspaces, which as you know are a kind of platform and CM-independent
directory path specification. So, for an analysis to use UnitTest data, for example, it
must somehow translate a class, such as edu.hawaii.413.graphster.FamilyTree, to its
corresponding workspace, such as graphster-xtc/src/edu/hawaii/413/graphster. You might
be asking yourself, how does this bit of magic happen? The answer is that Hackystat
uses FileMetric data (which is sent by the LOCC sensor) to build this bridge between
Java class names and their corresponding directory path, because FileMetric data
contains both the class name and the file name.
What this means for you is that you need to run the LOCC sensor regularly in order to
provide Hackystat with the information about the classes in your system and the
workspaces they correspond to. In particular, each time you create a new class in your
system, Hackystat will not be able to map unit tests or coverage data you send to the
server regarding that class to your project analyses until you run LOCC. I suggest
that you run LOCC across your code a few times a week just to make sure everything is
up to date. At the very least, everyone should make sure they run LOCC on the day
before the weekly project review!