Class V8ProjectHandle
java.lang.Object
org.eclipse.core.runtime.PlatformObject
org.eclipse.handly.model.impl.support.Element
com._1c.g5.v8.dt.core.handle.impl.V8ProjectHandle
- All Implemented Interfaces:
IV8Element
,IV8ProjectHandle
,org.eclipse.core.runtime.IAdaptable
,org.eclipse.handly.model.IElement
,org.eclipse.handly.model.IElementExtension
,org.eclipse.handly.model.impl.IElementImpl
,org.eclipse.handly.model.impl.IElementImplExtension
,org.eclipse.handly.model.impl.support.IElementImplSupport
,org.eclipse.handly.model.impl.support.IModelManager.Provider
- Direct Known Subclasses:
ExternalV8ProjectHandle
public class V8ProjectHandle
extends org.eclipse.handly.model.impl.support.Element
implements IV8ProjectHandle
Represents a V8 project handle.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.eclipse.handly.model.impl.IElementImplExtension
org.eclipse.handly.model.impl.IElementImplExtension.CloseHint
-
Field Summary
Fields inherited from interface org.eclipse.handly.model.impl.IElementImplExtension
CLOSE_HINT, FORCE_OPEN
Fields inherited from interface org.eclipse.handly.model.impl.support.IElementImplSupport
NEW_ELEMENTS, NO_BODY
Fields inherited from interface com._1c.g5.v8.dt.core.handle.IV8ProjectHandle
NATURE_ID
-
Method Summary
Modifier and TypeMethodDescriptionvoid
buildStructure_
(org.eclipse.handly.context.IContext context, org.eclipse.core.runtime.IProgressMonitor monitor) void
Creates a new V8 project in the workspace.void
create
(org.eclipse.core.runtime.IProgressMonitor monitor) Creates a new V8 project in the workspace with files in the default location in the local file system.default org.eclipse.handly.model.impl.support.IModelManager
org.eclipse.core.resources.IResource[]
Returns the non-V8 resources contained in this project.org.eclipse.core.resources.IProject
Returns theIProject
on which thisIV8Project
was created.org.eclipse.core.resources.IResource
Returns the V8 file with the given full name in this project, ornull
if unable to associate the given name with a V8 file.getV8File
(org.eclipse.core.resources.IFile file) Returns the V8 file with full name from originIFile
in this project, ornull
if unable to associate the givenIFile
with a V8 file.IV8File[]
Returns the V8 files contained in this project.void
validateExistence_
(org.eclipse.handly.context.IContext context) Methods inherited from class org.eclipse.handly.model.impl.support.Element
equals, getName_, getParent_, hashCode, toString
Methods inherited from class org.eclipse.core.runtime.PlatformObject
getAdapter
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.eclipse.handly.model.IElement
equals, hashCode
Methods inherited from interface org.eclipse.handly.model.IElementExtension
exists, getAncestor, getChildren, getChildren, getLocationUri, getName, getResource
Methods inherited from interface org.eclipse.handly.model.impl.IElementImpl
equalsAndSameParentChain_, fetchChildren_, fetchChildrenOfType_, getChildrenOfType_, getHandleMemento_, getLocationUri_, getRoot_, toDisplayString_
Methods inherited from interface org.eclipse.handly.model.impl.IElementImplExtension
close_, getBody_, getBody_, getChildren_
Methods inherited from interface org.eclipse.handly.model.impl.support.IElementImplSupport
canEqual_, close_, defaultEquals_, defaultHashCode_, exists_, findBody_, getChildrenFromBody_, getElementManager_, getModel_, isOpenable_, newDoesNotExistException_, open_, openParent_, peekAtBody_, remove_, removing_, toString_, toStringAncestors_, toStringBody_, toStringChildren_, toStringName_
Methods inherited from interface com._1c.g5.v8.dt.core.handle.IV8Element
getRoot
Methods inherited from interface com._1c.g5.v8.dt.core.handle.IV8ProjectHandle
getParent
-
Method Details
-
create
public void create(org.eclipse.core.runtime.IProgressMonitor monitor) throws org.eclipse.core.runtime.CoreException Description copied from interface:IV8ProjectHandle
Creates a new V8 project in the workspace with files in the default location in the local file system.This is a convenience method, fully equivalent to:
create(null, monitor);
This method changes resources; these changes will be reported in a subsequent change event, including an indication that this project has been added to the workspace.
This method is long-running; progress and cancellation are provided by the given progress monitor.
- Specified by:
create
in interfaceIV8ProjectHandle
- Parameters:
monitor
- a progress monitor, ornull
if progress reporting is not desired- Throws:
org.eclipse.core.runtime.CoreException
- if the project could not be created. Reasons include:- The project already exists in the workspace.
- The name of the project is not valid (according to
IWorkspace.validateName
). - The project description file could not be created in the project content area.
- Resource changes are disallowed during certain types of resource change
event notification. See
IResourceChangeEvent
for more details.
- See Also:
-
create
public void create(URI location, org.eclipse.core.runtime.IProgressMonitor monitor) throws org.eclipse.core.runtime.CoreException Description copied from interface:IV8ProjectHandle
Creates a new V8 project in the workspace. Upon successful completion, the corresponding project resource will exist and be open.The created project resource will have the following configuration:
- the given project location
- no references to other projects
- V8 project nature
- Xtext project nature and builder
- UTF-8 as the default charset
This method changes resources; these changes will be reported in a subsequent change event, including an indication that this project has been added to the workspace.
This method is long-running; progress and cancellation are provided by the given progress monitor.
- Specified by:
create
in interfaceIV8ProjectHandle
- Parameters:
location
- the location for the project. Ifnull
is specified, the default location is used.monitor
- a progress monitor, ornull
if progress reporting is not desired- Throws:
org.eclipse.core.runtime.CoreException
- if the project could not be created. Reasons include:- The project already exists in the workspace.
- The name of the project is not valid (according to
IWorkspace.validateName
). - The project description file could not be created in the project content area.
- Resource changes are disallowed during certain types of resource change
event notification. See
IResourceChangeEvent
for more details.
- See Also:
-
IWorkspace.validateProjectLocationURI(IProject, URI)
-
getV8File
Description copied from interface:IV8ProjectHandle
Returns the V8 file with the given full name in this project, ornull
if unable to associate the given name with a V8 file. The name has to be a valid file name. This is a handle-only method. The V8 file may or may not exist.- Specified by:
getV8File
in interfaceIV8ProjectHandle
- Parameters:
name
- the name of the V8 file (notnull
)- Returns:
- the V8 file with the given name in this project,
or
null
if unable to associate the given name with a V8 file
-
getV8File
Description copied from interface:IV8ProjectHandle
Returns the V8 file with full name from originIFile
in this project, ornull
if unable to associate the givenIFile
with a V8 file. This is a handle-only method. The V8 file may or may not exist.- Specified by:
getV8File
in interfaceIV8ProjectHandle
- Parameters:
file
- actualIFile
for creating V8 file (notnull
)- Returns:
- the V8 file with the given name in this project,
or
null
if unable to associate the given name with a V8 file
-
getV8Files
Description copied from interface:IV8ProjectHandle
Returns the V8 files contained in this project.- Specified by:
getV8Files
in interfaceIV8ProjectHandle
- Returns:
- the V8 files contained in this project (never
null
) - Throws:
org.eclipse.core.runtime.CoreException
- if this element does not exist or if an exception occurs while accessing its corresponding resource
-
getNonV8Resources
public org.eclipse.core.resources.IResource[] getNonV8Resources() throws org.eclipse.core.runtime.CoreExceptionDescription copied from interface:IV8ProjectHandle
Returns the non-V8 resources contained in this project.- Specified by:
getNonV8Resources
in interfaceIV8ProjectHandle
- Returns:
- the non-V8 resources contained in this project (never
null
) - Throws:
org.eclipse.core.runtime.CoreException
- if this element does not exist or if an exception occurs while accessing its corresponding resource
-
getProject
public org.eclipse.core.resources.IProject getProject()Description copied from interface:IV8ProjectHandle
Returns theIProject
on which thisIV8Project
was created. This is handle-only method.- Specified by:
getProject
in interfaceIV8ProjectHandle
- Returns:
- the
IProject
on which thisIV8Project
was created (nevernull
)
-
getResource_
public org.eclipse.core.resources.IResource getResource_()- Specified by:
getResource_
in interfaceorg.eclipse.handly.model.impl.IElementImpl
-
validateExistence_
public void validateExistence_(org.eclipse.handly.context.IContext context) throws org.eclipse.core.runtime.CoreException - Specified by:
validateExistence_
in interfaceorg.eclipse.handly.model.impl.support.IElementImplSupport
- Throws:
org.eclipse.core.runtime.CoreException
-
buildStructure_
public void buildStructure_(org.eclipse.handly.context.IContext context, org.eclipse.core.runtime.IProgressMonitor monitor) throws org.eclipse.core.runtime.CoreException - Specified by:
buildStructure_
in interfaceorg.eclipse.handly.model.impl.support.IElementImplSupport
- Throws:
org.eclipse.core.runtime.CoreException
-
getModelManager_
default org.eclipse.handly.model.impl.support.IModelManager getModelManager_()- Specified by:
getModelManager_
in interfaceorg.eclipse.handly.model.impl.support.IModelManager.Provider
-