diff --git a/inventory/src/main/java/org/apache/felix/inventory/PrinterMode.java b/inventory/src/main/java/org/apache/felix/inventory/PrinterMode.java
index 071da5b..6324707 100644
--- a/inventory/src/main/java/org/apache/felix/inventory/PrinterMode.java
+++ b/inventory/src/main/java/org/apache/felix/inventory/PrinterMode.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.felix.status;
+package org.apache.felix.inventory;
 
 /**
  * Enumeration for the different printer modes.
diff --git a/inventory/src/main/java/org/apache/felix/inventory/StatusPrinter.java b/inventory/src/main/java/org/apache/felix/inventory/StatusPrinter.java
index d4b446e..8310730 100644
--- a/inventory/src/main/java/org/apache/felix/inventory/StatusPrinter.java
+++ b/inventory/src/main/java/org/apache/felix/inventory/StatusPrinter.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.felix.status;
+package org.apache.felix.inventory;
 
 import java.io.PrintWriter;
 
diff --git a/inventory/src/main/java/org/apache/felix/inventory/StatusPrinterHandler.java b/inventory/src/main/java/org/apache/felix/inventory/StatusPrinterHandler.java
index 18bde07..af58e8c 100644
--- a/inventory/src/main/java/org/apache/felix/inventory/StatusPrinterHandler.java
+++ b/inventory/src/main/java/org/apache/felix/inventory/StatusPrinterHandler.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.felix.status;
+package org.apache.felix.inventory;
 
 
 /**
diff --git a/inventory/src/main/java/org/apache/felix/inventory/StatusPrinterManager.java b/inventory/src/main/java/org/apache/felix/inventory/StatusPrinterManager.java
index 617f5ce..84b785f 100644
--- a/inventory/src/main/java/org/apache/felix/inventory/StatusPrinterManager.java
+++ b/inventory/src/main/java/org/apache/felix/inventory/StatusPrinterManager.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.felix.status;
+package org.apache.felix.inventory;
 
 /**
  * The manager allows to access status printers.
diff --git a/inventory/src/main/java/org/apache/felix/inventory/ZipAttachmentProvider.java b/inventory/src/main/java/org/apache/felix/inventory/ZipAttachmentProvider.java
index 76f328d..f60691c 100644
--- a/inventory/src/main/java/org/apache/felix/inventory/ZipAttachmentProvider.java
+++ b/inventory/src/main/java/org/apache/felix/inventory/ZipAttachmentProvider.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.felix.status;
+package org.apache.felix.inventory;
 
 import java.io.IOException;
 import java.util.zip.ZipOutputStream;
diff --git a/inventory/src/main/java/org/apache/felix/inventory/impl/AbstractWebConsolePlugin.java b/inventory/src/main/java/org/apache/felix/inventory/impl/AbstractWebConsolePlugin.java
index 49596c9..c9767ce 100644
--- a/inventory/src/main/java/org/apache/felix/inventory/impl/AbstractWebConsolePlugin.java
+++ b/inventory/src/main/java/org/apache/felix/inventory/impl/AbstractWebConsolePlugin.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.felix.status.impl;
+package org.apache.felix.inventory.impl;
 
 import java.io.IOException;
 import java.io.OutputStreamWriter;
@@ -31,9 +31,9 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-import org.apache.felix.status.PrinterMode;
-import org.apache.felix.status.StatusPrinterHandler;
-import org.apache.felix.status.StatusPrinterManager;
+import org.apache.felix.inventory.PrinterMode;
+import org.apache.felix.inventory.StatusPrinterHandler;
+import org.apache.felix.inventory.StatusPrinterManager;
 
 /**
  * The web console plugin for a status printer.
diff --git a/inventory/src/main/java/org/apache/felix/inventory/impl/Activator.java b/inventory/src/main/java/org/apache/felix/inventory/impl/Activator.java
index feabdd1..504992a 100644
--- a/inventory/src/main/java/org/apache/felix/inventory/impl/Activator.java
+++ b/inventory/src/main/java/org/apache/felix/inventory/impl/Activator.java
@@ -14,13 +14,13 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.felix.status.impl;
+package org.apache.felix.inventory.impl;
 
 import java.util.Dictionary;
 import java.util.Hashtable;
 
-import org.apache.felix.status.StatusPrinterManager;
-import org.apache.felix.status.impl.webconsole.WebConsoleAdapter;
+import org.apache.felix.inventory.StatusPrinterManager;
+import org.apache.felix.inventory.impl.webconsole.WebConsoleAdapter;
 import org.osgi.framework.BundleActivator;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.Constants;
diff --git a/inventory/src/main/java/org/apache/felix/inventory/impl/ClassUtils.java b/inventory/src/main/java/org/apache/felix/inventory/impl/ClassUtils.java
index 6c02724..de5bbcf 100644
--- a/inventory/src/main/java/org/apache/felix/inventory/impl/ClassUtils.java
+++ b/inventory/src/main/java/org/apache/felix/inventory/impl/ClassUtils.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.felix.status.impl;
+package org.apache.felix.inventory.impl;
 
 import java.lang.reflect.Method;
 
diff --git a/inventory/src/main/java/org/apache/felix/inventory/impl/DefaultWebConsolePlugin.java b/inventory/src/main/java/org/apache/felix/inventory/impl/DefaultWebConsolePlugin.java
index d13b2f5..2f90611 100644
--- a/inventory/src/main/java/org/apache/felix/inventory/impl/DefaultWebConsolePlugin.java
+++ b/inventory/src/main/java/org/apache/felix/inventory/impl/DefaultWebConsolePlugin.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.felix.status.impl;
+package org.apache.felix.inventory.impl;
 
 import java.io.IOException;
 import java.io.PrintWriter;
@@ -22,10 +22,10 @@
 import java.util.Hashtable;
 import java.util.zip.ZipOutputStream;
 
-import org.apache.felix.status.PrinterMode;
-import org.apache.felix.status.StatusPrinterHandler;
-import org.apache.felix.status.StatusPrinterManager;
-import org.apache.felix.status.impl.webconsole.ConsoleConstants;
+import org.apache.felix.inventory.PrinterMode;
+import org.apache.felix.inventory.StatusPrinterHandler;
+import org.apache.felix.inventory.StatusPrinterManager;
+import org.apache.felix.inventory.impl.webconsole.ConsoleConstants;
 import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.ServiceFactory;
diff --git a/inventory/src/main/java/org/apache/felix/inventory/impl/StatusPrinterAdapter.java b/inventory/src/main/java/org/apache/felix/inventory/impl/StatusPrinterAdapter.java
index 6de7079..12ac846 100644
--- a/inventory/src/main/java/org/apache/felix/inventory/impl/StatusPrinterAdapter.java
+++ b/inventory/src/main/java/org/apache/felix/inventory/impl/StatusPrinterAdapter.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.felix.status.impl;
+package org.apache.felix.inventory.impl;
 
 import java.io.IOException;
 import java.io.PrintWriter;
@@ -24,11 +24,11 @@
 import java.util.Locale;
 import java.util.zip.ZipOutputStream;
 
-import org.apache.felix.status.PrinterMode;
-import org.apache.felix.status.StatusPrinter;
-import org.apache.felix.status.StatusPrinterHandler;
-import org.apache.felix.status.StatusPrinterManager;
-import org.apache.felix.status.ZipAttachmentProvider;
+import org.apache.felix.inventory.PrinterMode;
+import org.apache.felix.inventory.StatusPrinter;
+import org.apache.felix.inventory.StatusPrinterHandler;
+import org.apache.felix.inventory.StatusPrinterManager;
+import org.apache.felix.inventory.ZipAttachmentProvider;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.ServiceRegistration;
 
diff --git a/inventory/src/main/java/org/apache/felix/inventory/impl/StatusPrinterDescription.java b/inventory/src/main/java/org/apache/felix/inventory/impl/StatusPrinterDescription.java
index 6224ef6..d564449 100644
--- a/inventory/src/main/java/org/apache/felix/inventory/impl/StatusPrinterDescription.java
+++ b/inventory/src/main/java/org/apache/felix/inventory/impl/StatusPrinterDescription.java
@@ -14,12 +14,12 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.felix.status.impl;
+package org.apache.felix.inventory.impl;
 
 import java.util.Arrays;
 
-import org.apache.felix.status.PrinterMode;
-import org.apache.felix.status.StatusPrinter;
+import org.apache.felix.inventory.PrinterMode;
+import org.apache.felix.inventory.StatusPrinter;
 import org.osgi.framework.ServiceReference;
 
 /**
diff --git a/inventory/src/main/java/org/apache/felix/inventory/impl/StatusPrinterManagerImpl.java b/inventory/src/main/java/org/apache/felix/inventory/impl/StatusPrinterManagerImpl.java
index 09e518e..79fd7d2 100644
--- a/inventory/src/main/java/org/apache/felix/inventory/impl/StatusPrinterManagerImpl.java
+++ b/inventory/src/main/java/org/apache/felix/inventory/impl/StatusPrinterManagerImpl.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.felix.status.impl;
+package org.apache.felix.inventory.impl;
 
 
 import java.util.ArrayList;
@@ -27,10 +27,10 @@
 import java.util.Set;
 import java.util.concurrent.ConcurrentSkipListSet;
 
-import org.apache.felix.status.PrinterMode;
-import org.apache.felix.status.StatusPrinter;
-import org.apache.felix.status.StatusPrinterHandler;
-import org.apache.felix.status.StatusPrinterManager;
+import org.apache.felix.inventory.PrinterMode;
+import org.apache.felix.inventory.StatusPrinter;
+import org.apache.felix.inventory.StatusPrinterHandler;
+import org.apache.felix.inventory.StatusPrinterManager;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.InvalidSyntaxException;
 import org.osgi.framework.ServiceReference;
diff --git a/inventory/src/main/java/org/apache/felix/inventory/impl/WebConsolePlugin.java b/inventory/src/main/java/org/apache/felix/inventory/impl/WebConsolePlugin.java
index 4af1d19..221a9cb 100644
--- a/inventory/src/main/java/org/apache/felix/inventory/impl/WebConsolePlugin.java
+++ b/inventory/src/main/java/org/apache/felix/inventory/impl/WebConsolePlugin.java
@@ -14,14 +14,14 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.felix.status.impl;
+package org.apache.felix.inventory.impl;
 
 import java.util.Dictionary;
 import java.util.Hashtable;
 
-import org.apache.felix.status.StatusPrinterHandler;
-import org.apache.felix.status.StatusPrinterManager;
-import org.apache.felix.status.impl.webconsole.ConsoleConstants;
+import org.apache.felix.inventory.StatusPrinterHandler;
+import org.apache.felix.inventory.StatusPrinterManager;
+import org.apache.felix.inventory.impl.webconsole.ConsoleConstants;
 import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.ServiceFactory;
diff --git a/inventory/src/main/java/org/apache/felix/inventory/impl/webconsole/ConfigurationPrinterAdapter.java b/inventory/src/main/java/org/apache/felix/inventory/impl/webconsole/ConfigurationPrinterAdapter.java
index f41b586..18d7195 100644
--- a/inventory/src/main/java/org/apache/felix/inventory/impl/webconsole/ConfigurationPrinterAdapter.java
+++ b/inventory/src/main/java/org/apache/felix/inventory/impl/webconsole/ConfigurationPrinterAdapter.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.felix.status.impl.webconsole;
+package org.apache.felix.inventory.impl.webconsole;
 
 import java.io.PrintWriter;
 import java.lang.reflect.Method;
@@ -24,8 +24,8 @@
 import java.util.List;
 import java.util.Set;
 
-import org.apache.felix.status.PrinterMode;
-import org.apache.felix.status.impl.ClassUtils;
+import org.apache.felix.inventory.PrinterMode;
+import org.apache.felix.inventory.impl.ClassUtils;
 import org.osgi.framework.ServiceReference;
 
 /**
diff --git a/inventory/src/main/java/org/apache/felix/inventory/impl/webconsole/ConsoleConstants.java b/inventory/src/main/java/org/apache/felix/inventory/impl/webconsole/ConsoleConstants.java
index 55eb6f6..865b6f9 100644
--- a/inventory/src/main/java/org/apache/felix/inventory/impl/webconsole/ConsoleConstants.java
+++ b/inventory/src/main/java/org/apache/felix/inventory/impl/webconsole/ConsoleConstants.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.felix.status.impl.webconsole;
+package org.apache.felix.inventory.impl.webconsole;
 
 
 public class ConsoleConstants {
diff --git a/inventory/src/main/java/org/apache/felix/inventory/impl/webconsole/ResourceBundleManager.java b/inventory/src/main/java/org/apache/felix/inventory/impl/webconsole/ResourceBundleManager.java
index b79323e..13b6850 100644
--- a/inventory/src/main/java/org/apache/felix/inventory/impl/webconsole/ResourceBundleManager.java
+++ b/inventory/src/main/java/org/apache/felix/inventory/impl/webconsole/ResourceBundleManager.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.felix.status.impl.webconsole;
+package org.apache.felix.inventory.impl.webconsole;
 
 
 import java.io.IOException;
diff --git a/inventory/src/main/java/org/apache/felix/inventory/impl/webconsole/WebConsoleAdapter.java b/inventory/src/main/java/org/apache/felix/inventory/impl/webconsole/WebConsoleAdapter.java
index 9fa457c..d048ca6 100644
--- a/inventory/src/main/java/org/apache/felix/inventory/impl/webconsole/WebConsoleAdapter.java
+++ b/inventory/src/main/java/org/apache/felix/inventory/impl/webconsole/WebConsoleAdapter.java
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.apache.felix.status.impl.webconsole;
+package org.apache.felix.inventory.impl.webconsole;
 
 
 import java.io.IOException;
@@ -29,9 +29,9 @@
 import java.util.zip.ZipEntry;
 import java.util.zip.ZipOutputStream;
 
-import org.apache.felix.status.PrinterMode;
-import org.apache.felix.status.StatusPrinter;
-import org.apache.felix.status.ZipAttachmentProvider;
+import org.apache.felix.inventory.PrinterMode;
+import org.apache.felix.inventory.StatusPrinter;
+import org.apache.felix.inventory.ZipAttachmentProvider;
 import org.osgi.framework.BundleContext;
 import org.osgi.framework.Constants;
 import org.osgi.framework.InvalidSyntaxException;
diff --git a/inventory/src/main/java/org/apache/felix/inventory/package-info.java b/inventory/src/main/java/org/apache/felix/inventory/package-info.java
index 8d647e8..1350c24 100644
--- a/inventory/src/main/java/org/apache/felix/inventory/package-info.java
+++ b/inventory/src/main/java/org/apache/felix/inventory/package-info.java
@@ -24,7 +24,7 @@
  */
 @Version("1.0.0")
 @Export(optional = "provide:=true")
-package org.apache.felix.status;
+package org.apache.felix.inventory;
 
 import aQute.bnd.annotation.Export;
 import aQute.bnd.annotation.Version;
