mapping: cleanup

Change-Id: I126589619de15382b7d6ceef7f28aeb404c04633
diff --git a/include/upnp/mapping.h b/include/upnp/mapping.h
index f5ce95f..e92a654 100644
--- a/include/upnp/mapping.h
+++ b/include/upnp/mapping.h
@@ -36,7 +36,7 @@
 enum class NatProtocolType;
 class IGD;
 
-class Mapping : std::enable_shared_from_this<Mapping>
+class Mapping
 {
     friend class UPnPContext;
     friend class NatPmp;
@@ -112,7 +112,6 @@
     void setIgd(const std::shared_ptr<IGD>& igd);
     void setAvailable(bool val);
     void setState(const MappingState& state);
-    void updateState(const MappingState& state, bool notify = true);
     void updateDescription();
 #if HAVE_LIBNATPMP
     void setRenewalTime(sys_clock::time_point time);
diff --git a/src/upnp/protocol/mapping.cpp b/src/upnp/protocol/mapping.cpp
index 0bbcfb6..1222261 100644
--- a/src/upnp/protocol/mapping.cpp
+++ b/src/upnp/protocol/mapping.cpp
@@ -96,20 +96,6 @@
     state_ = state;
 }
 
-void
-Mapping::updateState(const MappingState& newState, bool notify)
-{
-    std::unique_lock<std::mutex> lock(mutex_);
-    if (newState == state_)
-        return;
-    state_ = newState;
-
-    if (notify && notifyCb_) {
-        lock.unlock();
-        notifyCb_(shared_from_this());
-    }
-}
-
 const char*
 Mapping::getStateStr() const
 {
diff --git a/src/upnp/upnp_context.cpp b/src/upnp/upnp_context.cpp
index 56fa607..fb175d1 100644
--- a/src/upnp/upnp_context.cpp
+++ b/src/upnp/upnp_context.cpp
@@ -847,7 +847,7 @@
                  map->toString(),
                  igd->toString(),
                  igd->getProtocolName());
-        map->updateState(MappingState::FAILED);
+        updateMappingState(map, MappingState::FAILED);
         unregisterMapping(map);
     }
 }