ethernet_interface: Refactor object creation args

We want to be able to pass a bunch of interface properties directly into
interface instead of querying them directly. This will be used later for
rtnetlink enabled interface creation.

Change-Id: I93fbd460a8a54515e84c415f085548cb5528f231
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/src/vlan_interface.cpp b/src/vlan_interface.cpp
index 9f92198..0d7879c 100644
--- a/src/vlan_interface.cpp
+++ b/src/vlan_interface.cpp
@@ -17,19 +17,17 @@
 using namespace phosphor::logging;
 using namespace sdbusplus::xyz::openbmc_project::Common::Error;
 
-VlanInterface::VlanInterface(sdbusplus::bus_t& bus,
-                             stdplus::const_zstring objPath,
-                             const config::Parser& config, bool nicEnabled,
-                             uint32_t vlanID, EthernetInterface& intf,
-                             Manager& parent) :
-    VlanIface(bus, objPath.c_str()),
-    DeleteIface(bus, objPath.c_str()),
-    EthernetInterface(bus, objPath, config, parent, true, nicEnabled),
-    parentInterface(intf)
+VlanInterface::VlanInterface(sdbusplus::bus_t& bus, Manager& manager,
+                             const InterfaceInfo& info,
+                             std::string_view objRoot,
+                             const config::Parser& config, uint16_t vlanID,
+                             EthernetInterface& parent, bool emitSignal,
+                             std::optional<bool> enabled) :
+    EthernetInterface(bus, manager, info, objRoot, config, emitSignal, enabled),
+    DeleteIface(bus, objPath.c_str()), VlanIface(bus, objPath.c_str()),
+    parentInterface(parent)
 {
     id(vlanID);
-    MacAddressIntf::macAddress(parentInterface.macAddress());
-
     emit_object_added();
 }