org.eclipse.xtext.generator.trace
Class SmapSupport

java.lang.Object
  extended by org.eclipse.xtext.generator.trace.SmapSupport

public class SmapSupport
extends java.lang.Object

Author:
Sven Efftinge - Initial contribution and API

Nested Class Summary
static class SmapSupport.LineMapping
           
 
Constructor Summary
SmapSupport()
           
 
Method Summary
 java.util.Set<java.lang.Integer> createSmapInfo(AbstractTraceRegion targetRegion, java.util.Set<SmapSupport.LineMapping> lineMappings)
           
 java.lang.String generateSmap(AbstractTraceRegion rootTraceRegion, java.lang.String outputFileName)
           
 java.io.InputStream getModifiedByteCode(java.lang.String smap, java.io.InputStream originalByteCode)
          Installs the given SMAP as source debug extension on the given byte code.
protected  java.lang.String getPath(org.eclipse.emf.common.util.URI path)
           
protected  java.lang.String getStratumName(org.eclipse.emf.common.util.URI path)
           
 java.util.List<SmapSupport.LineMapping> normalizeLineInfo(java.util.Set<SmapSupport.LineMapping> lineData)
           
protected  java.lang.String toSmap(java.lang.String outputFileName, java.util.List<SmapSupport.LineMapping> lineInfo)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SmapSupport

public SmapSupport()
Method Detail

generateSmap

@Nullable
public java.lang.String generateSmap(AbstractTraceRegion rootTraceRegion,
                                              java.lang.String outputFileName)

toSmap

protected java.lang.String toSmap(java.lang.String outputFileName,
                                  java.util.List<SmapSupport.LineMapping> lineInfo)

normalizeLineInfo

public java.util.List<SmapSupport.LineMapping> normalizeLineInfo(java.util.Set<SmapSupport.LineMapping> lineData)

createSmapInfo

public java.util.Set<java.lang.Integer> createSmapInfo(AbstractTraceRegion targetRegion,
                                                       java.util.Set<SmapSupport.LineMapping> lineMappings)

getStratumName

protected java.lang.String getStratumName(org.eclipse.emf.common.util.URI path)

getPath

protected java.lang.String getPath(org.eclipse.emf.common.util.URI path)

getModifiedByteCode

public java.io.InputStream getModifiedByteCode(java.lang.String smap,
                                               java.io.InputStream originalByteCode)
                                        throws org.eclipse.core.runtime.CoreException,
                                               java.io.IOException
Installs the given SMAP as source debug extension on the given byte code.

Throws:
org.eclipse.core.runtime.CoreException
java.io.IOException