1 /*******************************************************************************
2 * Copyright (c) 2009 Ericsson
4 * All rights reserved. This program and the accompanying materials are
5 * made available under the terms of the Eclipse Public License v1.0 which
6 * accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
10 * Francois Chouinard (fchouinard@gmail.com) - Initial API and implementation
11 *******************************************************************************/
13 package org
.eclipse
.linuxtools
.internal
.lttng
.stubs
;
15 import java
.io
.FileNotFoundException
;
16 import java
.io
.IOException
;
17 import java
.io
.RandomAccessFile
;
19 import org
.eclipse
.linuxtools
.internal
.lttng
.core
.event
.LttngEvent
;
20 import org
.eclipse
.linuxtools
.tmf
.core
.event
.ITmfEvent
;
21 import org
.eclipse
.linuxtools
.tmf
.core
.parser
.ITmfEventParser
;
22 import org
.eclipse
.linuxtools
.tmf
.core
.trace
.ITmfContext
;
23 import org
.eclipse
.linuxtools
.tmf
.core
.trace
.ITmfLocation
;
24 import org
.eclipse
.linuxtools
.tmf
.core
.trace
.TmfContext
;
25 import org
.eclipse
.linuxtools
.tmf
.core
.trace
.TmfLocation
;
26 import org
.eclipse
.linuxtools
.tmf
.core
.trace
.TmfTrace
;
29 * <b><u>LTTngTraceStub</u></b>
31 * Dummy test trace. Use in conjunction with LTTngEventParserStub.
33 @SuppressWarnings("nls")
34 public class LTTngTraceStub
extends TmfTrace
<LttngEvent
> {
36 // ========================================================================
38 // ========================================================================
41 private final RandomAccessFile fTrace
;
43 // The associated event parser
44 private final ITmfEventParser
<LttngEvent
> fParser
;
46 // ========================================================================
48 // ========================================================================
53 * @throws FileNotFoundException
55 public LTTngTraceStub(String filename
) throws FileNotFoundException
{
56 this(filename
, DEFAULT_INDEX_PAGE_SIZE
);
63 * @throws FileNotFoundException
65 public LTTngTraceStub(String filename
, int cacheSize
) throws FileNotFoundException
{
66 super(filename
, LttngEvent
.class, filename
, cacheSize
, true);
67 fTrace
= new RandomAccessFile(filename
, "r");
68 fParser
= new LTTngEventParserStub();
72 // ========================================================================
74 // ========================================================================
76 public RandomAccessFile
getStream() {
80 // ========================================================================
82 // ========================================================================
85 * @see org.eclipse.linuxtools.tmf.eventlog.ITmfStreamLocator#seekLocation(java.lang.Object)
88 @SuppressWarnings("unchecked")
89 public TmfContext
seekLocation(ITmfLocation
<?
> location
) {
90 TmfContext context
= null;
92 synchronized(fTrace
) {
93 fTrace
.seek((location
!= null) ?
((TmfLocation
<Long
>) location
).getLocation() : 0);
94 context
= new TmfContext(getCurrentLocation(), 0);
95 // TmfTraceContext context2 = new TmfTraceContext(getCurrentLocation(), 0);
96 // TmfEvent event = parseEvent(context2);
97 // context.setTimestamp(event.getTimestamp());
99 } catch (IOException e
) {
100 // TODO Auto-generated catch block
107 public TmfContext
seekLocation(double ratio
) {
108 // TODO Auto-generated method stub
113 public double getLocationRatio(ITmfLocation
<?
> location
) {
114 // TODO Auto-generated method stub
119 * @see org.eclipse.linuxtools.tmf.eventlog.ITmfStreamLocator#getCurrentLocation()
122 public ITmfLocation
<?
> getCurrentLocation() {
124 return new TmfLocation
<Long
>(fTrace
.getFilePointer());
125 } catch (IOException e
) {
126 // TODO Auto-generated catch block
133 * @see org.eclipse.linuxtools.tmf.trace.ITmfTrace#parseEvent()
136 public ITmfEvent
parseEvent(ITmfContext context
) {
138 // paserNextEvent updates the context
139 LttngEvent event
= (LttngEvent
) fParser
.parseNextEvent(this, context
);
140 // if (event != null) {
141 // context.setTimestamp(event.getTimestamp());
145 catch (IOException e
) {
152 * @see java.lang.Object#toString()
155 public String
toString() {
156 return "[LTTngTraceStub]";
159 // // ========================================================================
160 // // Helper functions
161 // // ========================================================================
164 // * @see org.eclipse.linuxtools.tmf.eventlog.ITmfEventStream#getAttributes()
166 // public Map<String, Object> getAttributes() {
167 // // TODO Auto-generated method stub
This page took 0.033358 seconds and 5 git commands to generate.