| 105 | } |
| 106 | |
| 107 | on(event: TaskEvent, nextOrObserver?: TaskSnapshotObserver | ((a: TaskSnapshot) => any), error?: (a: FirebaseError) => any, complete?: () => void) { |
| 108 | if (event !== TaskEvent.STATE_CHANGED) { |
| 109 | return; |
| 110 | } |
| 111 | let hasNextOrObserver = false; |
| 112 | if (nextOrObserver) { |
| 113 | if (typeof nextOrObserver === 'function') { |
| 114 | hasNextOrObserver = true; |
| 115 | } else if (typeof nextOrObserver === 'object') { |
| 116 | hasNextOrObserver = true; |
| 117 | } |
| 118 | } |
| 119 | org.nativescript.firebase.storage.FirebaseStorage.StorageTask.on( |
| 120 | this.native, |
| 121 | hasNextOrObserver, |
| 122 | !!error, |
| 123 | !!complete, |
| 124 | new org.nativescript.firebase.storage.FirebaseStorage.StorageTask.Callback<any>({ |
| 125 | onNextOrObserver(param0) { |
| 126 | if (hasNextOrObserver) { |
| 127 | const task = TaskSnapshot.fromNative(param0); |
| 128 | if (typeof nextOrObserver === 'function') { |
| 129 | nextOrObserver(task); |
| 130 | } else { |
| 131 | nextOrObserver?.next(task); |
| 132 | } |
| 133 | } |
| 134 | }, |
| 135 | onComplete() { |
| 136 | if (hasNextOrObserver) { |
| 137 | if (typeof nextOrObserver === 'object') { |
| 138 | nextOrObserver?.complete?.(); |
| 139 | } |
| 140 | } |
| 141 | complete?.(); |
| 142 | }, |
| 143 | onError(param0) { |
| 144 | if (nextOrObserver) { |
| 145 | if (typeof nextOrObserver === 'object') { |
| 146 | nextOrObserver?.error?.(FirebaseError.fromNative(param0)); |
| 147 | } |
| 148 | } |
| 149 | error?.(FirebaseError.fromNative(param0)); |
| 150 | }, |
| 151 | }) |
| 152 | ); |
| 153 | } |
| 154 | |
| 155 | pause(): boolean { |
| 156 | return this.native?.pause(); |