<!--
    Copyright (c) 2013-2020 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 2.0
    which accompanies this distribution, and is available at
    https://www.eclipse.org/legal/epl-2.0/
   
    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.binding.http</artifactId>
  <packaging>eclipse-plugin</packaging>
  <name>org.eclipse.om2m :: binding http</name>
  <description>org.eclipse.om2m :: binding http</description>
  <parent>
  	<groupId>org.eclipse.om2m</groupId>
  	<artifactId>org.eclipse.om2m</artifactId>
  	<version>1.1.0-SNAPSHOT</version>
  </parent>
</project>
