<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.rse.core">
<annotation>
      <appInfo>
         <meta.schema plugin="org.eclipse.rse.core" id="systemTypes" name="RSE System Types"/>
      </appInfo>
      <documentation>
         This extension point is used in combination with the &quot;org.eclipse.rse.core.subsystemConfigurations&quot; extension point for defining new subsystems, which appear under a connection when it is expanded in the Remote Systems view. The systemTypes extension point allows subsystem providers to define a new system type that appears in the list of valid system types in the New Connection wizard, used by users when defining a new connection to a remote system. The system type is simply a string identifying the operating system type, such as Solaris, and an pair of icons used to identify connections to systems of this type. One icon is used when the connection is not connected, while the other is used when there is a live connection.
      </documentation>
   </annotation>

   <element name="extension">
      <annotation>
         <documentation>
            (no description available)
         </documentation>
      </annotation>
      <complexType>
         <sequence>
            <element ref="systemType" minOccurs="1" maxOccurs="unbounded"/>
         </sequence>
         <attribute name="point" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
         <attribute name="id" type="string">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
         <attribute name="name" type="string">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="systemType">
      <annotation>
         <appInfo>
            <meta.element labelAttribute="name" icon="icon"/>
         </appInfo>
         <documentation>
            This element defines a remote system type like &quot;Linux&quot;, against which subsystem configurations can be registered.
         </documentation>
      </annotation>
      <complexType>
         <sequence minOccurs="0" maxOccurs="unbounded">
            <element ref="property"/>
         </sequence>
         <attribute name="id" type="string" use="required">
            <annotation>
               <documentation>
                  A unique identifier for this extension.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="name" type="string" use="required">
            <annotation>
               <documentation>
                  The display name for the system type, such as &quot;Solaris&quot;. This name is also currently used as internal identifier when referencing the system type in filters, subsystem configurations and similar, therefore it is not translatable. Future versions of RSE may change this and reference the systemType id instead of the name.
&lt;p&gt;
&lt;b&gt;Deprecated:&lt;/b&gt; Use system type id to specify a unique identifier and system type label to specify a translatable UI label.
&lt;p&gt;
RSE pre-defines a number of system types, although they may not appear unless a subsystem configuration is registered against that type. These are the supplied system types:
&lt;ul&gt;
&lt;li&gt;Local&lt;/li&gt;
&lt;li&gt;Unix&lt;/li&gt;
&lt;li&gt;Linux&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;
               </documentation>
            </annotation>
         </attribute>
         <attribute name="label" type="string" use="required">
            <annotation>
               <documentation>
                  A label used in the UI to identify the system type besides the system type icon.
               </documentation>
               <appInfo>
                  <meta.attribute translatable="true"/>
               </appInfo>
            </annotation>
         </attribute>
         <attribute name="description" type="string">
            <annotation>
               <documentation>
                  A short description of the system type. Shows up in preferences for system type.
               </documentation>
               <appInfo>
                  <meta.attribute translatable="true"/>
               </appInfo>
            </annotation>
         </attribute>
         <attribute name="icon" type="string">
            <annotation>
               <documentation>
                  A relative path to an icon that will be used when displaying connections to systems of this type. If not specified, a default icon will be used by RSE.
               </documentation>
               <appInfo>
                  <meta.attribute kind="resource"/>
               </appInfo>
            </annotation>
         </attribute>
         <attribute name="iconLive" type="string">
            <annotation>
               <documentation>
                  A relative path to an icon that will be used when displaying connections to systems of this type, when there is a live connection to the remote system. This is usually a derivation of the icon attribute, adorned with a bright green arrow.
If not specified, a default icon will be used by RSE.
               </documentation>
               <appInfo>
                  <meta.attribute kind="resource"/>
               </appInfo>
            </annotation>
         </attribute>
         <attribute name="enableOffline" type="boolean">
            <annotation>
               <documentation>
                  Whether this system type can be put in offline mode. This decides whether to show the Work Offline action for connections of this type. This is an optional attribute, the default value is false.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="subsystemConfigurationIds" type="string">
            <annotation>
               <documentation>
                  A semicolon separated list of fully qualified subsystem configuration ids this system type wants to get registered against.
&lt;p&gt;
&lt;b&gt;Note:&lt;/b&gt; The list specified here does not imply that the corresponding subsystem configurations exist. The list contains only possibilites, not requirements.
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="property">
      <annotation>
         <appInfo>
            <meta.element labelAttribute="name"/>
         </appInfo>
         <documentation>
            On optional property for the system type. The following property keys are already used internally, and are thus reserved:
&lt;ul&gt;
&lt;li&gt;&quot;icon&quot; to store the value of the icon attribute&lt;/li&gt;
&lt;li&gt;&quot;iconLive&quot; to store the value of the iconLive attribute&lt;/li&gt;
&lt;li&gt;&quot;enableOffline&quot; to store the value of the enableOffline attribute&lt;/li&gt;
&lt;li&gt;&quot;isCaseSensitive&quot; for system types with a case sensitive file system&lt;/li&gt;
&lt;li&gt;&quot;isLocal&quot; for system types that refer to the local system&lt;/li&gt;
&lt;li&gt;&quot;isWindows&quot; for system types that refer to a Windows kind of system (case insensitive file system with drive letters)&lt;/li&gt;
&lt;/ul&gt;
In general, clients can use any own properties with system types, but should use reverse DNS notation to qualify their property keys (e.g. &lt;code&gt;com.acme.isFoobarSystem&lt;/code&gt;. Property keys without qualifying namespace are reserved for RSE internal use. See also class IRSESystemType, methods getProperty() and testProperty().

         </documentation>
      </annotation>
      <complexType>
         <attribute name="name" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
         <attribute name="value" type="string" use="required">
            <annotation>
               <documentation>
                  
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <annotation>
      <appInfo>
         <meta.section type="examples"/>
      </appInfo>
      <documentation>
         The following is an example of the extension point schema:
&lt;p&gt;
&lt;pre&gt;
  &lt;extension point=&quot;org.eclipse.rse.core.systemTypes&quot;&gt;
      &lt;systemType id=&quot;com.acme.systemtype.Solaris&quot;
            name=&quot;Solaris&quot;
            description=&quot;Connects to Solaris systems.&quot;
      icon=&quot;icons/solaris.gif&quot;
      iconLive=&quot;icons/solarisLive.gif&quot;&gt;
   &lt;/systemType&gt;
  &lt;/extension&gt;
&lt;/pre&gt;
&lt;/p&gt;
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="apiInfo"/>
      </appInfo>
      <documentation>
         There is no code to implement for this extension point.
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="implementation"/>
      </appInfo>
      <documentation>
         See the plugin.xml file for plugin org.eclipse.rse.ui for examples of using this extension point.
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="copyright"/>
      </appInfo>
      <documentation>
         Copyright (c) 2002, 2007 IBM Corporation 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

Contributors:
IBM Corporation - initial API and implementation
Martin Oberhuber (Wind River) - [186523] Move subsystemConfigurations from UI to core
      </documentation>
   </annotation>

</schema>
