Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 


Eclipse JDT
Release 3.5

org.eclipse.jdt.core
Interface IClassFile

All Superinterfaces:
IAdaptable, ICodeAssist, IJavaElement, IOpenable, IParent, ISourceReference, ITypeRoot

public interface IClassFile
extends ITypeRoot

Represents an entire binary type (single .class file). A class file has a single child of type IType. Class file elements need to be opened before they can be navigated. If a class file cannot be parsed, its structure remains unknown. Use IJavaElement.isStructureKnown to determine whether this is the case.

Note: IClassFile extends ISourceReference. Source can be obtained for a class file if and only if source has been attached to this class file. The source associated with a class file is the source code of the compilation unit it was (nominally) generated from.

See Also:
IPackageFragmentRoot.attachSource(org.eclipse.core.runtime.IPath, org.eclipse.core.runtime.IPath, IProgressMonitor)
Restriction:
This interface is not intended to be implemented by clients.

Field Summary
 
Fields inherited from interface org.eclipse.jdt.core. IJavaElement
ANNOTATION, CLASS_FILE, COMPILATION_UNIT, FIELD, IMPORT_CONTAINER, IMPORT_DECLARATION, INITIALIZER, JAVA_MODEL, JAVA_PROJECT, LOCAL_VARIABLE, METHOD, PACKAGE_DECLARATION, PACKAGE_FRAGMENT, PACKAGE_FRAGMENT_ROOT, TYPE, TYPE_PARAMETER
 
Method Summary
  ICompilationUnit becomeWorkingCopy ( IProblemRequestor problemRequestor, WorkingCopyOwner owner, IProgressMonitor monitor)
          Deprecated. Use ITypeRoot.getWorkingCopy(WorkingCopyOwner, IProgressMonitor) instead. Note that if this deprecated method is used, problems will be reported to the given problem requestor as well as the problem requestor returned by the working copy owner (if not null).
 byte[] getBytes ()
          Returns the bytes contained in this class file.
  IType getType ()
          Returns the type contained in this class file.
  IJavaElement getWorkingCopy ( IProgressMonitor monitor, IBufferFactory factory)
          Deprecated. Use ITypeRoot.getWorkingCopy(WorkingCopyOwner, IProgressMonitor) instead
 boolean isClass ()
          Returns whether this type represents a class.
 boolean isInterface ()
          Returns whether this type represents an interface.
 
Methods inherited from interface org.eclipse.jdt.core. ITypeRoot
findPrimaryType, getElementAt, getWorkingCopy
 
Methods inherited from interface org.eclipse.jdt.core. IJavaElement
exists, getAncestor, getAttachedJavadoc, getCorrespondingResource, getElementName, getElementType, getHandleIdentifier, getJavaModel, getJavaProject, getOpenable, getParent, getPath, getPrimaryElement, getResource, getSchedulingRule, getUnderlyingResource, isReadOnly, isStructureKnown
 
Methods inherited from interface org.eclipse.core.runtime. IAdaptable
getAdapter
 
Methods inherited from interface org.eclipse.jdt.core. IParent
getChildren, hasChildren
 
Methods inherited from interface org.eclipse.jdt.core. IOpenable
close, findRecommendedLineSeparator, getBuffer, hasUnsavedChanges, isConsistent, isOpen, makeConsistent, open, save
 
Methods inherited from interface org.eclipse.jdt.core. ISourceReference
exists, getSource, getSourceRange
 
Methods inherited from interface org.eclipse.jdt.core. ICodeAssist
codeComplete, codeComplete, codeComplete, codeComplete, codeComplete, codeComplete, codeComplete, codeSelect, codeSelect
 

Method Detail

becomeWorkingCopy

ICompilationUnit becomeWorkingCopy(
IProblemRequestor problemRequestor,
                                   
WorkingCopyOwner owner,
                                   
IProgressMonitor monitor)
                                   throws 
