@takeoffmedia/react-native-penthera 0.2.45 → 0.2.47

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -8,6 +8,7 @@ import com.penthera.virtuososdk.client.IIdentifier
8
8
  import com.penthera.virtuososdk.client.Observers
9
9
  import com.penthera.virtuososdk.client.Virtuoso
10
10
  import com.takeoffmediareactnativepenthera.virtuoso.OfflineVideoEngine
11
+ import com.takeoffmediareactnativepenthera.virtuoso.errors.PentheraErrors
11
12
 
12
13
  class AssetQueueObserver(mOfflineVideo : OfflineVideoEngine, virtuoso: Virtuoso) : Observers.IQueueObserver {
13
14
 
@@ -37,11 +38,17 @@ class AssetQueueObserver(mOfflineVideo : OfflineVideoEngine, virtuoso: Virtuoso)
37
38
  }
38
39
 
39
40
  override fun engineEncounteredErrorDownloadingAsset(aAsset: IIdentifier) {
41
+ var asset = aAsset as IAsset
42
+ var limit = asset.assetDownloadLimit
43
+ if(limit == -1 || limit == 0){
44
+ EventEmitter.sharedInstance.dispatch("penthera", PentheraEvent.ERROR_DOWNLOAD, asset.assetId, PentheraErrors.DOWNLOAD_DENIED_MAX_DEVICE_DOWNLOADS)
45
+ }
40
46
  Log.e("MiModulo","<<<<<<<<<<engineEncounteredErrorDownloadingAsset>>>>>>>>>>>>")
41
47
  // The base implementation does nothing. See class documentation.
42
48
  }
43
49
 
44
50
  override fun engineEncounteredErrorParsingAsset(mAssetId: String) {
51
+ var asset = mAssetId
45
52
  Log.e("MiModulo","<<<<<<<<<<engineEncounteredErrorParsingAsset>>>>>>>>>>>>")
46
53
  }
47
54
 
@@ -88,15 +95,15 @@ class AssetQueueObserver(mOfflineVideo : OfflineVideoEngine, virtuoso: Virtuoso)
88
95
  }
89
96
  Common.AssetStatus.DOWNLOAD_DENIED_ASSET -> {
90
97
  assetStatus = "Queued"
91
- value = "The asset has already been downloaded as many times as permitted. To download this asset again, administrative action is required."
98
+ value = ""
92
99
  }
93
100
  Common.AssetStatus.DOWNLOAD_DENIED_MAX_DEVICE_DOWNLOADS -> {
94
101
  assetStatus = "Queued"
95
- value = "There are already as many downloads as permitted on this account. To continue downloading, the user must delete downloaded assets from one of their devices."
102
+ value = PentheraErrors.DOWNLOAD_DENIED_ASSET
96
103
  }
97
104
  Common.AssetStatus.DOWNLOAD_DENIED_COPIES -> {
98
105
  assetStatus = "Queued"
99
- value = "There are already as many downloaded copies of this asset as permitted on this account. To continue downloading, the user must delete a copy of this asset from one of their devices."
106
+ value = PentheraErrors.DOWNLOAD_DENIED_COPIES
100
107
  }
