<!--
    Copyright (c) 2013-2016 LAAS-CNRS (www.laas.fr)
    7 Colonel Roche 31077 Toulouse - France
   
    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
   
    Initial Contributors:
        Thierry Monteil : Project manager, technical co-manager
        Mahdi Ben Alaya : Technical co-manager
        Samir Medjiah : Technical co-manager
        Khalil Drira : Strategy expert
        Guillaume Garzone : Developer
        Fran?ois A?ssaoui : Developer
   
    New contributors :
 -->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <artifactId>org.eclipse.om2m.commons</artifactId>
  <packaging>eclipse-plugin</packaging>
  <name>org.eclipse.om2m :: commons</name>
  <description>org.eclipse.om2m :: commons</description>
  <parent>
    <groupId>org.eclipse.om2m</groupId>
    <artifactId>org.eclipse.om2m</artifactId>
    <version>1.1.0-SNAPSHOT</version>
  </parent>
</project>