JavaModelException
Deprecated. Use ITypeRoot.getWorkingCopy(WorkingCopyOwner, IProgressMonitor) instead. Note that if this deprecated method is used, problems will be reported to the given problem requestor as well as the problem requestor returned by the working copy owner (if not null).

Changes this class file handle into a working copy. A new IBuffer is created using the given owner. Uses the primary owner if null is specified.

When switching to working copy mode, problems are reported to the given IProblemRequestor. Note that once in working copy mode, the given IProblemRequestor is ignored. Only the original IProblemRequestor is used to report subsequent problems.

Once in working copy mode, changes to this working copy or its children are done in memory. Only the new buffer is affected.

Using ICompilationUnit.commitWorkingCopy(boolean, IProgressMonitor) on the working copy will throw a JavaModelException as a class file is implicetly read-only.

If this class file was already in working copy mode, an internal counter is incremented and no other action is taken on this working copy. To bring this working copy back into the original mode (where it reflects the underlying resource), ICompilationUnit.discardWorkingCopy() must be call as many times as becomeWorkingCopy(IProblemRequestor, WorkingCopyOwner, IProgressMonitor).

The primary compilation unit of a class file's working copy does not exist if the class file is not in working copy mode (classFileWorkingCopy.getPrimary().exists() == false).

The resource of a class file's working copy is null if the class file is in an external jar file.

Parameters:
problemRequestor - a requestor which will get notified of problems detected during reconciling as they are discovered. The requestor can be set to null indicating that the client is not interested in problems.
owner - the given WorkingCopyOwner, or null for the primary owner
monitor - a progress monitor used to report progress while opening this compilation unit or null if no progress should be reported
Returns:
a working copy for this class file
Throws:
JavaModelException - if this compilation unit could not become a working copy.
Since:
3.2
See Also:
ICompilationUnit.discardWorkingCopy()

getBytes

byte[] getBytes()
                throws 
JavaModelException
Returns the bytes contained in this class file.

Returns:
the bytes contained in this class file
Throws:
JavaModelException - if this element does not exist or if an exception occurs while accessing its corresponding resource
Since:
3.3

getType

IType getType()
Returns the type contained in this class file. This is a handle-only method. The type may or may not exist.

Returns:
the type contained in this class file

getWorkingCopy

IJavaElement getWorkingCopy(
IProgressMonitor monitor,
                            
IBufferFactory factory)
                            throws 
JavaModelException
Deprecated. Use ITypeRoot.getWorkingCopy(WorkingCopyOwner, IProgressMonitor) instead

Returns a working copy on the source associated with this class file using the given factory to create the buffer, or null if there is no source associated with the class file.

The buffer will be automatically initialized with the source of the class file upon creation.

The only valid operations on this working copy are getBuffer() or getOriginalElement.

Parameters:
monitor - a progress monitor used to report progress while opening this compilation unit or null if no progress should be reported
factory - the factory that creates a buffer that is used to get the content of the working copy or null if the internal factory should be used
Returns:
a a working copy on the source associated with this class file
Throws:
JavaModelException - if the source of this class file can not be determined. Reasons include:
  • This class file does not exist (ELEMENT_DOES_NOT_EXIST)
Since:
2.0

isClass

boolean isClass()
                throws 
JavaModelException
Returns whether this type represents a class. This is not guaranteed to be instantaneous, as it may require parsing the underlying file.

Returns:
true if the class file represents a class.
Throws:
JavaModelException - if this element does not exist or if an exception occurs while accessing its corresponding resource

isInterface

boolean isInterface()
                    throws 
JavaModelException
Returns whether this type represents an interface. This is not guaranteed to be instantaneous, as it may require parsing the underlying file.

Returns:
true if the class file represents an interface.
Throws:
JavaModelException - if this element does not exist or if an exception occurs while accessing its corresponding resource

Eclipse JDT
Release 3.5

Copyright (c) IBM Corp. and others 2000, 2008. All Rights Reserved.

 
 
  Published under the terms of the Eclipse Public License Version 1.0 ("EPL") Design by Interspire