/******************************************************************************* * Copyright (c) 2007 The Eclipse Foundation. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * The Eclipse Foundation - initial API and implementation *******************************************************************************/ package org.eclipse.epp.usagedata.internal.gathering.events; /** * The {@link UsageDataEvent} class captures information about a single * event. Once created, instances of this class cannot be modified. * * @author Wayne Beaton * */ public class UsageDataEvent { /** * The {@link #what} field describes the event that has occurred. It * is dependent on the kind of thing that caused the event. As a * rule of thumb, the value indicates that something has * already happened (e.g. "activated", "loaded", "clicked"). */ public final String what; /** * The {@link #kind} field describes the kind of thing that caused * the event (e.g. "view", "workbench", "menu", "bundle"). */ public final String kind; /** * The {@link #description} field provides additional, kind-specific * information. An event describing the activation of a view might, * for example, provide the name of the view in this field. */ public final String description; /** * The {@link #bundleId} field contains symbolic name of the bundle that * owns the thing that caused the event. */ public final String bundleId; /** * The {@link #bundleVersion} field contains the version of the bundle * that owns the thing that caused the event. */ public String bundleVersion; /** * The {@link #when} field contains a time stamp, expressed as * milliseconds in UNIX time (using <code>System.currentTimeMillis()</code>); */ public final long when; public UsageDataEvent(String what, String kind, String description, String bundleId, String bundleVersion, long when) { this.what = what; this.kind = kind; this.description = description; this.bundleId = bundleId; this.bundleVersion = bundleVersion; this.when = when; } }