From 394030b711ecb8ab6c6133d16ec34097f9c1fd9c Mon Sep 17 00:00:00 2001 From: Audric Ackermann Date: Fri, 24 Jul 2020 15:37:28 +1000 Subject: [PATCH] remove getDefaultTTL and use Constants values instead --- ts/session/messages/outgoing/content/ContentMessage.ts | 8 -------- .../messages/outgoing/content/SessionRequestMessage.ts | 8 +------- ts/session/messages/outgoing/content/data/ChatMessage.ts | 3 ++- .../outgoing/content/data/ExpirationTimerUpdateMessage.ts | 3 ++- .../outgoing/content/data/GroupInvitationMessage.ts | 3 ++- .../outgoing/content/data/group/ClosedGroupChatMessage.ts | 3 ++- .../outgoing/content/data/group/ClosedGroupMessage.ts | 3 ++- .../content/data/mediumgroup/MediumGroupMessage.ts | 3 ++- .../messages/outgoing/content/receipt/ReceiptMessage.ts | 3 ++- .../messages/outgoing/content/sync/RequestSyncMessage.ts | 3 ++- ts/session/messages/outgoing/content/sync/SyncMessage.ts | 3 ++- ts/session/protocols/SessionProtocol.ts | 3 ++- ts/test/session/protocols/SessionProtocol_test.ts | 7 ++++--- 13 files changed, 25 insertions(+), 28 deletions(-) diff --git a/ts/session/messages/outgoing/content/ContentMessage.ts b/ts/session/messages/outgoing/content/ContentMessage.ts index abe7b97a1..d7cbf4677 100644 --- a/ts/session/messages/outgoing/content/ContentMessage.ts +++ b/ts/session/messages/outgoing/content/ContentMessage.ts @@ -9,12 +9,4 @@ export abstract class ContentMessage extends Message { public abstract ttl(): number; protected abstract contentProto(): SignalService.Content; - - /** - * If the message is not a message with a specific TTL, - * this value can be used in all child classes - */ - protected getDefaultTTL(): number { - return Constants.TTL_DEFAULT.REGULAR_MESSAGE; - } } diff --git a/ts/session/messages/outgoing/content/SessionRequestMessage.ts b/ts/session/messages/outgoing/content/SessionRequestMessage.ts index 765be235b..57d2c9007 100644 --- a/ts/session/messages/outgoing/content/SessionRequestMessage.ts +++ b/ts/session/messages/outgoing/content/SessionRequestMessage.ts @@ -25,14 +25,8 @@ export class SessionRequestMessage extends ContentMessage { this.preKeyBundle = params.preKeyBundle; } - public static defaultTTL(): number { - // Gets the default TTL for Session Request, as - // public static readonly ttl: number <-- cannot be assigned a non-literal - return Constants.TTL_DEFAULT.SESSION_REQUEST; - } - public ttl(): number { - return SessionRequestMessage.defaultTTL(); + return Constants.TTL_DEFAULT.SESSION_REQUEST; } protected getPreKeyBundleMessage(): SignalService.PreKeyBundleMessage { diff --git a/ts/session/messages/outgoing/content/data/ChatMessage.ts b/ts/session/messages/outgoing/content/data/ChatMessage.ts index 0ad70faa8..3f07a3de4 100644 --- a/ts/session/messages/outgoing/content/data/ChatMessage.ts +++ b/ts/session/messages/outgoing/content/data/ChatMessage.ts @@ -3,6 +3,7 @@ import { SignalService } from '../../../../../protobuf'; import { MessageParams } from '../../Message'; import { LokiProfile } from '../../../../../types/Message'; import ByteBuffer from 'bytebuffer'; +import { Constants } from '../../../..'; export interface AttachmentPointer { id?: number; @@ -75,7 +76,7 @@ export class ChatMessage extends DataMessage { } public ttl(): number { - return this.getDefaultTTL(); + return Constants.TTL_DEFAULT.REGULAR_MESSAGE; } public dataProto(): SignalService.DataMessage { diff --git a/ts/session/messages/outgoing/content/data/ExpirationTimerUpdateMessage.ts b/ts/session/messages/outgoing/content/data/ExpirationTimerUpdateMessage.ts index 93ba71770..3a25caa7b 100644 --- a/ts/session/messages/outgoing/content/data/ExpirationTimerUpdateMessage.ts +++ b/ts/session/messages/outgoing/content/data/ExpirationTimerUpdateMessage.ts @@ -4,6 +4,7 @@ import { MessageParams } from '../../Message'; import { StringUtils } from '../../../../utils'; import { DataMessage } from './DataMessage'; import { PubKey } from '../../../../types'; +import { Constants } from '../../../..'; interface ExpirationTimerUpdateMessageParams extends MessageParams { groupId?: string | PubKey; @@ -26,7 +27,7 @@ export class ExpirationTimerUpdateMessage extends DataMessage { } public ttl(): number { - return this.getDefaultTTL(); + return Constants.TTL_DEFAULT.REGULAR_MESSAGE; } public dataProto(): SignalService.DataMessage { diff --git a/ts/session/messages/outgoing/content/data/GroupInvitationMessage.ts b/ts/session/messages/outgoing/content/data/GroupInvitationMessage.ts index c80ce06e5..742b85a96 100644 --- a/ts/session/messages/outgoing/content/data/GroupInvitationMessage.ts +++ b/ts/session/messages/outgoing/content/data/GroupInvitationMessage.ts @@ -1,6 +1,7 @@ import { DataMessage } from './DataMessage'; import { SignalService } from '../../../../../protobuf'; import { MessageParams } from '../../Message'; +import { Constants } from '../../../..'; interface GroupInvitationMessageParams extends MessageParams { serverAddress: string; @@ -21,7 +22,7 @@ export class GroupInvitationMessage extends DataMessage { } public ttl(): number { - return this.getDefaultTTL(); + return Constants.TTL_DEFAULT.REGULAR_MESSAGE; } public dataProto(): SignalService.DataMessage { diff --git a/ts/session/messages/outgoing/content/data/group/ClosedGroupChatMessage.ts b/ts/session/messages/outgoing/content/data/group/ClosedGroupChatMessage.ts index 68ab5188f..4a832aa36 100644 --- a/ts/session/messages/outgoing/content/data/group/ClosedGroupChatMessage.ts +++ b/ts/session/messages/outgoing/content/data/group/ClosedGroupChatMessage.ts @@ -2,6 +2,7 @@ import { SignalService } from '../../../../../../protobuf'; import { ChatMessage } from '../ChatMessage'; import { ClosedGroupMessage } from './ClosedGroupMessage'; import { PubKey } from '../../../../../types'; +import { Constants } from '../../../../..'; interface ClosedGroupChatMessageParams { identifier?: string; @@ -22,7 +23,7 @@ export class ClosedGroupChatMessage extends ClosedGroupMessage { } public ttl(): number { - return this.getDefaultTTL(); + return Constants.TTL_DEFAULT.REGULAR_MESSAGE; } public dataProto(): SignalService.DataMessage { diff --git a/ts/session/messages/outgoing/content/data/group/ClosedGroupMessage.ts b/ts/session/messages/outgoing/content/data/group/ClosedGroupMessage.ts index 701634d4f..9b6c80704 100644 --- a/ts/session/messages/outgoing/content/data/group/ClosedGroupMessage.ts +++ b/ts/session/messages/outgoing/content/data/group/ClosedGroupMessage.ts @@ -3,6 +3,7 @@ import { SignalService } from '../../../../../../protobuf'; import { MessageParams } from '../../../Message'; import { PubKey } from '../../../../../types'; import { StringUtils } from '../../../../../utils'; +import { Constants } from '../../../../..'; export interface ClosedGroupMessageParams extends MessageParams { groupId: string | PubKey; @@ -20,7 +21,7 @@ export abstract class ClosedGroupMessage extends DataMessage { } public ttl(): number { - return this.getDefaultTTL(); + return Constants.TTL_DEFAULT.REGULAR_MESSAGE; } public dataProto(): SignalService.DataMessage { diff --git a/ts/session/messages/outgoing/content/data/mediumgroup/MediumGroupMessage.ts b/ts/session/messages/outgoing/content/data/mediumgroup/MediumGroupMessage.ts index fbef3daa6..a505d7155 100644 --- a/ts/session/messages/outgoing/content/data/mediumgroup/MediumGroupMessage.ts +++ b/ts/session/messages/outgoing/content/data/mediumgroup/MediumGroupMessage.ts @@ -3,6 +3,7 @@ import { SignalService } from '../../../../../../protobuf'; import { MessageParams } from '../../../Message'; import { PubKey } from '../../../../../types'; import { StringUtils } from '../../../../../utils'; +import { Constants } from '../../../../..'; export interface RatchetKey { chainKey: Uint8Array; @@ -26,7 +27,7 @@ export abstract class MediumGroupMessage extends DataMessage { } public ttl(): number { - return this.getDefaultTTL(); + return Constants.TTL_DEFAULT.REGULAR_MESSAGE; } public dataProto(): SignalService.DataMessage { diff --git a/ts/session/messages/outgoing/content/receipt/ReceiptMessage.ts b/ts/session/messages/outgoing/content/receipt/ReceiptMessage.ts index ccef56c38..615989bcb 100644 --- a/ts/session/messages/outgoing/content/receipt/ReceiptMessage.ts +++ b/ts/session/messages/outgoing/content/receipt/ReceiptMessage.ts @@ -1,6 +1,7 @@ import { ContentMessage } from '../ContentMessage'; import { SignalService } from '../../../../../protobuf'; import { MessageParams } from '../../Message'; +import { Constants } from '../../../..'; interface ReceiptMessageParams extends MessageParams { timestamps: Array; @@ -14,7 +15,7 @@ export abstract class ReceiptMessage extends ContentMessage { } public ttl(): number { - return this.getDefaultTTL(); + return Constants.TTL_DEFAULT.REGULAR_MESSAGE; } public abstract getReceiptType(): SignalService.ReceiptMessage.Type; diff --git a/ts/session/messages/outgoing/content/sync/RequestSyncMessage.ts b/ts/session/messages/outgoing/content/sync/RequestSyncMessage.ts index 146babc7f..85d40de0c 100644 --- a/ts/session/messages/outgoing/content/sync/RequestSyncMessage.ts +++ b/ts/session/messages/outgoing/content/sync/RequestSyncMessage.ts @@ -1,6 +1,7 @@ import { SyncMessage } from './SyncMessage'; import { SignalService } from '../../../../../protobuf'; import { MessageParams } from '../../Message'; +import { Constants } from '../../../..'; interface RequestSyncMessageParams extends MessageParams { requestType: SignalService.SyncMessage.Request.Type; @@ -15,7 +16,7 @@ export abstract class RequestSyncMessage extends SyncMessage { } public ttl(): number { - return this.getDefaultTTL(); + return Constants.TTL_DEFAULT.REGULAR_MESSAGE; } protected contentProto(): SignalService.Content { diff --git a/ts/session/messages/outgoing/content/sync/SyncMessage.ts b/ts/session/messages/outgoing/content/sync/SyncMessage.ts index 6f3a25b19..063bf55d7 100644 --- a/ts/session/messages/outgoing/content/sync/SyncMessage.ts +++ b/ts/session/messages/outgoing/content/sync/SyncMessage.ts @@ -1,10 +1,11 @@ import { ContentMessage } from '../ContentMessage'; import { SignalService } from '../../../../../protobuf'; import * as crypto from 'crypto'; +import { Constants } from '../../../..'; export abstract class SyncMessage extends ContentMessage { public ttl(): number { - return this.getDefaultTTL(); + return Constants.TTL_DEFAULT.REGULAR_MESSAGE; } protected contentProto(): SignalService.Content { diff --git a/ts/session/protocols/SessionProtocol.ts b/ts/session/protocols/SessionProtocol.ts index 8e15fa875..df98e4fbd 100644 --- a/ts/session/protocols/SessionProtocol.ts +++ b/ts/session/protocols/SessionProtocol.ts @@ -3,6 +3,7 @@ import { createOrUpdateItem, getItemById } from '../../../js/modules/data'; import { MessageSender } from '../sending'; import { MessageUtils } from '../utils'; import { PubKey } from '../types'; +import { Constants } from '..'; interface StringToNumberMap { [key: string]: number; @@ -81,7 +82,7 @@ export class SessionProtocol { const now = Date.now(); const sentTimestamps = Object.entries(this.sentSessionsTimestamp); const promises = sentTimestamps.map(async ([device, sent]) => { - const expireTime = sent + SessionRequestMessage.defaultTTL(); + const expireTime = sent + Constants.TTL_DEFAULT.SESSION_REQUEST; // Check if we need to send a session request if (now < expireTime) { return; diff --git a/ts/test/session/protocols/SessionProtocol_test.ts b/ts/test/session/protocols/SessionProtocol_test.ts index e836c4488..9ae9adec3 100644 --- a/ts/test/session/protocols/SessionProtocol_test.ts +++ b/ts/test/session/protocols/SessionProtocol_test.ts @@ -7,6 +7,7 @@ import { SessionRequestMessage } from '../../../session/messages/outgoing'; import { TextEncoder } from 'util'; import { MessageSender } from '../../../session/sending'; import { PubKey } from '../../../session/types'; +import { Constants } from '../../../session'; // tslint:disable-next-line: max-func-body-length describe('SessionProtocol', () => { @@ -124,7 +125,7 @@ describe('SessionProtocol', () => { }); // Set the time just before expiry - clock.tick(SessionRequestMessage.defaultTTL() - 100); + clock.tick(Constants.TTL_DEFAULT.SESSION_REQUEST - 100); await SessionProtocol.checkSessionRequestExpiry(); expect(getItemById.calledWith('sentSessionsTimestamp')); @@ -140,7 +141,7 @@ describe('SessionProtocol', () => { }); // Expire the request - clock.tick(SessionRequestMessage.defaultTTL() + 100); + clock.tick(Constants.TTL_DEFAULT.SESSION_REQUEST + 100); await SessionProtocol.checkSessionRequestExpiry(); expect(getItemById.calledWith('sentSessionsTimestamp')); @@ -159,7 +160,7 @@ describe('SessionProtocol', () => { sandbox.stub(SessionProtocol, 'sendSessionRequestIfNeeded').resolves(); // Expire the request - clock.tick(SessionRequestMessage.defaultTTL() + 100); + clock.tick(Constants.TTL_DEFAULT.SESSION_REQUEST + 100); await SessionProtocol.checkSessionRequestExpiry(); expect(getItemById.calledWith('sentSessionsTimestamp'));