     
     public func processLaunchNotification() {
         if let launchNotification = launchNotification {
-            pushNotificationObserver?.onNext(launchNotification)
+            pushNotificationSubject.onNext(launchNotification)
             self.launchNotification = nil
         }
     }

    
    private(set) var deviceToken: String?{
        didSet{
            deviceTokenObserver?.onNext(deviceToken)
        }
    }
    
    private var deviceTokenObserver: AnyObserver<String?>?
    public lazy var deviceTokenObservable: Observable<String?> = {
        return Observable.create { (observer) -> Disposable in
            self.deviceTokenObserver = observer
            
            return NopDisposable.instance
        }
    }()
    
    private var pushNotificationObserver: AnyObserver<[NSObject : AnyObject]>?
    public lazy var pushNotificationObservable: Observable<[NSObject : AnyObject]> = {
        return Observable.create { (observer) -> Disposable in
            self.pushNotificationObserver = observer
            
            return NopDisposable.instance
        }
    }()
    
    /**
     Transform a deviceToken NSData to a String and allocs it to the deviceToken Variable

    }
    
    public func receiveNotification(notification: [NSObject : AnyObject]){
        pushNotificationSubject.onNext(notification)
    }
    
    private var launchNotification: [NSObject : AnyObject]?
