org.eclipse.oomph.resources.backend

## Class BackendSystem

- java.lang.Object
- - org.eclipse.oomph.resources.backend.BackendResource
  - - org.eclipse.oomph.resources.backend.BackendContainer
    - - org.eclipse.oomph.resources.backend.BackendSystem

- Direct Known Subclasses:
    LocalBackendSystem

      public abstract class BackendSystem
      extends BackendContainer

  Author:
    Eike Stepper

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static interface` | `BackendSystem.IFactory`
    `static class` | `BackendSystem.Registry`

    - ### Nested classes/interfaces inherited from class org.eclipse.oomph.resources.backend.BackendResource

      `BackendResource.Type, BackendResource.Visitor`

  - ### Field Summary

    - ### Fields inherited from class org.eclipse.oomph.resources.backend.BackendResource

      `RESOURCE_SCHEME`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `BackendSystem(URI systemURI)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `accept(BackendResource backendResource, BackendResource.Visitor visitor, IProgressMonitor monitor)`
    `protected Object` | `beginConnected()`
    `protected void` | `beginVisitor()`
    `protected BackendFile` | `createBackendFile(URI systemRelativeURI)`
    `protected BackendFolder` | `createBackendFolder(URI systemRelativeURI)`
    `protected void` | `doAccept(BackendResource backendResource, BackendResource.Visitor visitor, IProgressMonitor monitor)`
    `protected boolean` | `doVisit(BackendContainer backendContainer, BackendResource.Visitor visitor, IProgressMonitor monitor)`
    `protected void` | `endConnected()`
    `protected void` | `endVisitor()`
    `protected abstract boolean` | `exists(BackendResource backendResource, IProgressMonitor monitor)`
    `protected BackendResource` | `findMember(BackendContainer backendContainer, URI relativeURI, IProgressMonitor monitor)`
    `protected abstract InputStream` | `getContents(BackendFile backendFile, IProgressMonitor monitor)`
    `protected abstract Object` | `getDelegate(BackendResource backendResource)`
    `protected abstract Object` | `getDelegateMember(Object containerDelegate, String relativePath, IProgressMonitor monitor)`
    `protected abstract Object[]` | `getDelegateMembers(Object containerDelegate, IProgressMonitor monitor)`
    `protected abstract String` | `getDelegateName(Object resourceDelegate)`
    `protected abstract BackendResource.Type` | `getDelegateType(Object resourceDelegate, boolean checkExists)`
    `protected abstract long` | `getLastModified(BackendResource backendResource, IProgressMonitor monitor)`
    `protected abstract IPath` | `getLocation(BackendResource backendResource)`
    `protected int` | `getMaxThreads()`
    `protected BackendResource[]` | `getMembers(BackendContainer backendContainer, IProgressMonitor monitor)`
    `URI` | `getSystemURI()`
    `BackendResource.Type` | `getType()`
    `protected abstract ResourcesUtil.ImportResult` | `importIntoWorkspace(BackendContainer backendContainer, IProject project, IProgressMonitor monitor)`

    - ### Methods inherited from class org.eclipse.oomph.resources.backend.BackendContainer

      `findMember, findMember, findMember, getFile, getFile, getFile, getFolder, getFolder, getFolder, getMembers, importIntoWorkspace`

    - ### Methods inherited from class org.eclipse.oomph.resources.backend.BackendResource

      `accept, equals, exists, get, get, getAbsoluteURI, getDelegate, getLastModified, getLocation, getName, getParent, getRelativePath, getRelativeURI, getSystem, getSystemRelativePath, getSystemRelativeURI, hashCode, isContainer, isLocal, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### BackendSystem

          protected BackendSystem(URI systemURI)
                           throws BackendException

      Throws:
        `BackendException`

  - ### Method Detail

    - #### getSystemURI

          public final URI getSystemURI()

    - #### getType

          public final BackendResource.Type getType()

      Specified by:
        `getType` in class `BackendResource`

    - #### beginVisitor

          protected void beginVisitor()

    - #### endVisitor

          protected void endVisitor()

    - #### beginConnected

          protected Object beginConnected()

    - #### endConnected

          protected void endConnected()

    - #### getMaxThreads

          protected int getMaxThreads()

    - #### getDelegate

          protected abstract Object getDelegate(BackendResource backendResource)
                                         throws Exception

      Throws:
        `Exception`

    - #### getDelegateMembers

          protected abstract Object[] getDelegateMembers(Object containerDelegate,
                                    IProgressMonitor monitor)
                                                  throws Exception

      Throws:
        `Exception`

    - #### getDelegateMember

          protected abstract Object getDelegateMember(Object containerDelegate,
                                 String relativePath,
                                 IProgressMonitor monitor)
                                               throws Exception

      Throws:
        `Exception`

    - #### getDelegateName

          protected abstract String getDelegateName(Object resourceDelegate)
                                             throws Exception

      Throws:
        `Exception`

    - #### getDelegateType

          protected abstract BackendResource.Type getDelegateType(Object resourceDelegate,
                                             boolean checkExists)
                                                           throws Exception

      Throws:
        `Exception`

    - #### getLocation

          protected abstract IPath getLocation(BackendResource backendResource)
                                        throws Exception

      Throws:
        `Exception`

    - #### exists

          protected abstract boolean exists(BackendResource backendResource,
                       IProgressMonitor monitor)
                                     throws Exception

      Throws:
        `Exception`

    - #### getLastModified

          protected abstract long getLastModified(BackendResource backendResource,
                             IProgressMonitor monitor)
                                           throws Exception

      Throws:
        `Exception`

    - #### getContents

          protected abstract InputStream getContents(BackendFile backendFile,
                                IProgressMonitor monitor)
                                              throws Exception

      Throws:
        `Exception`

    - #### importIntoWorkspace

          protected abstract ResourcesUtil.ImportResult importIntoWorkspace(BackendContainer backendContainer,
                                                       IProject project,
                                                       IProgressMonitor monitor)
                                                                     throws Exception

      Throws:
        `Exception`

    - #### createBackendFolder

          protected final BackendFolder createBackendFolder(URI systemRelativeURI)

    - #### createBackendFile

          protected final BackendFile createBackendFile(URI systemRelativeURI)

    - #### getMembers

          protected BackendResource[] getMembers(BackendContainer backendContainer,
                                     IProgressMonitor monitor)
                                          throws Exception

      Throws:
        `Exception`

    - #### findMember

          protected BackendResource findMember(BackendContainer backendContainer,
                                   URI relativeURI,
                                   IProgressMonitor monitor)
                                        throws Exception

      Throws:
        `Exception`

    - #### accept

          protected final void accept(BackendResource backendResource,
                    BackendResource.Visitor visitor,
                    IProgressMonitor monitor)
                               throws Exception

      Throws:
        `Exception`

    - #### doAccept

          protected void doAccept(BackendResource backendResource,
                      BackendResource.Visitor visitor,
                      IProgressMonitor monitor)
                           throws Exception

      Throws:
        `Exception`

    - #### doVisit

          protected boolean doVisit(BackendContainer backendContainer,
                        BackendResource.Visitor visitor,
                        IProgressMonitor monitor)
                             throws BackendException,
                                    OperationCanceledException

      Specified by:
        `doVisit` in class `BackendContainer`
      Throws:
        `BackendException`
        `OperationCanceledException`

Copyright (c) 2014 Eike Stepper (Berlin, Germany) and others.
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html