<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<!--
  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

  Contributors:
    Eike Stepper - initial API and implementation
-->

<plugin>

   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
      <!-- @generated workingsets -->
      <factory
            uri="http://www.eclipse.org/oomph/workingsets/1.0"
            class="org.eclipse.oomph.workingsets.provider.WorkingSetsItemProviderAdapterFactory"
            supportedTypes=
              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
               org.eclipse.emf.edit.provider.ITreeItemContentProvider
               org.eclipse.emf.edit.provider.IItemLabelProvider
               org.eclipse.emf.edit.provider.IItemPropertySource"/>
   </extension>

   <extension point="org.eclipse.emf.edit.childCreationExtenders">
      <!-- @generated workingsets -->
      <extender
            uri="http://www.eclipse.org/oomph/predicates/1.0"
            class="org.eclipse.oomph.workingsets.provider.WorkingSetsItemProviderAdapterFactory$PredicatesChildCreationExtender"/>
      <extender
            uri="http://www.eclipse.org/oomph/base/1.0"
            class="org.eclipse.oomph.workingsets.provider.WorkingSetsItemProviderAdapterFactory$BaseChildCreationExtender"/>
   </extension>

</plugin>
