function embed() { if (!$this->_embed_service_obj instanceof BP_Links_Embed_Service && empty($this->embed_data) === false) { // handle backwards compatibility with deprecated storage method (arrays) switch ((string) $this->embed_service) { case self::EMBED_SERVICE_PICAPP: $embed_data = unserialize($this->embed_data); if (!empty($embed_data)) { $this->_embed_service_obj = new BP_Links_Embed_Service_PicApp(); $this->_embed_service_obj->from_deprecated_data($embed_data); } break; case self::EMBED_SERVICE_FOTOGLIF: $embed_data = unserialize($this->embed_data); if (!empty($embed_data)) { $this->_embed_service_obj = new BP_Links_Embed_Service_Fotoglif(); $this->_embed_service_obj->from_deprecated_data($embed_data); } break; default: $this->_embed_service_obj = BP_Links_Embed::LoadService($this->embed_data); } } return $this->_embed_service_obj; }
/** * An embed service must pass itself to the constructor for key exchange * * @param BP_Links_Embed_Service $service */ public final function __construct(BP_Links_Embed_Service $service) { $this->k = $service->key(); }