diff --git a/ACPCoreBeta.podspec b/ACPCoreBeta.podspec index cce5d22d..20e8cebf 100644 --- a/ACPCoreBeta.podspec +++ b/ACPCoreBeta.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = "ACPCoreBeta" - s.version = "1.0.2beta" + s.version = "1.0.2beta2" s.summary = "BETA - Core framework for Adobe Experience Cloud SDK. Written and Supported by Adobe, the official Pod for the Adobe Experience Cloud." s.description = <<-DESC By using the Adobe Cloud Platform SDKs (“Beta”), you hereby acknowledge that the Beta is provided “as is” without warranty of any kind. Adobe shall have no obligation to maintain, correct, update, change, modify or otherwise support the Beta. You are advised to use caution and not to rely in any way on the correct functioning or performance of such Beta and/or accompanying materials. @@ -12,7 +12,7 @@ Pod::Spec.new do |s| s.license = {:type => "Commercial", :text => "Adobe Systems, Incorporated. All Rights Reserved."} s.author = "Adobe Cloud Platform SDK Team" - s.source = { :git => 'https://github.com/Adobe-Marketing-Cloud/acp-sdks.git', :tag => "v1.0.2beta-ACPCore" } + s.source = { :git => 'https://github.com/Adobe-Marketing-Cloud/acp-sdks.git', :tag => "v1.0.2beta2-ACPCore" } s.platform = :ios, '10.0' s.default_subspec = 'iOS' diff --git a/ACPCore_iOS.framework/ACPCore_iOS b/ACPCore_iOS.framework/ACPCore_iOS index 8357ff7c..78ce042c 100755 Binary files a/ACPCore_iOS.framework/ACPCore_iOS and b/ACPCore_iOS.framework/ACPCore_iOS differ diff --git a/ACPCore_iOS.framework/Headers/ACPCore.h b/ACPCore_iOS.framework/Headers/ACPCore.h index ddce4e73..a5ee2a5e 100644 --- a/ACPCore_iOS.framework/Headers/ACPCore.h +++ b/ACPCore_iOS.framework/Headers/ACPCore.h @@ -1,10 +1,10 @@ // // ACPCore.h -// Adobe Digital Marketing Suite -- iOS Application Measurement Library +// Adobe Experience Platform -- iOS Framework // -// Copyright 1996-2018. Adobe, Inc. All Rights Reserved +// Copyright 1996-2018. Adobe. All Rights Reserved // -// Core Version: 1.0.0b +// Core Version: 1.0.2beta #import diff --git a/ACPCore_iOS.framework/Headers/ACPCore_iOS.h b/ACPCore_iOS.framework/Headers/ACPCore_iOS.h index 8e0d619f..007ee556 100644 --- a/ACPCore_iOS.framework/Headers/ACPCore_iOS.h +++ b/ACPCore_iOS.framework/Headers/ACPCore_iOS.h @@ -1,20 +1,8 @@ -/* ************************************************************************ - * - * ADOBE CONFIDENTIAL - * ___________________ - * - * Copyright 2018 Adobe Systems Incorporated - * All Rights Reserved. - * - * NOTICE: All information contained herein is, and remains - * the property of Adobe Systems Incorporated and its suppliers, - * if any. The intellectual and technical concepts contained - * herein are proprietary to Adobe Systems Incorporated and its - * suppliers and are protected by trade secret or copyright law. - * Dissemination of this information or reproduction of this material - * is strictly forbidden unless prior written permission is obtained - * from Adobe Systems Incorporated. - **************************************************************************/ +// +// ACPCore_iOS.h +// Adobe Experience Platform -- iOS Framework +// +// Copyright 1996-2018. Adobe. All Rights Reserved #import diff --git a/ACPCore_iOS.framework/Headers/ACPExtension.h b/ACPCore_iOS.framework/Headers/ACPExtension.h index 35288314..5ebb72e9 100644 --- a/ACPCore_iOS.framework/Headers/ACPExtension.h +++ b/ACPCore_iOS.framework/Headers/ACPExtension.h @@ -1,20 +1,8 @@ -/* ************************************************************************** - * - * ADOBE CONFIDENTIAL - * ___________________ - * - * Copyright 2018 Adobe Systems Incorporated - * All Rights Reserved. - * - * NOTICE: All information contained herein is, and remains - * the property of Adobe Systems Incorporated and its suppliers, - * if any. The intellectual and technical concepts contained - * herein are proprietary to Adobe Systems Incorporated and its - * suppliers and are protected by trade secret or copyright law. - * Dissemination of this information or reproduction of this material - * is strictly forbidden unless prior written permission is obtained - * from Adobe Systems Incorporated. - ****************************************************************************/ +// +// ACPExtension.h +// Adobe Experience Platform -- iOS Framework +// +// Copyright 1996-2018. Adobe. All Rights Reserved #ifndef ADOBEMOBILE_ADBEXTENSIONINTERFACE_H #define ADOBEMOBILE_ADBEXTENSIONINTERFACE_H diff --git a/ACPCore_iOS.framework/Headers/ACPExtensionApi.h b/ACPCore_iOS.framework/Headers/ACPExtensionApi.h index f622d53d..48baf396 100644 --- a/ACPCore_iOS.framework/Headers/ACPExtensionApi.h +++ b/ACPCore_iOS.framework/Headers/ACPExtensionApi.h @@ -1,20 +1,8 @@ -/* ************************************************************************** - * - * ADOBE CONFIDENTIAL - * ___________________ - * - * Copyright 2018 Adobe Systems Incorporated - * All Rights Reserved. - * - * NOTICE: All information contained herein is, and remains - * the property of Adobe Systems Incorporated and its suppliers, - * if any. The intellectual and technical concepts contained - * herein are proprietary to Adobe Systems Incorporated and its - * suppliers and are protected by trade secret or copyright law. - * Dissemination of this information or reproduction of this material - * is strictly forbidden unless prior written permission is obtained - * from Adobe Systems Incorporated. - ****************************************************************************/ +// +// ACPExtensionApi.h +// Adobe Experience Platform -- iOS Framework +// +// Copyright 1996-2018. Adobe. All Rights Reserved #ifndef ADOBEMOBILE_ADBEXTENSIONSERVICES_H #define ADOBEMOBILE_ADBEXTENSIONSERVICES_H diff --git a/ACPCore_iOS.framework/Headers/ACPExtensionError.h b/ACPCore_iOS.framework/Headers/ACPExtensionError.h index a1a4e653..2667f3e5 100644 --- a/ACPCore_iOS.framework/Headers/ACPExtensionError.h +++ b/ACPCore_iOS.framework/Headers/ACPExtensionError.h @@ -1,20 +1,8 @@ -/* ************************************************************************** - * - * ADOBE CONFIDENTIAL - * ___________________ - * - * Copyright 2018 Adobe Systems Incorporated - * All Rights Reserved. - * - * NOTICE: All information contained herein is, and remains - * the property of Adobe Systems Incorporated and its suppliers, - * if any. The intellectual and technical concepts contained - * herein are proprietary to Adobe Systems Incorporated and its - * suppliers and are protected by trade secret or copyright law. - * Dissemination of this information or reproduction of this material - * is strictly forbidden unless prior written permission is obtained - * from Adobe Systems Incorporated. - ****************************************************************************/ +// +// ACPExtensionError.h +// Adobe Experience Platform -- iOS Framework +// +// Copyright 1996-2018. Adobe. All Rights Reserved #ifndef ADOBEMOBILE_ADBEXTENSIONERROR_H #define ADOBEMOBILE_ADBEXTENSIONERROR_H diff --git a/ACPCore_iOS.framework/Headers/ACPExtensionEvent.h b/ACPCore_iOS.framework/Headers/ACPExtensionEvent.h index 9f7f067d..ed27187e 100644 --- a/ACPCore_iOS.framework/Headers/ACPExtensionEvent.h +++ b/ACPCore_iOS.framework/Headers/ACPExtensionEvent.h @@ -1,20 +1,8 @@ -/* ************************************************************************** - * - * ADOBE CONFIDENTIAL - * ___________________ - * - * Copyright 2018 Adobe Systems Incorporated - * All Rights Reserved. - * - * NOTICE: All information contained herein is, and remains - * the property of Adobe Systems Incorporated and its suppliers, - * if any. The intellectual and technical concepts contained - * herein are proprietary to Adobe Systems Incorporated and its - * suppliers and are protected by trade secret or copyright law. - * Dissemination of this information or reproduction of this material - * is strictly forbidden unless prior written permission is obtained - * from Adobe Systems Incorporated. - ****************************************************************************/ +// +// ACPExtensionEvent.h +// Adobe Experience Platform -- iOS Framework +// +// Copyright 1996-2018. Adobe. All Rights Reserved #ifndef ADOBEMOBILE_ADBEXTENSIONEVENT_H #define ADOBEMOBILE_ADBEXTENSIONEVENT_H diff --git a/ACPCore_iOS.framework/Headers/ACPExtensionListener.h b/ACPCore_iOS.framework/Headers/ACPExtensionListener.h index a65386e2..9d328af4 100644 --- a/ACPCore_iOS.framework/Headers/ACPExtensionListener.h +++ b/ACPCore_iOS.framework/Headers/ACPExtensionListener.h @@ -1,20 +1,8 @@ -/* ************************************************************************** - * - * ADOBE CONFIDENTIAL - * ___________________ - * - * Copyright 2018 Adobe Systems Incorporated - * All Rights Reserved. - * - * NOTICE: All information contained herein is, and remains - * the property of Adobe Systems Incorporated and its suppliers, - * if any. The intellectual and technical concepts contained - * herein are proprietary to Adobe Systems Incorporated and its - * suppliers and are protected by trade secret or copyright law. - * Dissemination of this information or reproduction of this material - * is strictly forbidden unless prior written permission is obtained - * from Adobe Systems Incorporated. - ****************************************************************************/ +// +// ACPExtensionListener.h +// Adobe Experience Platform -- iOS Framework +// +// Copyright 1996-2018. Adobe. All Rights Reserved #ifndef ADOBEMOBILE_ADBEXTENSIONLISTENER_H #define ADOBEMOBILE_ADBEXTENSIONLISTENER_H diff --git a/ACPCore_iOS.framework/Headers/ACPMobileVisitorId.h b/ACPCore_iOS.framework/Headers/ACPMobileVisitorId.h index 553ff778..04de666c 100644 --- a/ACPCore_iOS.framework/Headers/ACPMobileVisitorId.h +++ b/ACPCore_iOS.framework/Headers/ACPMobileVisitorId.h @@ -1,21 +1,8 @@ -/************************************************************************* - * - * ADOBE CONFIDENTIAL - * ___________________ - * - * Copyright 2017 Adobe Systems Incorporated - * All Rights Reserved. - * - * NOTICE: All information contained herein is, and remains - * the property of Adobe Systems Incorporated and its suppliers, - * if any. The intellectual and technical concepts contained - * herein are proprietary to Adobe Systems Incorporated and its - * suppliers and are protected by trade secret or copyright law. - * Dissemination of this information or reproduction of this material - * is strictly forbidden unless prior written permission is obtained - * from Adobe Systems Incorporated. - * - **************************************************************************/ +// +// ACPMobileVisitorId.h +// Adobe Experience Platform -- iOS Framework +// +// Copyright 1996-2018. Adobe. All Rights Reserved #ifndef ADBMOBILEMARKETING_ACPMobileVisitorId_H #define ADBMOBILEMARKETING_ACPMobileVisitorId_H diff --git a/ACPCore_iOS.framework/Headers/MobileMarketingCoreBridge.h b/ACPCore_iOS.framework/Headers/MobileMarketingCoreBridge.h index 021b1e28..8bccec25 100644 --- a/ACPCore_iOS.framework/Headers/MobileMarketingCoreBridge.h +++ b/ACPCore_iOS.framework/Headers/MobileMarketingCoreBridge.h @@ -1,20 +1,8 @@ -/* ************************************************************************** - * - * ADOBE CONFIDENTIAL - * ___________________ - * - * Copyright 2017 Adobe Systems Incorporated - * All Rights Reserved. - * - * NOTICE: All information contained herein is, and remains - * the property of Adobe Systems Incorporated and its suppliers, - * if any. The intellectual and technical concepts contained - * herein are proprietary to Adobe Systems Incorporated and its - * suppliers and are protected by trade secret or copyright law. - * Dissemination of this information or reproduction of this material - * is strictly forbidden unless prior written permission is obtained - * from Adobe Systems Incorporated. - ****************************************************************************/ +// +// MobileMarketingCoreBridge.h +// Adobe Experience Platform -- iOS Framework +// +// Copyright 1996-2018. Adobe. All Rights Reserved #include diff --git a/ACPCore_iOS.framework/Headers/TypeBridge.h b/ACPCore_iOS.framework/Headers/TypeBridge.h index d9cc677e..f3003006 100644 --- a/ACPCore_iOS.framework/Headers/TypeBridge.h +++ b/ACPCore_iOS.framework/Headers/TypeBridge.h @@ -1,21 +1,8 @@ -/*************************************************************************** - * - * ADOBE CONFIDENTIAL - * ___________________ - * - * Copyright 2017 Adobe Systems Incorporated - * All Rights Reserved. - * - * NOTICE: All information contained herein is, and remains - * the property of Adobe Systems Incorporated and its suppliers, - * if any. The intellectual and technical concepts contained - * herein are proprietary to Adobe Systems Incorporated and its - * suppliers and are protected by trade secret or copyright law. - * Dissemination of this information or reproduction of this material - * is strictly forbidden unless prior written permission is obtained - * from Adobe Systems Incorporated. - * - **************************************************************************/ +// +// TypeBridge.h +// Adobe Experience Platform -- iOS Framework +// +// Copyright 1996-2018. Adobe. All Rights Reserved #import #import diff --git a/ACPCore_iOS.framework/Info.plist b/ACPCore_iOS.framework/Info.plist index ca4e6083..89f3ae72 100644 Binary files a/ACPCore_iOS.framework/Info.plist and b/ACPCore_iOS.framework/Info.plist differ diff --git a/AdobeMarketingMobileCore.framework/AdobeMarketingMobileCore b/AdobeMarketingMobileCore.framework/AdobeMarketingMobileCore index c946aa10..93283c66 100755 Binary files a/AdobeMarketingMobileCore.framework/AdobeMarketingMobileCore and b/AdobeMarketingMobileCore.framework/AdobeMarketingMobileCore differ diff --git a/AdobeMarketingMobileCore.framework/Headers/EventHub.h b/AdobeMarketingMobileCore.framework/Headers/EventHub.h index 533aa7cd..ac15d5b7 100644 --- a/AdobeMarketingMobileCore.framework/Headers/EventHub.h +++ b/AdobeMarketingMobileCore.framework/Headers/EventHub.h @@ -27,6 +27,7 @@ #include #include #include +#include "Common.h" #include "Object.h" #include "Event.h" #include "TaskExecutor.h" @@ -189,15 +190,8 @@ namespace AdobeMarketingMobile { * * TModule must be a subclass of Module. * - * Example: - * - * class MyModule : public Module { ... }; - * - * void RegisterOneTimeListenerToMyModule(const std::shared_ptr& event_hub - * EventType event_type, EventSource event_source, const std::string& pair_id, - * const std::function&)>& listener_block) { - * event_hub->RegisterOneTimeListener(event_type, event_source, pair_id, listener_block); - * } + * This method is deprecated and it will be removed in the upcoming versions, use + * EventHub::RegisterOneTimeListener(std::string&, const std::function&)>&) instead * * @param event_type - the EventType of an event to listen for * @param event_source - the EventSource of an event to listen for @@ -210,6 +204,10 @@ namespace AdobeMarketingMobile { const std::string& pair_id, const std::function&)>& listener_block); + /** + * This method is deprecated and it will be removed in the upcoming versions, use + * EventHub::RegisterOneTimeListener(std::string&, const std::function&)>&) instead + */ template void RegisterOneTimeListener(const std::shared_ptr& event_type, const std::shared_ptr& event_source, @@ -298,11 +296,6 @@ namespace AdobeMarketingMobile { */ static void CallModuleUnregisterModule(const std::shared_ptr& module); - /** - * @private - * - * Calls Module::RegisterOneTimeListenerBlock(); - */ static void CallModuleRegisterOneTimeListener(const std::shared_ptr& module, const std::shared_ptr& event_type, const std::shared_ptr& event_source, @@ -515,7 +508,6 @@ namespace AdobeMarketingMobile { static_assert(std::is_base_of::value, "Type of TModule must be derived from Module."); size_t type_hash = typeid(TModule).hash_code(); - RegisterOneTimeListener(type_hash, event_type, event_source, pair_id, listener_block); } @@ -536,13 +528,7 @@ namespace AdobeMarketingMobile { template void EventHub::RegisterOneTimeListener(const std::string& pair_id, const std::function&)>& listener_block) { - - // If you get an error on the following line, you need to make sure the type you pass - // into RegisterOneTimeListener is a subclass of Module. - static_assert(std::is_base_of::value, "Type of TModule must be derived from Module."); - size_t type_hash = typeid(TModule).hash_code(); - RegisterOneTimeListener(type_hash, nullptr, nullptr, pair_id, listener_block); } } diff --git a/AdobeMarketingMobileCore.framework/Headers/Module.h b/AdobeMarketingMobileCore.framework/Headers/Module.h index cc14294c..6d442118 100644 --- a/AdobeMarketingMobileCore.framework/Headers/Module.h +++ b/AdobeMarketingMobileCore.framework/Headers/Module.h @@ -330,25 +330,7 @@ namespace AdobeMarketingMobile { void RegisterWildCardListener(); /** - * Registers a one-time block with the parent event hub. - * - * A one-time block is an event handler that will cease to function after it sucessfully 'hears' one event. - * - * This method will only have an effect while the Module is registered. Calling this method before - * the Module is registered or after it is unregistered will be a noop. - * - * Threading - * ========= - * This method is thread-safe. - * - * Due to threading, it is possible (but rare) for existing listeners on event_type/event_source to get invoked slightly after - * calling this function. For stricter ordering guarantees, Modules should override ModuleEventListener::OnUnregistered - * and ModuleEventListener::OnRegistered. - * - * @param type - the EventType of an event to listen for - * @param source - the EventSource of an event to listen for - * @param pair_id - optional pairID to listen for -- this is primarily used for request/response events - * @param block - the block to call when the event is heard + * This method is not used, keeping it for compatibility reasons */ ADOBE_VIRTUAL_FOR_TESTS void RegisterOneTimeListenerBlock(const std::shared_ptr& type, const std::shared_ptr& source, diff --git a/AdobeMarketingMobileCore.framework/Headers/ModuleEventListener.h b/AdobeMarketingMobileCore.framework/Headers/ModuleEventListener.h index f72c9e19..dead110d 100644 --- a/AdobeMarketingMobileCore.framework/Headers/ModuleEventListener.h +++ b/AdobeMarketingMobileCore.framework/Headers/ModuleEventListener.h @@ -71,7 +71,7 @@ namespace AdobeMarketingMobile { * A module may only have a single listener for a given event type and source. * * Alternatively, one time listeners can be registered to react once to a single, specific event. - * @see Module::RegisterOneTimeListenerBlock. + * @see EventHub::RegisterOneTimeListener. * * Responding to Events * ==================== diff --git a/AdobeMarketingMobileCore.framework/Headers/OneTimeListener.h b/AdobeMarketingMobileCore.framework/Headers/OneTimeListener.h index 8707a9c5..1504eac5 100644 --- a/AdobeMarketingMobileCore.framework/Headers/OneTimeListener.h +++ b/AdobeMarketingMobileCore.framework/Headers/OneTimeListener.h @@ -27,9 +27,9 @@ namespace AdobeMarketingMobile { /** * @class OneTimeListener - * Used to wrap a Module.OneTimeListenerBlock in an EventListener so it can be added to an EventHub. + * Used to wrap an OneTimeListenerBlock in an EventListener so it can be added to an EventHub. * - * Do not use directly. @see Module::RegisterOneTimeListenerBlock. + * Do not use directly. @see EventHub::RegisterOneTimeListener. */ class OneTimeListener : public ModuleEventListenerBase { friend class Module; @@ -40,14 +40,13 @@ namespace AdobeMarketingMobile { */ void Hear(const std::shared_ptr& event) override final; - private: /** - * @private * Constructor. - * For use by Module only. + * For use by EventHub. */ explicit OneTimeListener(const std::function&)>& block); + private: /** * @private * the block this listener should execute. diff --git a/AdobeMarketingMobileCore.framework/Info.plist b/AdobeMarketingMobileCore.framework/Info.plist index 1c36ab03..71242e06 100644 Binary files a/AdobeMarketingMobileCore.framework/Info.plist and b/AdobeMarketingMobileCore.framework/Info.plist differ