<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.wst.common.project.facet.core">
<annotation>
      <appInfo>
         <meta.schema plugin="org.eclipse.wst.common.project.facet.core" id="listeners" name="Faceted Project Listeners Extension Point"/>
      </appInfo>
      <documentation>
         This extension point allows for registration of listeners that will be notified of changes to the metadata of faceted projects. The following event types are supported: 

&lt;p&gt;
&lt;code&gt;
PROJECT_MODIFIED&lt;br/&gt;
PRE_INSTALL&lt;br/&gt;
POST_INSTALL&lt;br/&gt;
PRE_UNINSTALL&lt;br/&gt;
POST_UNINSTALL&lt;br/&gt;
PRE_VERSION_CHANGE&lt;br/&gt;
POST_VERSION_CHANGE&lt;br/&gt;
FIXED_FACETS_CHANGED&lt;br/&gt;
TARGETED_RUNTIMES_CHANGED&lt;br/&gt;
PRIMARY_RUNTIME_CHANGED
&lt;/code&gt;
&lt;/p&gt;

&lt;p&gt;See the documentation for &lt;code&gt;org.eclipse.wst.common.project.facet.core.events.IFacetedProjectEvent.Type&lt;/code&gt; enum for more details about each event type.&lt;/p&gt;

&lt;p&gt;It is also possible to register listeners in code using either &lt;code&gt;FacetedProjectFramework.addListener()&lt;/code&gt; or &lt;code&gt;IFacetedProject.addListener()&lt;/code&gt; methods.&lt;/p&gt;
      </documentation>
   </annotation>

   <element name="extension">
      <complexType>
         <sequence>
            <element ref="listener" 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>
               <appInfo>
                  <meta.attribute translatable="true"/>
               </appInfo>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="listener">
      <annotation>
         <documentation>
            Registers one listener.
         </documentation>
      </annotation>
      <complexType>
         <attribute name="class" type="string" use="required">
            <annotation>
               <documentation>
                  The listener class.
               </documentation>
               <appInfo>
                  <meta.attribute kind="java" basedOn="org.eclipse.wst.common.project.facet.core.events.IFacetedProjectListener"/>
               </appInfo>
            </annotation>
         </attribute>
         <attribute name="eventTypes" type="string">
            <annotation>
               <documentation>
                  A comma-separated list of event types that the listener should be notified about.
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <annotation>
      <appInfo>
         <meta.section type="since"/>
      </appInfo>
      <documentation>
         2.0
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="examples"/>
      </appInfo>
      <documentation>
         &lt;pre&gt;
&lt;extension point=&quot;org.eclipse.wst.common.project.facet.core.listeners&quot;&gt;
  &lt;!-- Listen to all events. --&gt;
  &lt;listener class=&quot;com.mycompany.myproduct.MyListener1&quot;/&gt;
  &lt;!-- Listen to specific events. --&gt;
  &lt;listener class=&quot;com.mycompany.myproduct.MyListener2&quot; eventTypes=&quot;PROJECT_MODIFIED&quot;/&gt;
  &lt;listener class=&quot;com.mycompany.myproduct.MyListener2&quot; eventTypes=&quot;PRE_INSTALL,FIXED_FACETS_CHANGED&quot;/&gt;
&lt;/extension&gt;
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="apiInfo"/>
      </appInfo>
      <documentation>
         
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="implementation"/>
      </appInfo>
      <documentation>
         
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="copyright"/>
      </appInfo>
      <documentation>
         Copyright (c) 2010 Oracle and others.&lt;br&gt;
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
&lt;a href=&quot;https://www.eclipse.org/legal/epl-2.0/
&quot;&gt;https://www.eclipse.org/legal/epl-2.0/
&lt;/a&gt;.
      </documentation>
   </annotation>

</schema>
