# com.bea.ide.sourceeditor.compiler
CompilerSvc Class

public class CompilerSvc
extends `Object`

The Compiler Service is the general mechanism for communication between the IDE and Javelin, BEA's compiler framework. Since this type of communication is extremely structured, occuring primarily when the file system or document contents change, it is rarely necessary to call many of these methods explicity in an IDE extension. Some, like `getFeature``` are frequently called by external consumers.

Hierarchy
  `Object`
  `CompilerSvc`

## Nested Class Summary

`public static interface` | `CompilerSvc.I`
`public static interface` | `CompilerSvc.ICompilerLockManager` A project's lock manager allows callers to obtain a read-lock for accessing volatile compiler data.
`public static interface` | `CompilerSvc.ITwoWayEditLock` This interface defines the shape of a locking mechanism used to synchronize two-way edit communication between the CompilerSvc and Javelin.

## Field Summary

`public static final `String`` | `COOKIE_CurrentAWTMergeID` COOKIE_CurrentAWTMergeID is used to identify which tree merge is being performed for a given document.
`protected static `CompilerSvc.I`` | `instance` CompilerSvc.I

## Constructor Summary

CompilerSvc()

## Method Summary

`public static `CompilerSvc.I`` | `get`()

Methods from class `java.lang.`Object``
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Detail

### COOKIE_CurrentAWTMergeID

    public static final String COOKIE_CurrentAWTMergeID

  COOKIE_CurrentAWTMergeID is used to identify which tree merge is being performed for a given document. This field is public for implementation reasons, and shouldn't ever be needed by extension writers.

### instance

    protected static CompilerSvc.I instance

## Constructor Detail

### CompilerSvc

    public CompilerSvc()

## Method Detail

### get() Method

    public static CompilerSvc.I get()