diff --git a/fan_enclosure.hpp b/fan_enclosure.hpp
index a94ffe7..f214f18 100644
--- a/fan_enclosure.hpp
+++ b/fan_enclosure.hpp
@@ -1,5 +1,8 @@
 #pragma once
 
+#include <sdbusplus/bus.hpp>
+#include "fan_properties.hpp"
+
 
 namespace phosphor
 {
@@ -15,10 +18,25 @@
         FanEnclosure(const FanEnclosure&) = delete;
         FanEnclosure(FanEnclosure&&) = default;
         FanEnclosure& operator=(const FanEnclosure&) = delete;
-        FanEnclosure& operator=(FanEnclosure&&) = default;
+        FanEnclosure& operator=(FanEnclosure&&) = delete;
         ~FanEnclosure() = default;
 
+        FanEnclosure(sdbusplus::bus::bus& bus,
+                     const phosphor::fan::Properties& fanProp) :
+                        bus(bus),
+                        invPath(std::get<0>(fanProp)),
+                        fanDesc(std::get<1>(fanProp))
+        {
+            //Add this fan to inventory
+            addInventory();
+        }
+
     private:
+        sdbusplus::bus::bus& bus;
+        const std::string invPath;
+        const std::string fanDesc;
+
+        void addInventory();
 
 };
 
