diff --git a/org.ntlab.traceCollector/plugin.xml b/org.ntlab.traceCollector/plugin.xml index 5fc6cdd..e2ae09b 100644 --- a/org.ntlab.traceCollector/plugin.xml +++ b/org.ntlab.traceCollector/plugin.xml @@ -4,42 +4,49 @@ - - - - - - - - - + + + + + - - - - - - - - - + + + + + + + + + + + + + + + + + + + diff --git a/org.ntlab.traceCollector/src/org/ntlab/traceCollector/handlers/InstrumentationHandler.java b/org.ntlab.traceCollector/src/org/ntlab/traceCollector/handlers/InstrumentationHandler.java index 9b92582..e05c4db 100644 --- a/org.ntlab.traceCollector/src/org/ntlab/traceCollector/handlers/InstrumentationHandler.java +++ b/org.ntlab.traceCollector/src/org/ntlab/traceCollector/handlers/InstrumentationHandler.java @@ -23,6 +23,7 @@ import org.eclipse.jface.viewers.IStructuredSelection; import org.eclipse.ui.handlers.HandlerUtil; import org.ntlab.traceCollector.Activator; +import org.ntlab.traceCollector.tracer.ITraceGenerator; import org.ntlab.traceCollector.tracer.JSONTraceGenerator; import org.ntlab.traceCollector.tracer.OnlineTraceGenerator; import org.ntlab.traceCollector.tracer.OutputStatementsGenerator; @@ -34,7 +35,7 @@ * @author Nitta * */ -public class InstrumentationHandler extends AbstractHandler { +public abstract class InstrumentationHandler extends AbstractHandler { @Override public Object execute(ExecutionEvent event) throws ExecutionException { @@ -82,7 +83,8 @@ // �C���X�g�D�������e�[�V�������s�� // Tracer.initialize(new OutputStatementsGenerator(new JSONTraceGenerator()), cp); // �����ŏo�̓t�H�[�}�b�g���w�肷�� - Tracer.initialize(new OutputStatementsGenerator(new OnlineTraceGenerator()), cp); // �����ŏo�̓t�H�[�}�b�g���w�肷�� +// Tracer.initialize(new OutputStatementsGenerator(new OnlineTraceGenerator()), cp); // �����ŏo�̓t�H�[�}�b�g���w�肷�� + Tracer.initialize(new OutputStatementsGenerator(getGenerator()), cp); // �����ŏo�̓t�H�[�}�b�g���w�肷�� Tracer.packageInstrumentation("", classPath + "/"); } catch (JavaModelException | NotFoundException e) { e.printStackTrace(); @@ -91,7 +93,9 @@ } return null; } - + + public abstract ITraceGenerator getGenerator(); + private String getPath(String location) { if (location.indexOf('/') >= 0) { return location.substring(location.indexOf('/')).split("!/")[0]; diff --git a/org.ntlab.traceCollector/src/org/ntlab/traceCollector/handlers/InstrumentationHandlerForOfflineAnalysis.java b/org.ntlab.traceCollector/src/org/ntlab/traceCollector/handlers/InstrumentationHandlerForOfflineAnalysis.java new file mode 100644 index 0000000..49111e8 --- /dev/null +++ b/org.ntlab.traceCollector/src/org/ntlab/traceCollector/handlers/InstrumentationHandlerForOfflineAnalysis.java @@ -0,0 +1,20 @@ +package org.ntlab.traceCollector.handlers; + +import org.eclipse.core.commands.ExecutionEvent; +import org.eclipse.core.commands.ExecutionException; +import org.ntlab.traceCollector.tracer.ITraceGenerator; +import org.ntlab.traceCollector.tracer.JSONTraceGenerator; + +public class InstrumentationHandlerForOfflineAnalysis extends InstrumentationHandler { + + @Override + public Object execute(ExecutionEvent event) throws ExecutionException { + System.out.println("InstrumentationHandlerForOfflineAnalysis#execute(ExecutionEvent)"); + return super.execute(event); + } + + @Override + public ITraceGenerator getGenerator() { + return new JSONTraceGenerator(); + } +} \ No newline at end of file diff --git a/org.ntlab.traceCollector/src/org/ntlab/traceCollector/handlers/InstrumentationHandlerForOnlineAnalysis.java b/org.ntlab.traceCollector/src/org/ntlab/traceCollector/handlers/InstrumentationHandlerForOnlineAnalysis.java new file mode 100644 index 0000000..dda9e5c --- /dev/null +++ b/org.ntlab.traceCollector/src/org/ntlab/traceCollector/handlers/InstrumentationHandlerForOnlineAnalysis.java @@ -0,0 +1,20 @@ +package org.ntlab.traceCollector.handlers; + +import org.eclipse.core.commands.ExecutionEvent; +import org.eclipse.core.commands.ExecutionException; +import org.ntlab.traceCollector.tracer.ITraceGenerator; +import org.ntlab.traceCollector.tracer.OnlineTraceGenerator; + +public class InstrumentationHandlerForOnlineAnalysis extends InstrumentationHandler { + + @Override + public Object execute(ExecutionEvent event) throws ExecutionException { + System.out.println("InstrumentationHandlerForOnlineAnalysis#execute(ExecutionEvent)"); + return super.execute(event); + } + + @Override + public ITraceGenerator getGenerator() { + return new OnlineTraceGenerator(); + } +} \ No newline at end of file