101
108
  Common.AssetStatus.DOWNLOAD_COMPLETE -> {
102
109
  assetStatus = "complete"
@@ -28,6 +28,9 @@ import com.facebook.react.uimanager.UIManagerModule
28
28
  import com.facebook.react.bridge.Promise
29
29
  import com.facebook.react.bridge.ReadableArray
30
30
  import org.json.JSONObject
31
+ import java.text.SimpleDateFormat
32
+ import java.util.Calendar
33
+ import java.util.TimeZone
31
34
 
32
35
  class OfflineVideoEngine(private val context: ReactApplicationContext) {
33
36
 
@@ -128,6 +131,8 @@ class OfflineVideoEngine(private val context: ReactApplicationContext) {
128
131
  while (cursor?.moveToNext() == true && columnNames != null) {
129
132
  val assetManager = virtuoso.assetManager
130
133
  val dataMap = mutableMapOf<String, Any>()
134
+ var eap = ""
135
+ var ead = ""
131
136
  for (columnName in columnNames) {
132
137
  val columnIndex = cursor.getColumnIndex(columnName)
133
138
  if (columnIndex >= 0) {
@@ -154,6 +159,20 @@ class OfflineVideoEngine(private val context: ReactApplicationContext) {
154
159
  put("estimatedSize", value)
155
160
  }
156
161
  }
162
+ if (columnName == "ead") {
163
+ ead = value
164
+ }
165
+ if (columnName == "eap") {
166
+ eap = value
167
+ }
168
+ if (columnName == "firstPlayTime") {
169
+ var eadFormated = dateToString(ead)
170
+ var eapFormated = dateToString(eap)
171
+ dataMap["data"] = (dataMap["data"] as? MutableMap<String, Any> ?: mutableMapOf()).apply {
172
+ put("effectiveExpiryDate", if (value == "0") eadFormated else eapFormated)
173
+ }
174
+ }
175
+
157
176
  }
158
177
  }
159
178
  dataMap["isCompleted"] = dataMap["currentSize"] == dataMap["expectedSize"]
@@ -165,6 +184,15 @@ class OfflineVideoEngine(private val context: ReactApplicationContext) {
165
184
  return gson.toJson(completedList)
166
185
  }
167
186
 
187
+ private fun dateToString(seconds: String): String {
188
+ val secondsLong = seconds.toLong()
189
+ val calendar = Calendar.getInstance()
190
+ calendar.add(Calendar.SECOND, secondsLong.toInt())
191
+
192
+ val dateFormat = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ")
193
+ return dateFormat.format(calendar.time)
194
+ }
195
+
168
196
  class AssetParseObserver(activity: Context) : ISegmentedAssetFromParserObserver {
169
197
  private val mActivity: Context = activity
170
198
 
@@ -0,0 +1,7 @@
1
+ package com.takeoffmediareactnativepenthera.virtuoso.errors
2
+
3
+ object PentheraErrors {
4
+ const val DOWNLOAD_DENIED_ASSET = "The asset has already been downloaded as many times as permitted. To download this asset again, administrative action is required."
5
+ const val DOWNLOAD_DENIED_COPIES = "There are already as many downloaded copies of this asset as permitted on this account. To continue downloading, the user must delete a copy of this asset from one of their devices."
6
+ const val DOWNLOAD_DENIED_MAX_DEVICE_DOWNLOADS = "There are already as many downloads as permitted on this account. To continue downloading, the user must delete downloaded assets from one of their devices."
7
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@takeoffmedia/react-native-penthera",
3
- "version": "0.2.45",
3
+ "version": "0.2.47",
4
4
  "description": "test",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -1,7 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <Workspace
3
- version = "1.0">
4
- <FileRef
5
- location = "self:">
6
- </FileRef>
7
- </Workspace>
@@ -1,8 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
- <plist version="1.0">
4
- <dict>
5
- <key>IDEDidComputeMac32BitWarning</key>
6
- <true/>
7
- </dict>
8
- </plist>
@@ -1,104 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <Bucket
3
- uuid = "3AE98629-7421-4561-B12C-C06B8B6A3023"
4
- type = "1"
5
- version = "2.0">
6
- <Breakpoints>
7
- <BreakpointProxy
8
- BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
9
- <BreakpointContent
10
- uuid = "A5D166B0-3C57-4F4D-A845-BDB81498DA0F"
11
- shouldBeEnabled = "No"
12
- ignoreCount = "0"
13
- continueAfterRunningActions = "No"
14
- filePath = "Penthera.swift"
15
- startingColumnNumber = "9223372036854775807"
16
- endingColumnNumber = "9223372036854775807"
17
- startingLineNumber = "18"
18
- endingLineNumber = "18"
19
- landmarkName = "Penthera"
20
- landmarkType = "3">
21
- </BreakpointContent>
22
- </BreakpointProxy>
23
- <BreakpointProxy
24
- BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
25
- <BreakpointContent
26
- uuid = "5D7AE47B-D5FC-4468-A75B-C414F3F8A58C"
27
- shouldBeEnabled = "No"
28
- ignoreCount = "0"
29
- continueAfterRunningActions = "No"
30
- filePath = "Penthera.swift"
31
- startingColumnNumber = "9223372036854775807"
32
- endingColumnNumber = "9223372036854775807"
33
- startingLineNumber = "25"
34
- endingLineNumber = "25"
35
- landmarkName = "updateStatusInfo()"
36
- landmarkType = "7">
37
- </BreakpointContent>
38
- </BreakpointProxy>
39
- <BreakpointProxy
40
- BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
41
- <BreakpointContent
42
- uuid = "E3C50B30-46CF-4D56-8C49-C257C70E0ACC"
43
- shouldBeEnabled = "No"
44
- ignoreCount = "0"
45
- continueAfterRunningActions = "No"
46
- filePath = "Penthera.swift"
47
- startingColumnNumber = "9223372036854775807"
48
- endingColumnNumber = "9223372036854775807"
49
- startingLineNumber = "26"
50
- endingLineNumber = "26"
51
- landmarkName = "updateStatusInfo()"
52
- landmarkType = "7">
53
- </BreakpointContent>
54
- </BreakpointProxy>
55
- <BreakpointProxy
56
- BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
57
- <BreakpointContent
58
- uuid = "75EF43BF-56FF-4727-B372-E1A0EBC02C61"
59
- shouldBeEnabled = "Yes"
60
- ignoreCount = "0"
61
- continueAfterRunningActions = "No"
62
- filePath = "Penthera.swift"
63
- startingColumnNumber = "9223372036854775807"
64
- endingColumnNumber = "9223372036854775807"
65
- startingLineNumber = "101"
66
- endingLineNumber = "101"
67
- landmarkName = "initializeSdk(user:backplaneUrl:publicKey:privateKey:resolve:reject:)"
68
- landmarkType = "7">
69
- </BreakpointContent>
70
- </BreakpointProxy>
71
- <BreakpointProxy
72
- BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
73
- <BreakpointContent
74
- uuid = "EF36B51B-4FC2-4989-A791-180E3212EFE3"
75
- shouldBeEnabled = "Yes"
76
- ignoreCount = "0"
77
- continueAfterRunningActions = "No"
78
- filePath = "Penthera.swift"
79
- startingColumnNumber = "9223372036854775807"
80
- endingColumnNumber = "9223372036854775807"
81
- startingLineNumber = "149"
82
- endingLineNumber = "149"
83
- landmarkName = "getDownloadedAsset(assetID:)"
84
- landmarkType = "7">
85
- </BreakpointContent>
86
- </BreakpointProxy>
87
- <BreakpointProxy
88
- BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
89
- <BreakpointContent
90
- uuid = "C467C00E-2428-4D24-843A-E7CDF28CB553"
91
- shouldBeEnabled = "Yes"
92
- ignoreCount = "0"
93
- continueAfterRunningActions = "No"
94
- filePath = "Penthera.swift"
95
- startingColumnNumber = "9223372036854775807"
96
- endingColumnNumber = "9223372036854775807"
97
- startingLineNumber = "148"
98
- endingLineNumber = "148"
99
- landmarkName = "getDownloadedAsset(assetID:)"
100
- landmarkType = "7">
101
- </BreakpointContent>
102
- </BreakpointProxy>
103
- </Breakpoints>
104
- </Bucket>
@@ -1,14 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
- <plist version="1.0">
4
- <dict>
5
- <key>SchemeUserState</key>
6
- <dict>
7
- <key>Penthera.xcscheme_^#shared#^_</key>
8
- <dict>
9
- <key>orderHint</key>
10
- <integer>0</integer>
11
- </dict>
12
- </dict>
13
- </dict>
14
- </plist>