57 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Swift
		
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Swift
		
	
	
| // RelayAd.swift
 | |
| // Base class for ad implementations with delegate forwarding
 | |
| // Corresponds to RelayAd.kt in Android implementation
 | |
| 
 | |
| import Foundation
 | |
| 
 | |
| open class RelayAd: NSObject {
 | |
|     public var listener: FusionAdListener?
 | |
|     public let engineId: Int
 | |
|     
 | |
|     public init(engineId: Int) {
 | |
|         self.engineId = engineId
 | |
|     }
 | |
|     
 | |
|     // public methods for notifying listeners (called from subclasses)
 | |
|     
 | |
|     public func adLoaded(ad: FusionAd) {
 | |
|         listener?.onAdLoaded(ad: ad)
 | |
|     }
 | |
|     
 | |
|     public func adDisplayed(ad: FusionAd) {
 | |
|         listener?.onAdDisplayed(ad: ad)
 | |
|     }
 | |
|     
 | |
|     public func adHidden(ad: FusionAd) {
 | |
|         listener?.onAdHidden(ad: ad)
 | |
|     }
 | |
|     
 | |
|     public func adClicked(ad: FusionAd) {
 | |
|         listener?.onAdClicked(ad: ad)
 | |
|     }
 | |
|     
 | |
|     public func adUserRewarded(ad: FusionAd, reward: FusionReward) {
 | |
|         listener?.onUserRewarded(ad: ad, reward: reward)
 | |
|     }
 | |
|     
 | |
|     public func adLoadFailed(loadFailedInfo: LoadFailedInfo) {
 | |
|         listener?.onAdLoadFailed(loadFailedInfo: loadFailedInfo)
 | |
|     }
 | |
|     
 | |
|     public func adDisplayFailed(ad: FusionAd, error: FusionError) {
 | |
|         listener?.onAdDisplayFailed(ad: ad, error: error)
 | |
|     }
 | |
|     
 | |
|     public func adRevenuePaid(ad: FusionAd) {
 | |
|         listener?.onAdRevenuePaid(ad: ad)
 | |
|     }
 | |
|     
 | |
|     public func adBannerExpanded(ad: FusionAd) {
 | |
|         listener?.onBannerAdExpanded(ad: ad)
 | |
|     }
 | |
|     
 | |
|     public func adBannerCollapsed(ad: FusionAd) {
 | |
|         listener?.onBannerAdCollapsed(ad: ad)
 | |
|     }
 | |
| }
 |