Browse Source

query node - predictable ids V - dead code removal

ondratra 3 years ago
parent
commit
83951fd493

+ 2 - 2
query-node/mappings/src/common.ts

@@ -67,7 +67,7 @@ export async function getNextId(db: DatabaseManager): Promise<string> {
 export async function prepareDataObject(
   db: DatabaseManager,
   contentParameters: ContentParameters,
-  event: SubstrateEvent,
+  blockNumber: number,
   owner: typeof DataObjectOwner,
 ): Promise<DataObject> {
   // convert generic content parameters coming from processor to custom Joystream data type
@@ -76,7 +76,7 @@ export async function prepareDataObject(
   const dataObject = new DataObject({
     id: await getNextId(db),
     owner,
-    createdInBlock: event.blockNumber,
+    createdInBlock: blockNumber,
     typeId: contentParameters.type_id.toNumber(),
     size: customContentParameters.size_in_bytes.toNumber(),
     liaisonJudgement: LiaisonJudgement.PENDING, // judgement is pending at start; liaison id is set when content is accepted/rejected

+ 4 - 4
query-node/mappings/src/content/channel.ts

@@ -39,7 +39,7 @@ export async function content_ChannelCreated(db: DatabaseManager, event: Substra
     {
       metadata: channelCreationParameters.meta,
       db,
-      event,
+      blockNumber: event.blockNumber,
       assets: channelCreationParameters.assets,
       contentOwner: convertContentActorToDataObjectOwner(contentActor, channelId.toNumber()),
     }
@@ -107,7 +107,7 @@ export async function content_ChannelUpdated(
       {
         metadata: newMetadata,
         db,
-        event,
+        blockNumber: event.blockNumber,
         assets: channelUpdateParameters.assets.unwrapOr([]),
         contentOwner: convertContentActorToDataObjectOwner(contentActor, channelId.toNumber()),
       }
@@ -204,7 +204,7 @@ export async function content_ChannelCategoryCreated(
     {
       metadata: channelCategoryCreationParameters.meta,
       db,
-      event,
+      blockNumber: event.blockNumber,
     }
   )
 
@@ -257,7 +257,7 @@ export async function content_ChannelCategoryUpdated(
     {
       metadata: channelCategoryUpdateParameters.new_meta,
       db,
-      event,
+      blockNumber: event.blockNumber,
     }
   )
 

+ 15 - 16
query-node/mappings/src/content/utils.ts

@@ -93,7 +93,7 @@ function isAssetInStorage(dataObject: AssetStorageOrUrls): dataObject is DataObj
 export interface IReadProtobufArguments {
   metadata: Bytes
   db: DatabaseManager
-  event: SubstrateEvent
+  blockNumber: number
 }
 
 export interface IReadProtobufArgumentsWithAssets extends IReadProtobufArguments {
@@ -249,7 +249,7 @@ export async function readProtobufWithAssets<T extends Channel | Video>(
         assetIndex: metaAsObject.coverPhoto,
         assets: parameters.assets,
         db: parameters.db,
-        event: parameters.event,
+        blockNumber: parameters.blockNumber,
         contentOwner: parameters.contentOwner,
       })
       integrateAsset('coverPhoto', result, asset) // changes `result` inline!
@@ -262,7 +262,7 @@ export async function readProtobufWithAssets<T extends Channel | Video>(
         assetIndex: metaAsObject.avatarPhoto,
         assets: parameters.assets,
         db: parameters.db,
-        event: parameters.event,
+        blockNumber: parameters.blockNumber,
         contentOwner: parameters.contentOwner,
       })
       integrateAsset('avatarPhoto', result, asset) // changes `result` inline!
@@ -271,7 +271,7 @@ export async function readProtobufWithAssets<T extends Channel | Video>(
 
     // prepare language if needed
     if ('language' in metaAsObject) {
-      const language = await prepareLanguage(metaAsObject.language, parameters.db, parameters.event)
+      const language = await prepareLanguage(metaAsObject.language, parameters.db, parameters.blockNumber)
       delete metaAsObject.language // make sure temporary value will not interfere
       language.integrateInto(result, 'language')
     }
@@ -302,7 +302,7 @@ export async function readProtobufWithAssets<T extends Channel | Video>(
       result.mediaMetadata = prepareVideoMetadata(
         metaAsObject,
         videoSize,
-        parameters.event.blockNumber,
+        parameters.blockNumber,
       ) as unknown as VideoMediaMetadata
 
       // remove extra values
@@ -313,7 +313,7 @@ export async function readProtobufWithAssets<T extends Channel | Video>(
 
     // prepare license if needed
     if ('license' in metaAsObject) {
-      result.license = await prepareLicense(parameters.db, metaAsObject.license, parameters.event)
+      result.license = await prepareLicense(parameters.db, metaAsObject.license)
     }
 
     // prepare thumbnail photo asset if needed
@@ -322,7 +322,7 @@ export async function readProtobufWithAssets<T extends Channel | Video>(
         assetIndex: metaAsObject.thumbnailPhoto,
         assets: parameters.assets,
         db: parameters.db,
-        event: parameters.event,
+        blockNumber: parameters.blockNumber,
         contentOwner: parameters.contentOwner,
       })
       integrateAsset('thumbnailPhoto', result, asset) // changes `result` inline!
@@ -335,7 +335,7 @@ export async function readProtobufWithAssets<T extends Channel | Video>(
         assetIndex: metaAsObject.video,
         assets: parameters.assets,
         db: parameters.db,
-        event: parameters.event,
+        blockNumber: parameters.blockNumber,
         contentOwner: parameters.contentOwner,
       })
       integrateAsset('media', result, asset) // changes `result` inline!
@@ -347,7 +347,7 @@ export async function readProtobufWithAssets<T extends Channel | Video>(
       const language = await prepareLanguage(
         metaAsObject.language,
         parameters.db,
-        parameters.event,
+        parameters.blockNumber,
       )
       delete metaAsObject.language // make sure temporary value will not interfere
       language.integrateInto(result, 'language')
@@ -459,7 +459,7 @@ function handlePublishedBeforeJoystream(video: Partial<Video>, metadata: Publish
 interface IConvertAssetParameters {
   rawAsset: NewAsset
   db: DatabaseManager
-  event: SubstrateEvent
+  blockNumber: number
   contentOwner: typeof DataObjectOwner
 }
 
@@ -481,7 +481,7 @@ async function convertAsset(parameters: IConvertAssetParameters): Promise<AssetS
   const dataObject = await prepareDataObject(
     parameters.db,
     contentParameters,
-    parameters.event,
+    parameters.blockNumber,
     parameters.contentOwner,
   )
 
@@ -492,7 +492,7 @@ interface IExtractAssetParameters {
   assetIndex: number | undefined
   assets: NewAsset[]
   db: DatabaseManager
-  event: SubstrateEvent
+  blockNumber: number
   contentOwner: typeof DataObjectOwner
 }
 
@@ -518,7 +518,7 @@ async function extractAsset(parameters: IExtractAssetParameters): Promise<Proper
   const asset = await convertAsset({
     rawAsset: parameters.assets[parameters.assetIndex],
     db: parameters.db,
-    event: parameters.event,
+    blockNumber: parameters.blockNumber,
     contentOwner: parameters.contentOwner,
   })
 
@@ -607,7 +607,7 @@ function extractVideoSize(assets: NewAsset[], assetIndex: number | undefined): n
 async function prepareLanguage(
   languageIso: string | undefined,
   db: DatabaseManager,
-  event: SubstrateEvent,
+  blockNumber: number,
 ): Promise<PropertyChange<Language>> {
   // is language being unset?
   if (languageIso === undefined) {
@@ -636,7 +636,7 @@ async function prepareLanguage(
   const newLanguage = new Language({
     id: await getNextId(db),
     iso: languageIso,
-    createdInBlock: event.blockNumber,
+    createdInBlock: blockNumber,
 
     // TODO: remove these lines after Hydra auto-fills the values when cascading save (remove them on all places)
     createdById: '1',
@@ -651,7 +651,6 @@ async function prepareLanguage(
 async function prepareLicense(
   db: DatabaseManager,
   licenseProtobuf: LicenseMetadata.AsObject | undefined,
-  event: SubstrateEvent,
 ): Promise<License | undefined> {
   // NOTE: Deletion of any previous license should take place in appropriate event handling function
   //       and not here even it might appear so.

+ 8 - 8
query-node/mappings/src/content/video.ts

@@ -57,7 +57,7 @@ export async function content_VideoCategoryCreated(
     {
       metadata: videoCategoryCreationParameters.meta,
       db,
-      event,
+      blockNumber: event.blockNumber,
     }
   )
 
@@ -109,7 +109,7 @@ export async function content_VideoCategoryUpdated(
     {
       metadata: videoCategoryUpdateParameters.new_meta,
       db,
-      event,
+      blockNumber: event.blockNumber,
     }
   )
 
@@ -172,7 +172,7 @@ export async function content_VideoCreated(
     {
       metadata: videoCreationParameters.meta,
       db,
-      event,
+      blockNumber: event.blockNumber,
       assets: videoCreationParameters.assets,
       contentOwner: convertContentActorToDataObjectOwner(contentActor, channelId.toNumber()),
     }
@@ -187,7 +187,7 @@ export async function content_VideoCreated(
   }
 
   // prepare video media metadata (if any)
-  const fixedProtobuf = await integrateVideoMediaMetadata(db, null, protobufContent, event)
+  const fixedProtobuf = await integrateVideoMediaMetadata(db, null, protobufContent, event.blockNumber)
 
   const licenseIsEmpty = fixedProtobuf.license && !Object.keys(fixedProtobuf.license).length
   if (licenseIsEmpty) { // license deletion was requested - ignore it and consider it empty
@@ -258,14 +258,14 @@ export async function content_VideoUpdated(
       {
         metadata: newMetadata,
         db,
-        event,
+        blockNumber: event.blockNumber,
         assets: videoUpdateParameters.assets.unwrapOr([]),
         contentOwner: convertContentActorToDataObjectOwner(contentActor, (new BN(video.channel.id)).toNumber()),
       }
     )
 
     // prepare video media metadata (if any)
-    const fixedProtobuf = await integrateVideoMediaMetadata(db, video, protobufContent, event)
+    const fixedProtobuf = await integrateVideoMediaMetadata(db, video, protobufContent, event.blockNumber)
 
     // remember original license
     const originalLicense = video.license
@@ -430,7 +430,7 @@ async function integrateVideoMediaMetadata(
   db: DatabaseManager,
   existingRecord: Video | null,
   metadata: Partial<Video>,
-  event: SubstrateEvent,
+  blockNumber: number,
 ): Promise<Partial<Video>> {
   if (!metadata.mediaMetadata) {
     return metadata
@@ -453,7 +453,7 @@ async function integrateVideoMediaMetadata(
 
   // ensure media metadata object
   const mediaMetadata = (existingRecord && existingRecord.mediaMetadata) || new VideoMediaMetadata({
-    createdInBlock: event.blockNumber,
+    createdInBlock: blockNumber,
 
     createdById: '1',
     updatedById: '1',

+ 1 - 1
query-node/mappings/src/storage.ts

@@ -45,7 +45,7 @@ export async function dataDirectory_ContentAdded(db: DatabaseManager, event: Sub
   // save all content objects
   for (let parameters of contentParameters) {
     const owner = convertStorageObjectOwner(storageObjectOwner)
-    const dataObject = await prepareDataObject(db, parameters, event, owner)
+    const dataObject = await prepareDataObject(db, parameters, event.blockNumber, owner)
 
     // fill in auto-generated fields
     dataObject.createdAt = new Date(fixBlockTimestamp(event.blockTimestamp).toNumber())

+ 3 - 5
query-node/mappings/src/workingGroup.ts

@@ -31,7 +31,7 @@ export async function storageWorkingGroup_OpeningFilled(db: DatabaseManager, eve
   const {applicationIdToWorkerIdMap} = new StorageWorkingGroup.OpeningFilledEvent(event).data
 
   // call generic processing
-  await workingGroup_OpeningFilled(db, WorkerType.STORAGE, applicationIdToWorkerIdMap, event)
+  await workingGroup_OpeningFilled(db, WorkerType.STORAGE, applicationIdToWorkerIdMap)
 }
 
 export async function storageWorkingGroup_WorkerStorageUpdated(db: DatabaseManager, event: SubstrateEvent): Promise<void> {
@@ -73,7 +73,7 @@ export async function gatewayWorkingGroup_OpeningFilled(db: DatabaseManager, eve
   const {applicationIdToWorkerIdMap} = new GatewayWorkingGroup.OpeningFilledEvent(event).data
 
   // call generic processing
-  await workingGroup_OpeningFilled(db, WorkerType.GATEWAY, applicationIdToWorkerIdMap, event)
+  await workingGroup_OpeningFilled(db, WorkerType.GATEWAY, applicationIdToWorkerIdMap)
 }
 
 export async function gatewayWorkingGroup_WorkerStorageUpdated(db: DatabaseManager, event: SubstrateEvent): Promise<void> {
@@ -114,12 +114,11 @@ export async function workingGroup_OpeningFilled(
   db: DatabaseManager,
   workerType: WorkerType,
   applicationIdToWorkerIdMap: ApplicationIdToWorkerIdMap,
-  event: SubstrateEvent,
 ): Promise<void> {
   const workerIds = [...applicationIdToWorkerIdMap.values()]
 
   for (const workerId of workerIds) {
-    await createWorker(db, workerId, workerType, event)
+    await createWorker(db, workerId, workerType)
   }
 
   // emit log event
@@ -178,7 +177,6 @@ async function createWorker(
   db: DatabaseManager,
   workerId: WorkerId,
   workerType: WorkerType,
-  event: SubstrateEvent,
 ): Promise<void> {
   const newWorker = new Worker({
     id: await getNextId(db),