Skip to content

[CM-2361] File Titles and Comments update to KMCore and KMChat from AL | iOS SDK (Part - 1) #125

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 7 commits into
base: dev
Choose a base branch
from

Conversation

AbhijeetRanjan308
Copy link
Contributor

@AbhijeetRanjan308 AbhijeetRanjan308 commented May 23, 2025

Summary

  • Renamed file from AL to KMCore prefix
    -> ALChannelKMCoreChannel
    -> ALDBHandlerKMCoreDBHandler
    -> ALMessageKMCoreMessage
    -> ALConversationKMCoreConversation
    -> ALJsonKMCoreJson
  • Changed the Folder Name from applozickit to corekit

Summary by CodeRabbit

  • Refactor
    • Renamed all core messaging, channel, and conversation classes and types from the "AL" prefix to the new "KMCore" prefix throughout the codebase.
    • Updated all related method signatures, properties, and imports to use the new "KMCore" prefixed types.
    • Adjusted public APIs, delegate protocols, and completion handlers to reflect the new class names and types.
  • Documentation
    • Updated documentation comments and type references to align with the new "KMCore" naming convention.
  • Chores
    • Removed deprecated interfaces and added new headers to support the updated core classes.

Copy link

coderabbitai bot commented May 23, 2025

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Walkthrough

This update performs a comprehensive refactor across the codebase, systematically renaming and replacing all legacy AL-prefixed classes, types, and imports with their KMCore-prefixed counterparts. The changes affect message, channel, conversation, and database handler modules, updating method signatures, property types, and documentation accordingly. No functional or logic changes are introduced.

Changes

File(s) / Group Change Summary
Sources/JWT/user/ALContactDBService.m, Sources/JWT/user/ALContactService.m Replaced all ALDBHandler references and imports with KMCoreDBHandler in ALContactDBService.m; updated import to KMCoreDBHandler.h in ALContactService.m. No logic changes.
Sources/JWT/user/ALUserService.m, Sources/include/ALUserService.h Replaced all ALMessage*, ALChannel*, and related classes with KMCoreMessage*, KMCoreChannel*, etc. Updated method signatures and property types accordingly. Adjusted error messages and documentation to reflect new class names.
Sources/JWT/user/KMCoreMessageInfo.m, Sources/JWT/user/KMCoreMessageInfoResponse.m Renamed classes and files from ALMessageInfo/ALMessageInfoResponse to KMCoreMessageInfo/KMCoreMessageInfoResponse. Updated imports and object instantiations to use new names.
Sources/account/ALRegisterUserClientService.m Updated imports and instantiations from ALMessageDBService/ALMessageService to KMCoreMessageDBService/KMCoreMessageService. No other logic changes.
Sources/channel/* (multiple files) Comprehensive rename of all channel-related classes, files, and types from AL* to KMCore* (e.g., ALChannelKMCoreChannel, ALChannelDBServiceKMCoreChannelDBService). Updated all imports, method signatures, property types, and internal references. No logic changes.
Sources/commons/KMCoreJson.m, Sources/include/KMCoreJson.h Renamed ALJson to KMCoreJson in class, file, and all references.
Sources/conversation/* (multiple files) Renamed all conversation-related classes and files from ALConversation* to KMCoreConversation*. Updated imports, method signatures, property types, and internal references. No functional changes.
Sources/corekit/* (multiple files) Replaced all ALMessage*, ALChannel*, and related classes with KMCoreMessage*, KMCoreChannel*, etc., in message, attachment, and MQTT services. Updated method signatures, imports, and property types. No logic changes.
Sources/include/* (multiple files) Systematic update of all public headers: replaced AL* classes and types with KMCore* equivalents. Updated imports, method signatures, property types, protocol definitions, and documentation. Removed obsolete headers (e.g., ALChannelFeed.h, ALConversationService.h) and added new ones for KMCore classes.
Sources/message/* (multiple files) Renamed all message-related classes and files from ALMessage* to KMCoreMessage*. Updated imports, method and class names, and all type references. No logic changes.
Sources/networkcommunication/* (multiple files) Updated all references to ALMessage*, ALDBHandler, and related classes to KMCoreMessage*, KMCoreDBHandler, etc. Updated method signatures, property types, and imports. No changes to control flow or logic.
Sources/message/ALSyncMessageFeed.m, Sources/message/MessageListRequest.m Updated imports and instantiations to use KMCoreMessage and KMCoreChannel instead of ALMessage and ALChannel. No other logic changes.

Sequence Diagram(s)

sequenceDiagram
    participant Client
    participant KMCoreMessageService
    participant KMCoreMessageDBService
    participant KMCoreChannelService
    participant KMCoreDBHandler

    Client->>KMCoreMessageService: sendMessages(KMCoreMessage)
    KMCoreMessageService->>KMCoreMessageDBService: addMessage(KMCoreMessage)
    KMCoreMessageDBService->>KMCoreDBHandler: save to DB
    KMCoreMessageService->>KMCoreChannelService: getChannelByKey(channelKey)
    KMCoreChannelService->>KMCoreDBHandler: fetch channel
    KMCoreMessageService-->>Client: completion callback
Loading

Possibly related PRs

Suggested reviewers

  • prateek-kommunicate
  • adarshmishra

Poem

In fields of code where classes leap,
The ALs have hopped, now KMCore runs deep.
Messages and channels, conversations anew,
Rabbits refactor, as swift winds blew.
With every hop, a namespace bright,
The burrow’s codebase feels just right!
🐇✨


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link

iOS Lint Test Result
Congratulations! Linter Check Passed Successfully 🎉

@AbhijeetRanjan308
Copy link
Contributor Author

@coderabbitai review

Copy link

coderabbitai bot commented May 23, 2025

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 6

🔭 Outside diff range comments (4)
Sources/include/KMCoreChannel.h (1)

14-21: 💡 Verification agent

🧩 Analysis chain

Consider updating constant names for consistency.

While the class and imports have been updated to use the KMCore prefix, the constants still use the AL_ prefix. For complete consistency with the renaming effort, consider updating these constants to use KMCORE_ or similar prefix.

-static NSString *const AL_CHANNEL_DEFAULT_MUTE = @"MUTE";
-static NSString *const AL_CHANNEL_CONVERSATION_STATUS = @"CONVERSATION_STATUS";
-static NSString *const AL_CATEGORY = @"AL_CATEGORY";
-static NSString *const AL_CONTEXT_BASED_CHAT = @"AL_CONTEXT_BASED_CHAT";
-static NSString *const AL_CONVERSATION_ASSIGNEE = @"CONVERSATION_ASSIGNEE";
+static NSString *const KMCORE_CHANNEL_DEFAULT_MUTE = @"MUTE";
+static NSString *const KMCORE_CHANNEL_CONVERSATION_STATUS = @"CONVERSATION_STATUS";
+static NSString *const KMCORE_CATEGORY = @"AL_CATEGORY";
+static NSString *const KMCORE_CONTEXT_BASED_CHAT = @"AL_CONTEXT_BASED_CHAT";
+static NSString *const KMCORE_CONVERSATION_ASSIGNEE = @"CONVERSATION_ASSIGNEE";

Let me check how these constants are used across the codebase to assess the impact:


🏁 Script executed:

#!/bin/bash
# Description: Check usage of AL_ prefixed constants to assess refactoring impact
# Expected: Find all references to these constants across the codebase

echo "Checking AL_CHANNEL_DEFAULT_MUTE usage:"
rg "AL_CHANNEL_DEFAULT_MUTE" --type=m --type=h

echo "Checking AL_CHANNEL_CONVERSATION_STATUS usage:"
rg "AL_CHANNEL_CONVERSATION_STATUS" --type=m --type=h

echo "Checking AL_CATEGORY usage:"
rg "AL_CATEGORY" --type=m --type=h

echo "Checking AL_CONTEXT_BASED_CHAT usage:"
rg "AL_CONTEXT_BASED_CHAT" --type=m --type=h

echo "Checking AL_CONVERSATION_ASSIGNEE usage:"
rg "AL_CONVERSATION_ASSIGNEE" --type=m --type=h

Length of output: 791


I’ll retry the search without the incorrect --type flags to get all occurrences in Objective-C sources:

This will show any remaining references so we can determine if renaming the constants will require updating call sites.


🏁 Script executed:

#!/bin/bash
# Re-check usage of AL_ prefixed constants in .h/.m files

echo "Occurrences of AL_CHANNEL_DEFAULT_MUTE:"
rg -n "AL_CHANNEL_DEFAULT_MUTE" -g "*.m" -g "*.h" || true

echo "Occurrences of AL_CHANNEL_CONVERSATION_STATUS:"
rg -n "AL_CHANNEL_CONVERSATION_STATUS" -g "*.m" -g "*.h" || true

echo "Occurrences of AL_CATEGORY:"
rg -n "AL_CATEGORY" -g "*.m" -g "*.h" || true

echo "Occurrences of AL_CONTEXT_BASED_CHAT:"
rg -n "AL_CONTEXT_BASED_CHAT" -g "*.m" -g "*.h" || true

echo "Occurrences of AL_CONVERSATION_ASSIGNEE:"
rg -n "AL_CONVERSATION_ASSIGNEE" -g "*.m" -g "*.h" || true

Length of output: 3884


Ensure all AL_ constants are renamed to KMCORE_ and update every reference

We’ve confirmed that each AL_ constant in KMCoreChannel.h is still used throughout multiple .m files — renaming will require touching all those call sites:

• Sources/include/KMCoreChannel.h (lines 14–18): rename
• Sources/channel/KMCoreChannel.m (lines 133–134, 141–142, 161–162, 169–170, 180–181)
• Sources/channel/KMCoreChannelService.m (lines 184, 1273, 1290)
• Sources/channel/KMCoreChannelDBService.m (lines 846–847)
• Sources/push/ALPushNotificationService.m (line 340)

Suggested diff in Sources/include/KMCoreChannel.h:

--- a/Sources/include/KMCoreChannel.h
+++ b/Sources/include/KMCoreChannel.h
@@ -14,5 +14,5 @@
-static NSString *const AL_CHANNEL_DEFAULT_MUTE = @"MUTE";
+static NSString *const KMCORE_CHANNEL_DEFAULT_MUTE = @"MUTE";

-static NSString *const AL_CHANNEL_CONVERSATION_STATUS = @"CONVERSATION_STATUS";
+static NSString *const KMCORE_CHANNEL_CONVERSATION_STATUS = @"CONVERSATION_STATUS";

-static NSString *const AL_CATEGORY = @"AL_CATEGORY";
+static NSString *const KMCORE_CATEGORY = @"AL_CATEGORY";

-static NSString *const AL_CONTEXT_BASED_CHAT = @"AL_CONTEXT_BASED_CHAT";
+static NSString *const KMCORE_CONTEXT_BASED_CHAT = @"AL_CONTEXT_BASED_CHAT";

-static NSString *const AL_CONVERSATION_ASSIGNEE = @"CONVERSATION_ASSIGNEE";
+static NSString *const KMCORE_CONVERSATION_ASSIGNEE = @"CONVERSATION_ASSIGNEE";

After renaming, update every occurrence above to the new identifiers so nothing breaks at compile time.

Sources/include/KMCoreMessageServiceWrapper.h (1)

1-46: 💡 Verification agent

🧩 Analysis chain

Systematic renaming looks good, but verify parameter naming consistency.

The class and type renaming from AL* to KMCore* is consistent throughout the header file. However, there are parameter names that still use the old al prefix (e.g., alMessage in method parameters at lines 20-22, 34, 39).

Consider updating parameter names to match the new naming convention:

- (void)uploadDownloadFailed:(KMCoreMessage *)alMessage;
- (void)uploadCompleted:(KMCoreMessage *)alMessage;
- (void)DownloadCompleted:(KMCoreMessage *)alMessage;

- (void)sendMessage:(KMCoreMessage *)alMessage
- (void)downloadMessageAttachment:(KMCoreMessage*)alMessage;

Should become:

- (void)uploadDownloadFailed:(KMCoreMessage *)message;
- (void)uploadCompleted:(KMCoreMessage *)message;
- (void)DownloadCompleted:(KMCoreMessage *)message;

- (void)sendMessage:(KMCoreMessage *)message
- (void)downloadMessageAttachment:(KMCoreMessage*)message;

🏁 Script executed:

#!/bin/bash
# Verify all usages of KMCoreMessageServiceWrapper have been updated
rg -A 3 -B 3 "ALMessageServiceWrapper|ALMessageWrapper" --type objc
rg -A 3 -B 3 "KMCoreMessageServiceWrapper" --type objc

Length of output: 3239


Parameter Naming Consistency

The class and type renaming from AL* to KMCore* is fully applied in your code—there are no remaining calls to the old ALMessageServiceWrapper except in the CocoaPods umbrella (which you can ignore). To complete the cleanup, please rename the protocol and method parameters that still use the old alMessage prefix:

• In Sources/include/KMCoreMessageServiceWrapper.h and corresponding implementation:

  • Change
    - (void)uploadDownloadFailed:(KMCoreMessage *)alMessage;
    - (void)uploadCompleted:(KMCoreMessage *)alMessage;
    - (void)DownloadCompleted:(KMCoreMessage *)alMessage;
    - (void)sendMessage:(KMCoreMessage *)alMessage
      withAttachmentAtLocation:(NSString *)attachmentLocalPath
      andWithStatusDelegate:(id)statusDelegate
           andContentType:(short)contentype;
    - (void)downloadMessageAttachment:(KMCoreMessage*)alMessage;
    to
    + (void)uploadDownloadFailed:(KMCoreMessage *)message;
    + (void)uploadCompleted:(KMCoreMessage *)message;
    + (void)downloadCompleted:(KMCoreMessage *)message;
    + (void)sendMessage:(KMCoreMessage *)message
      withAttachmentAtLocation:(NSString *)attachmentLocalPath
      andWithStatusDelegate:(id)statusDelegate
           andContentType:(short)contentType;
    + (void)downloadMessageAttachment:(KMCoreMessage *)message;

These changes will align your parameter names with the new KMCoreMessage type.

Sources/message/KMCoreMessageService.m (1)

1-1147: 💡 Verification agent

🧩 Analysis chain

LGTM! Comprehensive implementation refactoring with preserved functionality.

This implementation file demonstrates excellent refactoring from ALMessageService to KMCoreMessageService:

  • Class declaration: ALMessageServiceKMCoreMessageService (lines 35, 39)
  • Imports: All imports systematically updated to KMCore* prefixed classes (lines 8, 13-15, 23-24)
  • Singleton pattern: Properly maintained with updated class references (lines 43-44, 47)
  • Method implementations: All variable types, service instantiations, and method calls consistently updated throughout
  • Business logic: Complete preservation of functionality, error handling, and control flow

The refactoring covers hundreds of references while maintaining the exact same behavior and API contracts. This systematic approach reduces the risk of introducing bugs during the namespace migration.


🏁 Script executed:

#!/bin/bash
# Verify that the refactoring is consistent across the codebase by checking for any remaining AL-prefixed references in related files

echo "Checking for any remaining AL-prefixed message, channel, or DB service references..."

# Search for potential missed AL* class references that should be KMCore*
rg -n "AL(Message|Channel|DB)" --type objc --type objcpp | head -20

echo -e "\nChecking for mixed AL/KMCore usage that might indicate incomplete refactoring..."

# Look for files that import both AL and KMCore variants
rg -l "#import.*AL(Message|Channel|DB)" --type objc --type objcpp | xargs -I {} sh -c 'echo "=== {} ==="; rg "#import.*(AL|KMCore)(Message|Channel|DB)" {}'

Length of output: 3415


Fix remaining AL-prefixed references in the Example project

During verification we found leftover AL* class references in the Example folder that should be updated to your new KMCore* namespace:

  • Example/KommunicateCore-iOS-SDK/KMViewController.m:46
    Replace
    ALMessageService *messageService = [[ALMessageService alloc] init];
    with
    KMCoreMessageService *messageService = [[KMCoreMessageService alloc] init];

The imports in your Pods/Target Support Files/.../umbrella.h are from the vendored SDK and can be ignored. After updating the Example file above, please rerun the search to ensure no other AL(Message|Channel|DB) references remain in your own code.

Sources/channel/KMCoreChannelService.m (1)

1-1319: 💡 Verification agent

🧩 Analysis chain

Verify that all related files and dependencies have been updated consistently.

This systematic refactoring from AL* to KMCore* prefixes appears to be part of a larger migration. While the changes in this file are consistent, please ensure that:

  1. All files that import or use these renamed classes have been updated
  2. The migration doesn't break existing API contracts or client code
  3. Related test files have been updated accordingly

🏁 Script executed:

#!/bin/bash
# Description: Verify that all AL* to KMCore* class references have been updated consistently across the codebase

echo "=== Checking for any remaining AL-prefixed class references that should be KMCore ==="
rg -A 3 -B 3 "AL(Channel|Message|Conversation|Json|DBHandler)" --type objc

echo "=== Verifying KMCore class usage is consistent ==="
rg -A 3 "KMCore(Channel|Message|Conversation|Json|DBHandler)" --type objc | head -20

echo "=== Checking for mixed usage that might indicate incomplete migration ==="
rg -A 5 -B 5 "(ALChannel.*KMCore|KMCore.*ALChannel)" --type objc

Length of output: 9242


Fix remaining AL-prefixed service references

It looks like some AL* services weren’t updated to their KMCore counterparts. Please update the following:

• Sources/corekit/KommunicateClient.m

  • Replace ALAttachmentServiceKMCoreAttachmentService
  • Replace ALUserServiceKMCoreUserService

• Example/KommunicateCore-iOS-SDK/KMViewController.m

  • Replace ALMessageServiceKMCoreMessageService
  • Replace ALUserDefaultsHandlerKMCoreUserDefaultsHandler
  • Any other AL* imports in this example should be switched to KMCore*

Also ensure that all related imports (e.g. #import "ALAttachmentService.h") are updated to their new headers and that any tests or sample code reflect these changes.

🧹 Nitpick comments (14)
Sources/message/MessageListRequest.m (1)

12-12: Remove unused import of KMCoreChannel
The KMCoreChannel.h import isn’t referenced in this implementation (the code only uses primitive types like channelKey), so it can be safely removed to reduce unnecessary dependencies and improve compilation times.

Sources/JWT/user/ALContactService.m (1)

11-11: Remove unused import of KMCoreDBHandler
KMCoreDBHandler.h does not appear to be used in this file (all DB interactions go through ALContactDBService), so this import can be removed to clean up unused dependencies.

Sources/include/KMCoreMessageBuilder.h (1)

12-12: Consider adding nullability annotations.
To improve Swift interoperability and communicate intent, you might wrap the interface in NS_ASSUME_NONNULL_BEGIN/END, and annotate properties with nullable/nonnull where appropriate.

Sources/include/ALSyncMessageFeed.h (1)

10-12: Migrated to KMCoreJson
The import and superclass declaration are updated correctly. For stronger type safety, consider using Objective-C generics on your mutable arrays (e.g., NSMutableArray<KMCoreMessage *> *messagesList and NSMutableArray<NSString *> *deliveredMessageKeys) in a follow-up refactor.

Sources/channel/KMCoreChannelCreateResponse.m (2)

2-2: Mismatch between file name and header comment
The header comment states KMCoreChannelResponse.m but the file name is KMCoreChannelCreateResponse.m. Please update the comment to reflect the correct file name.


20-21: Rename response property for consistency
The property alChannel retains the old AL prefix despite the class being renamed to KMCoreChannelCreateResponse. Consider renaming this property to channel or kmCoreChannel for consistency across the codebase.

Sources/networkcommunication/ALAppLocalNotifications.m (1)

12-18: Clean up duplicate import statement.

There's a duplicate import of KMCoreMessageService.h on lines 13 and 15. Please remove one of them to clean up the imports.

 #import "KMCoreMessageDBService.h"
 #import "KMCoreMessageService.h"
 #import "KMCoreUserDefaultsHandler.h"
-#import "KMCoreMessageService.h"
 #import "ALUserService.h"
Sources/JWT/user/ALUserService.m (1)

16-25: Import statements systematically updated for message services.

The imports have been correctly updated to use the new KMCore* prefixed classes:

  • ALMessageDBService.hKMCoreMessageDBService.h
  • ALMessageList.hKMCoreMessageList.h
  • ALMessageClientService.hKMCoreMessageClientService.h
  • ALMessageService.hKMCoreMessageService.h

Note: There's a duplicate import of KMCoreMessageDBService.h on lines 16 and 25.

Consider removing the duplicate import:

-#import "KMCoreMessageDBService.h"
Sources/corekit/ALAttachmentService.m (2)

53-53: Variable naming inconsistency.

The variable alMessageDbService uses the old al prefix while the type is correctly updated to KMCoreMessageDBService.

-    KMCoreMessageDBService *alMessageDbService = [[KMCoreMessageDBService alloc]init];
+    KMCoreMessageDBService *messageDbService = [[KMCoreMessageDBService alloc]init];

And update the usage on line 88:

-    [httpManager processUploadFileForMessage:[alMessageDbService createMessageEntity:dbMessage] uploadURL:responseUrl];
+    [httpManager processUploadFileForMessage:[messageDbService createMessageEntity:dbMessage] uploadURL:responseUrl];

94-94: Method signatures correctly updated but parameter naming inconsistent.

The method signatures have been properly updated to use KMCoreMessage, but the parameter names still use alMessage which is inconsistent with the new naming convention.

Consider updating parameter names for consistency:

- (void)downloadMessageAttachment:(KMCoreMessage *)alMessage withDelegate:(id<KommunicateAttachmentDelegate>)attachmentProgressDelegate;
- (void)downloadImageThumbnail:(KMCoreMessage *)alMessage withDelegate:(id<KommunicateAttachmentDelegate>)attachmentProgressDelegate;

Should become:

- (void)downloadMessageAttachment:(KMCoreMessage *)message withDelegate:(id<KommunicateAttachmentDelegate>)attachmentProgressDelegate;
- (void)downloadImageThumbnail:(KMCoreMessage *)message withDelegate:(id<KommunicateAttachmentDelegate>)attachmentProgressDelegate;

Also applies to: 102-102

Sources/conversation/KMCoreConversationService.m (3)

37-37: Method signatures updated but inconsistent variable naming.

The method signatures have been properly updated to use KMCore* types, but the variable names and parameter names still use the old al prefix (e.g., alConversationProxy).

For consistency, consider updating variable and parameter names:

- (KMCoreConversationProxy *)getConversationByKey:(NSNumber *)conversationKey;
- (KMCoreConversationProxy *)convertAlConversationProxy:(DB_ConversationProxy *)dbConversation;
- (void)createConversation:(KMCoreConversationProxy *)alConversationProxy
            withCompletion:(void(^)(NSError *error, KMCoreConversationProxy *proxy))completion;

Should use consistent naming like conversationProxy instead of alConversationProxy.

Also applies to: 56-56, 114-115


58-64: Variable naming inconsistency in method implementation.

The variable alConversationProxy uses the old naming convention while the type is correctly updated to KMCoreConversationProxy.

-    KMCoreConversationProxy *alConversationProxy = [[KMCoreConversationProxy alloc]init];
+    KMCoreConversationProxy *conversationProxy = [[KMCoreConversationProxy alloc]init];

And update all references to this variable throughout the method.


132-132: Logging message contains outdated class name.

The logging message still references the old class name KMCoreConversationService instead of reflecting the current context properly.

The logging message is already using the correct class name, but ensure consistency across all log messages in the file.

Sources/message/KMCoreMessageServiceWrapper.m (1)

2-2: Fix the file header comment to match the actual filename.

The header comment shows KMCoreMessageWrapper.m but the actual filename is KMCoreMessageServiceWrapper.m. This should be corrected for consistency.

-//  KMCoreMessageWrapper.m
+//  KMCoreMessageServiceWrapper.m
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 30c59db and e00494f.

📒 Files selected for processing (107)
  • Sources/JWT/user/ALContactDBService.m (17 hunks)
  • Sources/JWT/user/ALContactService.m (1 hunks)
  • Sources/JWT/user/ALUserService.m (6 hunks)
  • Sources/JWT/user/KMCoreMessageInfo.m (1 hunks)
  • Sources/JWT/user/KMCoreMessageInfoResponse.m (2 hunks)
  • Sources/account/ALRegisterUserClientService.m (2 hunks)
  • Sources/channel/KMCoreChannel.m (2 hunks)
  • Sources/channel/KMCoreChannelClientService.m (20 hunks)
  • Sources/channel/KMCoreChannelCreateResponse.m (1 hunks)
  • Sources/channel/KMCoreChannelDBService.m (46 hunks)
  • Sources/channel/KMCoreChannelFeed.m (3 hunks)
  • Sources/channel/KMCoreChannelFeedResponse.m (1 hunks)
  • Sources/channel/KMCoreChannelInfo.m (1 hunks)
  • Sources/channel/KMCoreChannelInfoModel.m (1 hunks)
  • Sources/channel/KMCoreChannelOfTwoMetaData.m (1 hunks)
  • Sources/channel/KMCoreChannelResponse.m (1 hunks)
  • Sources/channel/KMCoreChannelService.m (43 hunks)
  • Sources/channel/KMCoreChannelSyncResponse.m (3 hunks)
  • Sources/channel/KMCoreChannelUser.m (1 hunks)
  • Sources/channel/KMCoreChannelUserX.m (1 hunks)
  • Sources/commons/KMCoreJson.m (2 hunks)
  • Sources/conversation/KMCoreConversationClientService.m (2 hunks)
  • Sources/conversation/KMCoreConversationCreateResponse.m (2 hunks)
  • Sources/conversation/KMCoreConversationDBService.m (7 hunks)
  • Sources/conversation/KMCoreConversationProxy.m (2 hunks)
  • Sources/conversation/KMCoreConversationService.m (8 hunks)
  • Sources/corekit/ALAttachmentService.m (5 hunks)
  • Sources/corekit/ALConversationListRequest.m (1 hunks)
  • Sources/corekit/ALMQTTConversationService.m (14 hunks)
  • Sources/corekit/ALMessageBuilder.m (1 hunks)
  • Sources/corekit/KommunicateClient.m (12 hunks)
  • Sources/database/KMCoreDBHandler.m (2 hunks)
  • Sources/include/ALAPIResponse.h (1 hunks)
  • Sources/include/ALAppLocalNotifications.h (1 hunks)
  • Sources/include/ALAttachmentService.h (2 hunks)
  • Sources/include/ALChannelFeed.h (0 hunks)
  • Sources/include/ALContact.h (1 hunks)
  • Sources/include/ALContactsResponse.h (1 hunks)
  • Sources/include/ALConversationService.h (0 hunks)
  • Sources/include/ALDownloadTask.h (1 hunks)
  • Sources/include/ALFileMetaInfo.h (1 hunks)
  • Sources/include/ALGroupUser.h (1 hunks)
  • Sources/include/ALHTTPManager.h (2 hunks)
  • Sources/include/ALLastSeenSyncFeed.h (1 hunks)
  • Sources/include/ALMQTTConversationService.h (2 hunks)
  • Sources/include/ALMuteRequest.h (1 hunks)
  • Sources/include/ALNotificationView.h (1 hunks)
  • Sources/include/ALPushNotificationService.h (1 hunks)
  • Sources/include/ALRegistrationResponse.h (1 hunks)
  • Sources/include/ALSearchResultCache.h (1 hunks)
  • Sources/include/ALSendMessageResponse.h (1 hunks)
  • Sources/include/ALSyncCallService.h (2 hunks)
  • Sources/include/ALSyncMessageFeed.h (1 hunks)
  • Sources/include/ALTopicDetail.h (1 hunks)
  • Sources/include/ALUploadTask.h (2 hunks)
  • Sources/include/ALUserDetailListFeed.h (1 hunks)
  • Sources/include/ALUserService.h (4 hunks)
  • Sources/include/ALUtilityClass.h (2 hunks)
  • Sources/include/KMCoreChannel.h (4 hunks)
  • Sources/include/KMCoreChannelClientService.h (6 hunks)
  • Sources/include/KMCoreChannelCreateResponse.h (2 hunks)
  • Sources/include/KMCoreChannelDBService.h (4 hunks)
  • Sources/include/KMCoreChannelFeed.h (1 hunks)
  • Sources/include/KMCoreChannelFeedResponse.h (2 hunks)
  • Sources/include/KMCoreChannelInfo.h (1 hunks)
  • Sources/include/KMCoreChannelInfoModel.h (1 hunks)
  • Sources/include/KMCoreChannelOfTwoMetaData.h (2 hunks)
  • Sources/include/KMCoreChannelResponse.h (3 hunks)
  • Sources/include/KMCoreChannelService.h (20 hunks)
  • Sources/include/KMCoreChannelSyncResponse.h (2 hunks)
  • Sources/include/KMCoreChannelUser.h (1 hunks)
  • Sources/include/KMCoreChannelUserX.h (3 hunks)
  • Sources/include/KMCoreConversationClientService.h (2 hunks)
  • Sources/include/KMCoreConversationCreateResponse.h (2 hunks)
  • Sources/include/KMCoreConversationDBService.h (2 hunks)
  • Sources/include/KMCoreConversationListRequest.h (2 hunks)
  • Sources/include/KMCoreConversationProxy.h (2 hunks)
  • Sources/include/KMCoreConversationService.h (1 hunks)
  • Sources/include/KMCoreDBHandler.h (3 hunks)
  • Sources/include/KMCoreJson.h (2 hunks)
  • Sources/include/KMCoreMessage.h (3 hunks)
  • Sources/include/KMCoreMessageArrayWrapper.h (2 hunks)
  • Sources/include/KMCoreMessageBuilder.h (2 hunks)
  • Sources/include/KMCoreMessageClientService.h (4 hunks)
  • Sources/include/KMCoreMessageDBService.h (5 hunks)
  • Sources/include/KMCoreMessageInfo.h (1 hunks)
  • Sources/include/KMCoreMessageInfoResponse.h (1 hunks)
  • Sources/include/KMCoreMessageList.h (1 hunks)
  • Sources/include/KMCoreMessageService.h (6 hunks)
  • Sources/include/KMCoreMessageServiceWrapper.h (3 hunks)
  • Sources/include/KMCoreRealTimeUpdate.h (3 hunks)
  • Sources/include/KMCoreUser.h (2 hunks)
  • Sources/include/KMCoreUserDetail.h (1 hunks)
  • Sources/include/KommunicateClient.h (7 hunks)
  • Sources/include/KommunicateCore.h (3 hunks)
  • Sources/message/ALSyncMessageFeed.m (2 hunks)
  • Sources/message/KMCoreMessage.m (4 hunks)
  • Sources/message/KMCoreMessageArrayWrapper.m (10 hunks)
  • Sources/message/KMCoreMessageClientService.m (19 hunks)
  • Sources/message/KMCoreMessageDBService.m (46 hunks)
  • Sources/message/KMCoreMessageList.m (3 hunks)
  • Sources/message/KMCoreMessageService.m (44 hunks)
  • Sources/message/KMCoreMessageServiceWrapper.m (8 hunks)
  • Sources/message/MessageListRequest.m (1 hunks)
  • Sources/networkcommunication/ALAppLocalNotifications.m (3 hunks)
  • Sources/networkcommunication/ALHTTPManager.m (11 hunks)
  • Sources/networkcommunication/ALVideoUploadManager.h (2 hunks)
⛔ Files not processed due to max files limit (7)
  • Sources/networkcommunication/ALVideoUploadManager.m
  • Sources/notification/ALNotificationView.m
  • Sources/push/ALPushAssist.m
  • Sources/push/ALPushNotificationService.m
  • Sources/sync/ALSyncCallService.m
  • Sources/utilities/ALSearchResultCache.m
  • Sources/utilities/ALUtilityClass.m
💤 Files with no reviewable changes (2)
  • Sources/include/ALChannelFeed.h
  • Sources/include/ALConversationService.h
🔇 Additional comments (262)
Sources/include/ALAppLocalNotifications.h (1)

11-11: Update import to KMCoreMessageService
The import has been correctly updated from ALMessageService.h to KMCoreMessageService.h, aligning with the prefix refactor across messaging services.

Sources/message/ALSyncMessageFeed.m (2)

11-11: Import message model updated to KMCoreMessage
The header import has been updated to KMCoreMessage.h to match the renamed model class.


29-29: Instantiate KMCoreMessage instead of ALMessage
Object creation now uses KMCoreMessage, maintaining consistency with the updated class name.

Sources/include/KMCoreConversationListRequest.h (2)

2-2: Update header comment to new filename
The top-of-file comment now correctly reflects KMCoreConversationListRequest.h instead of the old ALConversationListRequest.h.


13-13: Rename interface to KMCoreConversationListRequest
The @interface declaration was updated to KMCoreConversationListRequest, matching the refactored class name and ensuring API consistency.

Sources/channel/KMCoreChannelResponse.m (1)

2-2: Consistent renaming with no functional impact.
The file header, import statement, and @implementation have been updated from the legacy AlChannelResponse to KMCoreChannelResponse. All references align correctly and no logic has been altered.

Also applies to: 9-9, 11-11

Sources/include/KMCoreMessageBuilder.h (1)

2-2: Prefix update is correct and complete.
The header filename and the class declaration have been renamed from ALMessageBuilder to KMCoreMessageBuilder to match the new core module. All mentions in imports and interface align with the new naming convention.

Also applies to: 12-12

Sources/channel/KMCoreChannelInfo.m (1)

2-2: Rename matches the new core namespace.
The file header comment, import, and @implementation have been updated from ALChannelInfo to KMCoreChannelInfo consistently. No functional changes were introduced.

Also applies to: 9-9, 11-11

Sources/include/KMCoreJson.h (1)

2-2: Core JSON class renamed correctly.
The header filename and @interface have been updated from ALJson to KMCoreJson, with no changes to method signatures or behavior.

Also applies to: 11-11

Sources/include/ALContact.h (1)

10-10: LGTM: Consistent superclass migration to KMCoreJson.

The import and superclass updates correctly align with the broader refactoring from ALJson to KMCoreJson. This follows the expected pattern for the core class migration.

Also applies to: 14-14

Sources/include/KMCoreUser.h (1)

11-11: LGTM: Proper dependency update for KMCoreUser.

The import and superclass updates correctly transition from ALJson to KMCoreJson, maintaining consistency with the new naming convention that KMCoreUser already follows.

Also applies to: 42-42

Sources/include/ALMuteRequest.h (1)

9-9: LGTM: Consistent core dependency migration.

The import and superclass updates correctly align with the migration from ALJson to KMCoreJson, following the established pattern for this phase of the refactoring.

Also applies to: 11-11

Sources/include/ALFileMetaInfo.h (1)

11-11: LGTM: Consistent JSON base class migration.

The import and superclass updates properly transition from ALJson to KMCoreJson, maintaining the established pattern for updating core dependencies in this migration phase.

Also applies to: 14-14

Sources/include/ALPushNotificationService.h (1)

50-50:

✅ Verification successful

LGTM: Message dependency updated to KMCoreMessage.

The import correctly transitions from ALMessage.h to KMCoreMessage.h, aligning with the broader migration from AL* to KMCore* prefixed classes.

Consider verifying that all ALMessage references have been consistently updated across the codebase to ensure the migration is complete:


🏁 Script executed:

#!/bin/bash
# Description: Check for any remaining ALMessage references that might need updating
# Expected: Only intentional references should remain (like in comments or deprecated code)

echo "Searching for remaining ALMessage references..."
rg -i "ALMessage" --type objc -A 2 -B 2

echo -e "\nSearching for ALMessage import statements..."
rg '#import.*ALMessage' --type objc

Length of output: 119577


No remaining ALMessage imports detected—migration complete.

Verified across the Objective-C files with:

rg '#import.*ALMessage' --type objc

– no instances of #import "ALMessage.h" remain. All message class dependencies now correctly use KMCoreMessage.

Sources/include/ALRegistrationResponse.h (2)

10-10: Import updated to KMCoreJson

The import statement now correctly references the renamed JSON base class.


12-12: Verify class naming consistency

The superclass has been updated to KMCoreJson, but the interface still uses the AL prefix. Should this be renamed to KMCoreRegistrationResponse to align with the broader namespace migration?

Sources/include/KMCoreUserDetail.h (1)

11-13: Updated base class to KMCoreJson

The import and superclass declaration have been updated from ALJson to KMCoreJson as intended.

Sources/include/ALContactsResponse.h (2)

9-9: Import updated to KMCoreJson

The import statement now aligns with the new JSON base class.


11-11: Verify class naming consistency

The interface now inherits from KMCoreJson but retains the AL prefix. Should this class be renamed to KMCoreContactsResponse for consistency?

Sources/corekit/ALMessageBuilder.m (1)

9-11: Renamed class to KMCoreMessageBuilder

The import and implementation have been correctly updated to KMCoreMessageBuilder. All references here look good.

Sources/include/ALTopicDetail.h (2)

10-10: Import updated to KMCoreJson

Updated the import to reference KMCoreJson for the JSON base class.


18-18: Verify class naming consistency

The superclass is now KMCoreJson, but the class name still has the AL prefix. Should this be renamed to KMCoreTopicDetail?

Sources/include/ALAPIResponse.h (2)

10-10: Consistent import update
The legacy ALJson.h import has been correctly replaced with "KMCoreJson.h", aligning this model with the new JSON base class.


15-15: Superclass updated
Changing @interface ALAPIResponse : KMCoreJson ensures this response model inherits from the correct KMCoreJson base type. Please verify that the corresponding .m file has also been updated to import and reference KMCoreJson.

Sources/include/ALUserDetailListFeed.h (1)

9-11: Superclass refactor applied
The import and superclass change from ALJson to KMCoreJson correctly integrate this feed into the new core JSON model hierarchy. Ensure that any JSON-parsing methods overridden from ALJson behave identically under KMCoreJson.

Sources/include/ALLastSeenSyncFeed.h (1)

11-13: Update to KMCoreJson base
The import and interface declaration now reference KMCoreJson, matching the overall migration strategy. Double-check for any residual dependencies on ALJson methods in the implementation.

Sources/commons/KMCoreJson.m (4)

2-2: Header updated to reflect the new filename.
The file comment now matches KMCoreJson.m instead of the old ALJson.m.


9-9: Import updated to new prefix.
Replaced #import "ALJson.h" with #import "KMCoreJson.h".


14-14: Class implementation renamed to new prefix.
Changed @implementation ALJson to @implementation KMCoreJson.


72-72: Exception log updated with new class name.
The log now references KMCoreJson instead of ALJson.

Sources/include/ALSendMessageResponse.h (2)

14-14: Import updated to new base JSON class.
Replaced #import "ALJson.h" with #import "KMCoreJson.h".


16-16: Superclass updated to KMCoreJson.
Changed inheritance from ALJson to KMCoreJson.

Sources/channel/KMCoreChannelInfoModel.m (3)

2-2: Header updated to reflect new filename.
The file comment now shows KMCoreChannelInfoModel.m.


9-9: Import updated to new header name.
Replaced any old import with #import "KMCoreChannelInfoModel.h".


12-12: Class implementation renamed.
Changed @implementation AlChannelInfoModel to @implementation KMCoreChannelInfoModel.

Sources/channel/KMCoreChannelUserX.m (3)

2-2: Header updated to new filename.
The file comment now reflects KMCoreChannelUserX.m.


9-9: Import updated to new class name.
Replaced #import "ALChannelUserX.h" with #import "KMCoreChannelUserX.h".


11-11: Class implementation renamed.
Changed @implementation ALChannelUserX to @implementation KMCoreChannelUserX.

Sources/JWT/user/KMCoreMessageInfo.m (3)

2-2: Header updated with new filename.
The file comment now shows KMCoreMessageInfo.m.


9-9: Import updated to new class header.
Replaced #import "ALMessageInfo.h" with #import "KMCoreMessageInfo.h".


11-11: Class implementation renamed to new prefix.
Changed @implementation ALMessageInfo to @implementation KMCoreMessageInfo.

Sources/channel/KMCoreChannelUser.m (3)

2-2: Header comment updated to match new filename.
The file header now correctly references KMCoreChannelUser.m, ensuring clarity and consistency.


9-9: Import statement updated for renamed class.
Replaced the legacy ALChannelUser.h import with KMCoreChannelUser.h, aligning with the new prefix.


11-11: Implementation declaration reflects new class name.
The @implementation now correctly uses KMCoreChannelUser, maintaining consistency across the codebase.

Sources/include/ALUploadTask.h (2)

10-10: Import updated to use KMCoreMessage.
Swapped out ALMessage.h for KMCoreMessage.h to reference the renamed message model.


20-20: Property type aligned with refactor.
The message property now uses KMCoreMessage * instead of ALMessage *, matching the updated class names.

Sources/include/KMCoreChannelUser.h (3)

2-2: Header comment reflects new file name.
Updated to KMCoreChannelUser.h, keeping documentation in sync with the refactor.


9-9: Import updated to new JSON base class.
Replaced ALJson.h with KMCoreJson.h, ensuring the correct superclass is imported.


11-11: Class declaration updated to new prefix.
The interface now declares KMCoreChannelUser : KMCoreJson, reflecting the renamed class and base class.

Sources/include/ALDownloadTask.h (2)

10-10: Import switched to KMCoreMessage.h.
Aligns the download task with the renamed message class.


18-18: Message property updated to new type.
Changed from ALMessage * to KMCoreMessage * for consistency with the refactor.

Sources/include/KMCoreChannelInfo.h (3)

2-2: Header comment updated to new filename.
Reflects the rename to KMCoreChannelInfo.h.


10-10: Import updated to KMCoreJson.h.
Replaces the legacy ALJson.h import to use the new superclass.


12-12: Interface declaration updated.
@interface KMCoreChannelInfo : KMCoreJson correctly represents the renamed class and base class.

Sources/include/KMCoreMessageList.h (3)

2-2: Header updated to KMCoreMessageList.h
The file header comment correctly reflects the renamed class.


10-10: Import updated to KMCoreJson
The superclass import has been correctly updated from ALJson.h to KMCoreJson.h.


13-13: Class renamed to KMCoreMessageList
The interface declaration has been updated to the new KMCoreMessageList subclass of KMCoreJson as intended.

Sources/channel/KMCoreChannel.m (6)

2-2: Filename updated to KMCoreChannel.m
The file header comment now correctly names KMCoreChannel.m.


9-10: Imports renamed to KMCore classes
Both #import "KMCoreChannel.h" and #import "KMCoreChannelUser.h" replace their old AL* counterparts.


14-18: Class declaration and implementation renamed
The @interface and @implementation blocks have been updated from ALChannel to KMCoreChannel, preserving existing functionality.


58-58: Channel user instantiation updated
Replaced ALChannelUser instantiation with KMCoreChannelUser, aligning with the new naming convention.


65-65: Category lookup using KMCoreChannel
The call to getConversationCategory: now correctly references the KMCoreChannel class.


72-72: Parent key lookup uses KMCoreChannelUser
Loop signature now iterates over KMCoreChannelUser instances instead of the old class.

Sources/include/KMCoreDBHandler.h (3)

2-2: Header updated to KMCoreDBHandler.h
The file header comment reflects the renamed database handler class.


14-14: Interface renamed to KMCoreDBHandler
Updated the singleton class interface from ALDBHandler to KMCoreDBHandler.


24-24: sharedInstance signature updated
The class method now correctly returns a KMCoreDBHandler instance.

Sources/include/KMCoreChannelUserX.h (3)

2-2: Header updated to KMCoreChannelUserX.h
The file header comment now matches the renamed class.


11-11: Import updated to KMCoreJson
Superclass import changed from ALJson.h to KMCoreJson.h.


24-24: Interface renamed to KMCoreChannelUserX
The subclass declaration correctly reflects the new class name and superclass.

Sources/include/KMCoreMessageInfo.h (3)

2-2: Header updated to KMCoreMessageInfo.h
The file header comment correctly names the updated class.


10-10: Import updated to KMCoreJson
Superclass import has been updated from ALJson.h to KMCoreJson.h.


12-12: Interface renamed to KMCoreMessageInfo
The class declaration now extends KMCoreJson under the new name.

Sources/JWT/user/ALContactDBService.m (2)

10-10: Update import to KMCoreDBHandler
Replaced the legacy ALDBHandler.h import with KMCoreDBHandler.h to align with the new DB handler class.


39-39: Refactor instantiation to use KMCoreDBHandler
All occurrences of obtaining the shared DB handler instance have been updated from ALDBHandler to KMCoreDBHandler, ensuring consistency across database operations.

Also applies to: 74-74, 128-128, 207-207, 300-300, 371-371, 447-447, 479-479, 496-496, 521-521, 562-562, 588-588, 627-627, 707-707, 726-726, 764-764

Sources/include/KMCoreChannelInfoModel.h (3)

10-10: Update JSON base class import
Replaced the legacy ALJson.h import with KMCoreJson.h to use the new JSON serialization base class.


11-11: Update channel response import
Replaced AlChannelResponse.h with KMCoreChannelResponse.h to align with the renamed channel response class.


13-13: Rename class to KMCoreChannelInfoModel and inherit from KMCoreJson
The interface has been updated to KMCoreChannelInfoModel : KMCoreJson, matching the new naming convention and base class.

Sources/account/ALRegisterUserClientService.m (3)

13-13: Import new message DB service
Added import for KMCoreMessageDBService to replace the legacy ALMessageDBService dependency.


16-16: Import new message service
Added import for KMCoreMessageService to replace the legacy ALMessageService dependency.


471-473: Use KMCoreMessageDBService to clear local DB
Replaced ALMessageDBService usage with KMCoreMessageDBService to delete all Core Data objects, maintaining the logout flow.

Sources/include/KMCoreChannelFeed.h (3)

9-11: Add new header for KMCoreChannelFeed
Imported KMCoreJson and KMCoreChannel to support the new KMCoreChannelFeed class.


13-13: Define KMCoreChannelFeed interface
Introduced KMCoreChannelFeed inheriting from KMCoreJson to replace the legacy ALChannelFeed model.


15-17: Declare channel feed and conversation proxy lists
Added channelFeedsList and conversationProxyList properties typed to KMCoreChannel, aligning with the new naming and model structure.

Sources/channel/KMCoreChannelCreateResponse.m (1)

9-9: Update import to match new class name
Import is correctly updated to KMCoreChannelCreateResponse.h.

Sources/database/KMCoreDBHandler.m (4)

2-2: File header updated to match new class name
The file header comment correctly reflects KMCoreDBHandler.m, aligning with the renamed class.


9-12: Imports updated for the renamed DB handler
The import of "KMCoreDBHandler.h" and "KMCoreSettings.h" replaces the old references, ensuring the implementation uses the new class and settings definitions.


14-17: Singleton implementation renamed
The @implementation and +sharedInstance method have been updated to KMCoreDBHandler, with the static instance type changed accordingly. This preserves the singleton pattern under the new class name.


337-337: Bundle lookup updated for the new class prefix
The getBundle method now uses [NSBundle bundleForClass:[KMCoreDBHandler class]], replacing the old AL class reference, which ensures resources are loaded correctly for the renamed module.

Sources/include/KMCoreChannelFeedResponse.h (3)

2-2: File header updated to match new class name
The comment now reflects KMCoreChannelFeedResponse.h, matching the renamed response class.


11-11: Import updated for the renamed channel model
The header now imports "KMCoreChannel.h" instead of the old ALChannel.


13-13: Class name updated to KMCoreChannelFeedResponse
The interface name has been correctly renamed from the legacy AlChannelFeedResponse to KMCoreChannelFeedResponse.

Sources/channel/KMCoreChannelOfTwoMetaData.m (4)

2-2: File header updated to match new class name
The comment header now correctly identifies KMCoreChannelOfTwoMetaData.m.


9-9: Import updated for the renamed metadata class
The implementation now imports "KMCoreChannelOfTwoMetaData.h", replacing the old ALChannelOfTwoMetaData.


11-11: Implementation renamed to KMCoreChannelOfTwoMetaData
The @implementation directive has been updated to the new class name, preserving functionality.


13-13: Method signature updated to use new type
The toDict: method parameter now correctly uses KMCoreChannelOfTwoMetaData, aligning with the renamed class.

Sources/message/KMCoreMessageList.m (5)

2-2: File header updated to match new class name
The file header comment now reflects KMCoreMessageList.m, matching the renamed message list class.


9-10: Imports updated to KMCore prefixes
The file now imports "KMCoreMessageList.h", "KMCoreMessage.h", and "KMCoreChannel.h", replacing legacy AL* references.

Also applies to: 12-12


16-16: Implementation renamed to KMCoreMessageList
The @implementation has been correctly updated to the new class name.


45-45: Message initialization updated to new class
The loop now instantiates KMCoreMessage instead of ALMessage, matching the refactoring across the messaging module.


60-60: Conversation proxy initialization updated
The code now correctly creates instances of KMCoreConversationProxy rather than the legacy ALConversationProxy.

Sources/include/KMCoreChannelOfTwoMetaData.h (3)

2-2: File header updated to match new class name
The header comment now correctly identifies KMCoreChannelOfTwoMetaData.h.


11-11: Class name updated to KMCoreChannelOfTwoMetaData
The interface declaration has been renamed from ALChannelOfTwoMetaData to KMCoreChannelOfTwoMetaData.


15-15: Method signature updated to new type
The toDict: method now takes a KMCoreChannelOfTwoMetaData parameter, aligning with the renamed class.

Sources/include/KMCoreChannelCreateResponse.h (4)

2-2: LGTM: File header updated correctly.

The file header comment has been properly updated to reflect the new filename.


11-11: LGTM: Import statement updated correctly.

The import has been properly updated from ALChannel.h to KMCoreChannel.h to match the new naming convention.


13-13: LGTM: Class name updated correctly.

The class has been properly renamed from ALChannelCreateResponse to KMCoreChannelCreateResponse following the new naming convention.


15-15:

❌ Incorrect review comment

Consider updating property name for consistency.

While the property type has been correctly updated to KMCoreChannel *, the property name alChannel still references the old "AL" prefix. For better consistency and to avoid confusion, consider renaming it to channel or coreChannel.

-@property (nonatomic, strong) KMCoreChannel *alChannel;
+@property (nonatomic, strong) KMCoreChannel *channel;

Let me verify if this property is used elsewhere in the codebase to assess the impact of this change:


🏁 Script executed:

#!/bin/bash
# Description: Check usage of alChannel property to assess refactoring impact
# Expected: Find all references to this property across the codebase

rg -A 3 -B 3 "alChannel" --type=m --type=h

Length of output: 68


I’ll re-run the search across Objective-C and Swift sources to catch all references:


🏁 Script executed:

#!/bin/bash
# Search for occurrences of alChannel across .m, .h, and .swift files
rg -n "alChannel" --glob '*.m' --glob '*.h' --glob '*.swift'

Length of output: 25754


Ignore the local rename suggestion for alChannel
The alChannel identifier is pervasive across the public API and internal implementation (dozens of usages in both .h and .m files). Renaming this single property would break existing references and consumers. The “al” prefix is an established convention here, so it should remain unchanged.

Likely an incorrect or invalid review comment.

Sources/include/KMCoreConversationCreateResponse.h (3)

2-2: LGTM: File header updated correctly.

The file header comment has been properly updated to reflect the new filename.


11-11: LGTM: Import statement updated correctly.

The import has been properly updated from ALConversationProxy.h to KMCoreConversationProxy.h to match the new naming convention.


13-13: LGTM: Class name updated correctly.

The class has been properly renamed from ALConversationCreateResponse to KMCoreConversationCreateResponse following the new naming convention.

Sources/channel/KMCoreChannelFeed.m (5)

2-2: LGTM: File header updated correctly.

The file header comment has been properly updated to reflect the new filename.


9-10: LGTM: Import statements updated correctly.

The imports have been properly updated to use the new KMCore prefixed headers.


12-12: LGTM: Class implementation updated correctly.

The class implementation has been properly updated to KMCoreChannelFeed following the new naming convention.


23-23: LGTM: Object instantiation updated correctly.

The ALChannel instantiation has been properly updated to KMCoreChannel while maintaining the same initialization logic.


32-32: LGTM: Object instantiation updated correctly.

The ALConversationProxy instantiation has been properly updated to KMCoreConversationProxy while maintaining the same initialization logic.

Sources/include/KMCoreChannel.h (4)

2-2: LGTM: File header updated correctly.

The file header comment has been properly updated to reflect the new filename.


11-12: LGTM: Import statements updated correctly.

The imports have been properly updated to use the new KMCore prefixed headers.


47-47: LGTM: Class declaration updated correctly.

The class has been properly renamed from ALChannel to KMCoreChannel and the superclass correctly updated from ALJson to KMCoreJson.


61-61: LGTM: Property type updated correctly.

The conversationProxy property type has been properly updated to KMCoreConversationProxy * to match the new naming convention.

Sources/include/ALUtilityClass.h (2)

10-10: LGTM: Import statement correctly updated.

The import statement has been properly updated from ALMessage.h to KMCoreMessage.h to align with the class rename.


33-35: LGTM: Method signatures correctly updated.

The method parameter types have been properly updated from ALMessage * to KMCoreMessage * to maintain consistency with the renamed class.

Sources/include/ALSyncCallService.h (2)

10-10: LGTM: Import statement correctly updated.

The import statement has been properly updated from ALMessage.h to KMCoreMessage.h, maintaining consistency with other KMCore imports already present in the file.


20-22: LGTM: Method signatures correctly updated.

Both syncCall: method signatures have been properly updated to use KMCoreMessage * parameters instead of ALMessage *, ensuring type consistency throughout the refactoring.

Sources/include/KMCoreMessageInfoResponse.h (4)

2-2: LGTM: File header comment correctly updated.

The file header comment has been properly updated to reflect the new filename KMCoreMessageInfoResponse.h.


9-9: LGTM: Import statement correctly updated.

The import statement has been properly updated from ALMessageInfo.h to KMCoreMessageInfo.h to match the renamed dependency.


12-12: LGTM: Interface name correctly renamed.

The interface has been properly renamed from ALMessageInfoResponse to KMCoreMessageInfoResponse, maintaining inheritance from ALAPIResponse.


14-14: LGTM: Property type correctly updated.

The msgInfoList property type has been properly updated to use KMCoreMessageInfo * objects instead of ALMessageInfo *, ensuring type consistency.

Sources/JWT/user/KMCoreMessageInfoResponse.m (4)

2-2: LGTM: File header comment correctly updated.

The file header comment has been properly updated to reflect the new filename KMCoreMessageInfoResponse.m.


9-9: LGTM: Import statement correctly updated.

The import statement has been properly updated to import the renamed header file KMCoreMessageInfoResponse.h.


11-11: LGTM: Implementation class name correctly updated.

The @implementation directive has been properly updated to match the renamed class KMCoreMessageInfoResponse.


22-22: LGTM: Object instantiation correctly updated.

The object creation has been properly updated to instantiate KMCoreMessageInfo instead of ALMessageInfo, maintaining consistency with the refactoring while preserving the original logic.

Sources/channel/KMCoreChannelFeedResponse.m (1)

2-2:

✅ Verification successful

LGTM! Systematic renaming from AL to KMCore is consistent.**

The refactoring correctly updates all references from the legacy AL* prefix to the new KMCore* prefix, including the filename, imports, class declaration, and object instantiation. The logic remains unchanged.

Let me verify that all references to the old class names have been updated throughout the codebase:

Also applies to: 9-10, 14-14, 22-22


🏁 Script executed:

#!/bin/bash
# Description: Check for any remaining references to old AL* class names that could cause compilation errors

echo "Checking for remaining ALChannelFeedResponse references..."
rg -i "ALChannelFeedResponse" --type objc

echo "Checking for remaining AlChannelFeedResponse references..."
rg -i "AlChannelFeedResponse" --type objc

echo "Checking for remaining ALChannelCreateResponse references..."
rg -i "ALChannelCreateResponse" --type objc

echo "Checking for remaining ALChannel references (excluding specific exceptions)..."
rg -i "ALChannel\s" --type objc

Length of output: 5341


No remaining AL class name references in the codebase*
All class‐level renames from AL*KMCore* have been applied in our Sources directory. The only ALChannelFeedResponse and ALChannelCreateResponse imports appear in the Pods umbrella header under Example/Pods/..., which is external to our module and not affected by this PR. Local variables named alChannel are intentional and don’t require renaming. LGTM.

Sources/conversation/KMCoreConversationCreateResponse.m (1)

2-2:

✅ Verification successful

LGTM! Conversation class renaming is consistent and complete.

The refactoring properly updates all conversation-related class references from AL* to KMCore* prefix, maintaining the existing initialization logic and error handling.

Let me verify that all conversation-related AL* references have been updated:

Also applies to: 9-9, 11-11, 20-20


🏁 Script executed:

#!/bin/bash
# Description: Check for any remaining references to old conversation AL* class names

echo "Checking for remaining ALConversationCreateResponse references..."
rg -i "ALConversationCreateResponse" --type objc

echo "Checking for remaining ALConversationProxy references..."
rg -i "ALConversationProxy" --type objc

echo "Checking for remaining ALConversation references (general)..."
rg -i "ALConversation" --type objc

Length of output: 16691


All conversation-related AL prefixes have been replaced in Sources/*

Aside from the auto-generated umbrella header under Example/Pods/Target Support Files/KommunicateCore-iOS-SDK/ (which can be ignored), there are no remaining ALConversation* references in the Sources/ directory. The systematic renaming to KMCore* is complete and consistent.

Sources/include/KMCoreChannelResponse.h (1)

2-2: LGTM! Header file renaming is systematic and complete.

The header file correctly updates all class references from AL* to KMCore* prefix, including the interface declaration, inheritance, imports, and property types. The interface contract remains unchanged.

Also applies to: 11-12, 14-14, 24-24

Sources/include/ALNotificationView.h (1)

22-22:

✅ Verification successful

Message type updates are correct, but verify naming consistency.

The property and method parameter types have been correctly updated from ALMessage to KMCoreMessage, which aligns with the systematic refactoring.

However, I notice that this file retains the ALNotificationView class name while updating the message types. Please verify if this is intentional:

Also applies to: 24-24


🏁 Script executed:

#!/bin/bash
# Description: Check if ALNotificationView should also be renamed to maintain consistency

echo "Checking for other AL* classes that might need renaming..."
rg -i "^@interface AL" --type objc -A 1

echo "Checking usage of ALNotificationView..."
rg -i "ALNotificationView" --type objc -C 2

echo "Checking if there are KMCore* notification classes..."
rg -i "KMCore.*[Nn]otification" --type objc

Length of output: 13000


Naming consistency verified for ALNotificationView

The AL-prefix is used uniformly across the UI layer (30+ AL* classes), and no KMCore*NotificationView–style class exists. Keeping ALNotificationView unchanged is intentional and consistent with the module’s naming conventions.

Sources/include/KMCoreConversationDBService.h (4)

2-2: LGTM: File header comment updated correctly.

The file header comment correctly reflects the new filename after the refactoring.


11-11: LGTM: Import statement updated consistently.

The import statement correctly references the renamed header file from ALConversationProxy.h to KMCoreConversationProxy.h.


13-13: LGTM: Class name updated consistently with refactoring.

The class name is correctly updated from ALConversationDBService to KMCoreConversationDBService as part of the systematic AL* to KMCore* refactoring.


17-17: LGTM: Method parameter type updated correctly.

The parameter type in the createConversationProxy: method is correctly updated from ALConversationProxy * to KMCoreConversationProxy *, maintaining type consistency with the refactoring.

Sources/include/KMCoreChannelSyncResponse.h (4)

2-2: LGTM: File header comment updated correctly.

The file header comment properly reflects the new filename after renaming.


11-11: LGTM: Import statement updated consistently.

The import statement correctly references the renamed header from ALChannel.h to KMCoreChannel.h.


13-13: LGTM: Class name updated consistently with refactoring.

The class name is correctly updated from ALChannelSyncResponse to KMCoreChannelSyncResponse while maintaining inheritance from ALAPIResponse.


17-17: LGTM: Property type updated correctly.

The alChannel property type is correctly updated from ALChannel * to KMCoreChannel *, maintaining type consistency with the refactoring.

Sources/include/ALSearchResultCache.h (3)

10-10: LGTM: Import statement updated consistently.

The import correctly references the renamed header from ALChannel.h to KMCoreChannel.h.


18-18: LGTM: Method parameter type updated correctly.

The saveChannels: method parameter type is correctly updated from NSMutableArray<ALChannel *> * to NSMutableArray<KMCoreChannel *> *.


21-21: LGTM: Return type updated correctly.

The getChannelWithId: method return type is correctly updated from ALChannel * to KMCoreChannel *.

Sources/networkcommunication/ALAppLocalNotifications.m (3)

91-91: LGTM: Class method call updated correctly.

The static method call is correctly updated from [ALMessageService syncMessages] to [KMCoreMessageService syncMessages].


93-93: LGTM: Instance creation updated correctly.

The instance creation is correctly updated from ALMessageService to KMCoreMessageService.


124-124: LGTM: Class method call updated correctly.

The static method call in the app activation handler is correctly updated to use KMCoreMessageService.

Sources/channel/KMCoreChannelSyncResponse.m (2)

2-2: LGTM! Consistent renaming implementation.

The file name, import statement, and class name have been correctly updated from AL* prefixes to KMCore* prefixes as part of the systematic refactoring.

Also applies to: 9-9, 11-11


23-23: LGTM! Channel object instantiation updated correctly.

All references to ALChannel have been properly updated to KMCoreChannel in the object instantiation code. The logic remains unchanged, ensuring functional consistency.

Also applies to: 36-36, 40-40

Sources/include/KommunicateCore.h (1)

19-32:

❓ Verification inconclusive

Verify the selective import updates are intentional.

The imports have been systematically updated from AL* to KMCore* prefixes for core messaging, channel, conversation, and database handler classes. However, some AL* imports remain unchanged (e.g., ALSyncMessageFeed.h, ALSendMessageResponse.h, etc.).

Please confirm that the selective updating is intentional and that the remaining AL* classes are not part of this refactoring phase.

Also applies to: 53-69, 72-76, 81-81, 115-115


🏁 Script executed:

#!/bin/bash
# Description: Verify which AL* imports remain and check if they should be updated
# Expected: List of remaining AL* imports to confirm selective refactoring approach

echo "Remaining AL* imports in KommunicateCore.h:"
rg '#import "AL.*\.h"' Sources/include/KommunicateCore.h

echo -e "\nUpdated KMCore* imports in KommunicateCore.h:"
rg '#import "KMCore.*\.h"' Sources/include/KommunicateCore.h

Length of output: 2773


Confirm intentional retention of AL imports in KommunicateCore.h*

I’ve verified that alongside the newly added KMCore* headers, the following AL* headers remain in Sources/include/KommunicateCore.h:

• ALSyncMessageFeed.h
• ALSendMessageResponse.h
• ALFileMetaInfo.h
• ALLastSeenSyncFeed.h
• ALMuteRequest.h
• ALSyncCallService.h
• ALRegistrationResponse.h
• ALRegisterUserClientService.h
• ALContact.h
• ALContactService.h
• ALUserService.h
• ALUserDetailListFeed.h
• ALContactDBService.h
• ALContactsResponse.h
• ALUserClientService.h
• ALAPIResponse.h
• ALGroupUser.h
• ALTopicDetail.h
• ALConstant.h
• ALLogger.h
• ALPushNotificationService.h
• ALRequestHandler.h
• ALUtilityClass.h
• ALResponseHandler.h
• ALConnectionQueueHandler.h
• ALDataNetworkConnection.h
• ALAppLocalNotifications.h
• ALMQTTConversationService.h
• ALPushAssist.h
• ALApplicationInfo.h
• ALAuthService.h
• ALAttachmentService.h
• ALAuthClientService.h
• ALDownloadTask.h
• ALHTTPManager.h
• ALUploadTask.h
• ALSearchResultCache.h
• ALNotificationView.h
• ALUIImage+Utility.h
• ALJWT.h

Please confirm that these remaining AL* imports are intentionally excluded from the current prefix-refactor and do not require updating to KMCore*.

Sources/include/KMCoreConversationProxy.h (2)

2-2: LGTM! Header file refactoring is consistent.

The file name, import statement, and class inheritance have been correctly updated from AL* to KMCore* prefixes, maintaining consistency with the overall refactoring effort.

Also applies to: 10-10, 14-14


31-31: LGTM! Method signature updated correctly.

The class method parameter type has been properly updated from ALConversationProxy to KMCoreConversationProxy, ensuring type consistency throughout the refactored codebase.

Sources/include/ALHTTPManager.h (2)

12-12: LGTM! Message type references updated correctly.

The import statement and method signatures have been properly updated to use KMCoreMessage instead of ALMessage, maintaining consistency with the refactored message classes.

Also applies to: 31-31, 33-33


15-15:

❓ Verification inconclusive

Verify if ALHTTPManager class should be renamed.

The class name ALHTTPManager retains the AL prefix while method signatures have been updated to use KMCore* types. Please confirm whether this class should also be renamed to KMCoreHTTPManager for consistency with the overall refactoring effort.


🏁 Script executed:

#!/bin/bash
# Description: Check for other AL-prefixed classes that might need renaming
# Expected: List of remaining AL* classes to verify refactoring scope

echo "Remaining AL* class declarations in header files:"
rg '@interface AL[A-Za-z]+' Sources/include/ -A 1

echo -e "\nAL* classes referenced in the updated files:"
rg 'AL[A-Za-z]+(?=\s|\*|\(|\))' Sources/include/ALHTTPManager.h

Length of output: 5995


Naming consistency: Should ALHTTPManager be renamed to KMCoreHTTPManager?

I ran a search in Sources/include/ and found 45 remaining AL* class declarations (e.g., ALLastSeenSyncFeed, ALUserService, ALUploadTask, …). If the goal is to standardize on the KMCore prefix—given that your method signatures now reference KMCore* types—then:

  • Sources/include/ALHTTPManager.h should be renamed to KMCoreHTTPManager.
  • All other AL* classes should be batch-renamed to KMCore* for consistency.

Otherwise, if the AL prefix is to be retained, please confirm that we’ll keep existing names.
Please confirm the intended naming convention.

Sources/include/KMCoreMessage.h (5)

2-2: LGTM: File name updated consistently with class renaming.

The header file name has been properly updated to reflect the new class name.


10-10: LGTM: Import statements updated consistently.

The import statements have been properly updated to use the new KMCore prefix for dependencies.

Also applies to: 13-13


46-46: LGTM: Class declaration updated with proper inheritance.

The class name and inheritance have been correctly updated to use the KMCore prefix consistently.


16-43:

✅ Verification successful

Verify retention of AL prefix constants is intentional.

The constants still use the AL prefix (e.g., ALMESSAGE_CONTENT_DEFAULT, AL_CATEGORY_PUSHNNOTIFICATION). Please confirm this is intentional for API compatibility or if these should also be renamed to maintain consistency.


🏁 Script executed:

#!/bin/bash
# Description: Check if AL-prefixed constants are used elsewhere in the codebase
# Expected: Usage patterns that might indicate if renaming is needed

echo "=== Searching for usage of AL-prefixed message constants ==="
rg -A 2 -B 2 "ALMESSAGE_CONTENT_|AL_CATEGORY_|AL_MESSAGE_REPLY_|AL_OUT_BOX|AL_IN_BOX"

echo -e "\n=== Checking if any KMCore constants are defined elsewhere ==="
rg -A 2 -B 2 "KMCORE.*CONTENT_|KMCORE.*CATEGORY_"

Length of output: 21569


Retain AL-Prefixed Constants for Compatibility

The AL-prefixed constants (e.g. ALMESSAGE_CONTENT_*, AL_CATEGORY_*, AL_MESSAGE_REPLY_KEY, AL_OUT_BOX/AL_IN_BOX) are referenced throughout corekit, push notification, notification view, message handling, and database service layers. Renaming them would break existing APIs and client integrations. Keeping the AL prefix is intentional to maintain backward compatibility and consistency across modules.


140-141:

✅ Verification successful

Verify the dual method approach is intentional.

Both the old initializer method initWithBuilder: and the new class factory method build: are present. Please confirm if this dual approach is intentional for transition/backward compatibility or if the old method should be removed.


🏁 Script executed:

#!/bin/bash
# Description: Check usage patterns of both methods to understand the transition strategy
# Expected: Usage of both methods or migration patterns

echo "=== Searching for usage of initWithBuilder method ==="
rg -A 3 -B 1 "initWithBuilder.*KMCoreMessageBuilder|initWithBuilder.*ALMessageBuilder"

echo -e "\n=== Searching for usage of build class factory method ==="
rg -A 3 -B 1 "\[KMCoreMessage build:\]|\[ALMessage build:\]"

echo -e "\n=== Checking for any deprecation markers or comments ==="
rg -A 2 -B 2 "deprecated|DEPRECATED|TODO.*remove|FIXME.*remove"

Length of output: 71915


Dual initializer and factory method are intentional

The new +build: factory method is a thin wrapper around the existing -initWithBuilder: initializer. It allocates a builder, invokes the block, and then calls initWithBuilder: under the hood. Keeping both methods allows you to:

  • Expose a convenient, block-based API via +build:.
  • Preserve the core initializer for internal use and backward compatibility.

If you’d like to discourage direct use of -initWithBuilder:, consider annotating it with NS_DEPRECATED or marking it NS_UNAVAILABLE; otherwise, it’s safe to leave both in place.

Sources/conversation/KMCoreConversationDBService.m (4)

2-2: LGTM: File name and imports updated consistently.

The file name and import statements have been properly updated to reflect the new KMCore naming convention.

Also applies to: 9-10, 13-13


20-20: LGTM: Database handler references updated consistently.

All KMCoreDBHandler instances are properly initialized and used consistently throughout the file. The database operations maintain proper error handling.

Also applies to: 35-35, 54-54, 74-74, 93-93, 117-117, 140-140


22-22: LGTM: Conversation proxy type usage updated correctly.

The method parameters and local variables now correctly use KMCoreConversationProxy type, maintaining type safety throughout the database operations.

Also applies to: 37-37, 53-53


26-29: LGTM: Error handling preserved properly.

The error handling for database save operations remains intact and follows good practices with proper logging.

Also applies to: 44-50

Sources/include/KMCoreConversationClientService.h (3)

2-2: LGTM: File name, imports, and class name updated consistently.

The header file has been properly updated to use the new KMCore naming convention throughout.

Also applies to: 11-12, 15-15


18-19: LGTM: Method signature updated with correct KMCore types.

The createConversation:withCompletion: method signature has been properly updated to use KMCoreConversationProxy and KMCoreConversationCreateResponse types.


16-16:

✅ Verification successful

Verify retention of AL-prefixed types is intentional.

The ALResponseHandler property and ALAPIResponse in the completion block are still using the AL prefix. Please confirm if these types are intentionally excluded from the KMCore refactoring or if they should also be updated.

Also applies to: 21-21


🏁 Script executed:

#!/bin/bash
# Description: Check if ALResponseHandler and ALAPIResponse are being refactored elsewhere
# Expected: Pattern of usage to determine if these should be renamed

echo "=== Searching for ALResponseHandler usage and potential KMCore equivalent ==="
rg -A 2 -B 2 "ALResponseHandler|KMCoreResponseHandler"

echo -e "\n=== Searching for ALAPIResponse usage and potential KMCore equivalent ==="
rg -A 2 -B 2 "ALAPIResponse|KMCoreAPIResponse"

echo -e "\n=== Checking if these are defined in separate modules ==="
fd -e h -e m | xargs rg -l "ALResponseHandler|ALAPIResponse" | head -10

Length of output: 69173


Retention of AL-prefixed types is intentional
The investigation shows that ALResponseHandler and ALAPIResponse are part of the shared Applozic SDK and remain intentionally unchanged across KMCore modules (conversation, message, channel, HTTP manager, core client, etc.). No renaming to KMCore–prefixed equivalents is required.

Sources/conversation/KMCoreConversationProxy.m (3)

2-2: LGTM: File name, import, and class implementation updated consistently.

The file has been properly renamed and the implementation uses the correct KMCore class name.

Also applies to: 9-9, 14-14


21-23: LGTM: Method signatures and return types updated correctly.

The method signatures have been properly updated to use KMCoreConversationProxy types while maintaining the same functionality and object creation patterns.

Also applies to: 57-57


35-42: LGTM: Business logic and data handling preserved.

The JSON parsing, data handling, and business logic remain unchanged and correct. The type safety is maintained throughout the implementation.

Also applies to: 44-55, 73-94

Sources/networkcommunication/ALVideoUploadManager.h (3)

11-11: LGTM! Import updated correctly.

The import statement has been properly updated from ALMessage.h to KMCoreMessage.h as part of the systematic refactoring.


23-24: LGTM! Property types updated consistently.

Both message database service and client service property types have been correctly updated to use the new KMCore prefixed classes.


27-27: LGTM! Method signature updated appropriately.

The method parameter type has been correctly changed from ALMessage * to KMCoreMessage * maintaining consistency with the refactoring.

Sources/include/ALMQTTConversationService.h (4)

11-11: LGTM! Import updated correctly.

The import has been properly updated to use KMCoreMessage.h instead of ALMessage.h.


16-16: LGTM! Notification constant renamed appropriately.

The constant has been correctly renamed from ALChannelDidChangeGroupMuteNotification to KMCoreChannelDidChangeGroupMuteNotification to align with the new naming convention.


22-22: LGTM! Protocol method signature updated.

The delegate method parameter type has been correctly updated to use KMCoreMessage * instead of ALMessage *.


69-69: LGTM! Interface method signature updated.

The method parameter type has been appropriately changed to KMCoreMessage * maintaining consistency with the refactoring effort.

Sources/conversation/KMCoreConversationClientService.m (6)

2-2: LGTM! Header comment updated correctly.

The filename in the header comment has been properly updated to reflect the new KMCoreConversationClientService.m filename.


9-10: LGTM! Imports updated consistently.

Both import statements have been correctly updated to use the new KMCore prefixed header files.


18-18: LGTM! Class implementation renamed appropriately.

The class implementation has been correctly renamed from ALConversationClientService to KMCoreConversationClientService.


35-36: LGTM! Method signature updated comprehensively.

The method signature has been properly updated to use KMCoreConversationProxy for the parameter and KMCoreConversationCreateResponse for the completion block, maintaining consistency with the refactoring.


40-40: LGTM! Dictionary creation method updated.

The method call has been correctly updated to use KMCoreConversationProxy's getDictionaryForCreate: method.


48-48: LGTM! Response object handling updated consistently.

Both the variable declaration and object instantiation have been properly updated to use KMCoreConversationCreateResponse instead of the legacy AL prefixed class.

Also applies to: 53-53

Sources/networkcommunication/ALHTTPManager.m (7)

11-11: LGTM! Imports updated systematically.

The import statements have been correctly updated to use KMCoreMessageDBService and KMCoreMessageClientService instead of their AL prefixed counterparts.

Also applies to: 14-14


34-34: LGTM! Variable declarations updated consistently.

All variable declarations and object instantiations have been properly updated to use KMCoreMessageDBService and KMCoreMessage types throughout the data reception handling logic.

Also applies to: 47-47, 65-65


71-71: LGTM! Service method calls updated appropriately.

All method calls to KMCoreMessageService have been correctly updated, maintaining the same functionality while using the new service class names.

Also applies to: 76-76, 81-81


108-108: LGTM! Database service usage updated systematically.

The instantiation and usage of KMCoreMessageDBService have been consistently updated across different delegate methods.

Also applies to: 113-113, 151-151


160-160: LGTM! Method signatures updated for file operations.

Both upload and download method signatures have been properly updated to accept KMCoreMessage * parameters instead of ALMessage *.

Also applies to: 274-274


315-315: LGTM! Client service instantiation updated.

The instantiation of both KMCoreMessageClientService and KMCoreMessageDBService has been correctly updated for download processing.

Also applies to: 317-317


487-487: LGTM! Database handler usage updated comprehensively.

The database operations have been properly updated to use KMCoreMessageDBService for queries and KMCoreDBHandler for context saving, completing the systematic refactoring.

Also applies to: 496-496

Sources/include/KMCoreMessageArrayWrapper.h (2)

2-2: LGTM! File and class renaming is consistent.

The systematic renaming from ALMessageArrayWrapper to KMCoreMessageArrayWrapper and corresponding import updates are correctly implemented.

Also applies to: 10-10, 13-13


25-25: LGTM! Method signatures properly updated.

All method parameters and return types have been correctly updated from ALMessage to KMCoreMessage, maintaining consistency with the new naming convention.

Also applies to: 29-29, 33-33, 35-35

Sources/message/KMCoreMessageArrayWrapper.m (3)

2-2: LGTM! Implementation file properly updated.

The file renaming, import statements, and class implementation declaration are correctly aligned with the header file changes.

Also applies to: 9-9, 13-13, 17-17


32-32: LGTM! Method implementations correctly updated.

All method implementations properly use KMCoreMessage type instead of ALMessage while preserving the original logic.

Also applies to: 39-39, 50-50, 52-52, 55-55


155-156: LGTM! Complex method logic preserved during refactoring.

The getDatePrototype:andAlMessageObject: method and filterOutDuplicateMessage: method correctly use the new KMCoreMessage type while maintaining all the original business logic for date handling and duplicate filtering.

Also applies to: 234-260

Sources/corekit/ALMQTTConversationService.m (4)

12-18: LGTM! Import statements systematically updated.

All import statements have been correctly updated to use the new KMCore prefixed classes while maintaining the same functionality.


31-31: LGTM! Notification constant properly renamed.

The notification constant KMCoreChannelDidChangeGroupMuteNotification correctly follows the new naming convention.


86-86: LGTM! Method signatures and instantiations updated correctly.

Method parameters using KMCoreMessage and object instantiations using the new class names are properly implemented.

Also applies to: 309-309, 352-352


317-318: LGTM! Service class usage updated consistently.

All service class instantiations and method calls have been updated to use the new KMCore prefixed classes (KMCoreMessageService, KMCoreChannelService) while maintaining the same method signatures and logic.

Also applies to: 325-326, 334-334

Sources/include/ALUserService.h (3)

12-13: LGTM! Import statements properly updated.

Import statements for KMCoreMessageList, KMCoreMessage, and KMCoreChannelService are correctly updated to use the new naming convention.

Also applies to: 21-21


30-30: LGTM! Property type correctly updated.

The channelService property type has been properly changed from ALChannelService * to KMCoreChannelService *.


50-56: LGTM! Method signatures and documentation updated consistently.

Method parameters using KMCoreMessage type and corresponding documentation comments have been properly updated to reflect the new class names while maintaining the same functionality.

Also applies to: 159-159

Sources/message/KMCoreMessage.m (6)

2-2: File header updated correctly.

The file name in the header comment has been properly updated from ALMessage.m to KMCoreMessage.m.


8-12: Import statements systematically updated.

The import statements have been correctly updated from the legacy AL* prefixed classes to the new KMCore* prefixed classes:

  • ALMessage.hKMCoreMessage.h
  • ALChannel.hKMCoreChannel.h
  • ALChannelService.hKMCoreChannelService.h

This maintains consistency with the broader refactoring effort.


21-21: Class implementation name updated correctly.

The class implementation has been properly renamed from ALMessage to KMCoreMessage, aligning with the new naming convention.


420-420: Method signature updated to use new builder type.

The initWithBuilder: method signature has been correctly updated to use KMCoreMessageBuilder instead of the legacy ALMessageBuilder.


471-474: Builder pattern methods updated consistently.

The static factory method and its implementation have been properly updated:

  • Method signature uses KMCoreMessageBuilder parameter
  • Local variable declaration uses KMCoreMessageBuilder
  • Return statement uses KMCoreMessage

This maintains the builder pattern while using the new class names.


478-482: Channel service usage updated to new types.

The isNotificationDisabled method has been correctly updated to use:

  • KMCoreChannel instead of ALChannel
  • KMCoreChannelService instead of ALChannelService

This ensures compatibility with the refactored channel services.

Sources/JWT/user/ALUserService.m (5)

60-60: Channel service instantiation updated.

The channel service instantiation has been correctly updated to use KMCoreChannelService instead of ALChannelService.


71-71: Method parameter type updated for message iteration.

The for-loop parameter has been correctly updated to use KMCoreMessage instead of ALMessage, ensuring compatibility with the refactored message arrays.


240-248: Method signature and error handling updated for new message type.

The markMessageAsRead: method signature has been properly updated:

  • Parameter type changed from ALMessage to KMCoreMessage
  • Error message updated to reference KMCoreMessage class name

This maintains consistency with the new type system while preserving error handling functionality.


286-291: Database service usage updated consistently.

The markConversationReadInDataBaseWithMessage: method has been correctly updated:

  • Parameter type uses KMCoreMessage
  • Object instantiation uses KMCoreChannelDBService

This ensures compatibility with the refactored database services.


455-455: Channel service instantiation updated in unread count calculation.

The channel service instantiation within the getTotalUnreadCount method has been correctly updated to use KMCoreChannelService.

Sources/include/ALAttachmentService.h (2)

10-12: Import statements updated for message services.

The import statements have been systematically updated to use the new KMCore* prefixed classes:

  • ALMessageDBService.hKMCoreMessageDBService.h
  • ALMessage.hKMCoreMessage.h
  • ALMessageService.hKMCoreMessageService.h

This ensures the header uses the correct updated service interfaces.


26-32: Method signatures consistently updated to use KMCoreMessage.

All three public method signatures have been correctly updated to use KMCoreMessage * instead of ALMessage *:

  • sendMessageWithAttachment:withDelegate:withAttachmentDelegate:
  • downloadMessageAttachment:withDelegate:
  • downloadImageThumbnail:withDelegate:

This maintains interface consistency with the refactored message classes.

Sources/include/KMCoreRealTimeUpdate.h (5)

10-12: Import statements updated for core classes.

The import statements have been correctly updated:

  • Includes KMCoreMessage.h instead of ALMessage.h
  • Includes KMCoreChannel.h instead of ALChannel.h
  • Retains KMCoreUserDetail.h (already using KMCore prefix)

This ensures the protocol uses the correct updated class definitions.


17-24: Documentation and method signatures updated for message reception.

Both the documentation comments and method signature for onMessageReceived: and onMessageSent: have been properly updated:

  • Documentation references KMCoreMessage instead of ALMessage
  • Method parameters use KMCoreMessage * type

This maintains consistency between documentation and implementation.


31-41: Message delivery delegate methods updated consistently.

The delegate methods for message delivery have been correctly updated:

  • onMessageDelivered: uses KMCoreMessage * parameter
  • onMessageDeliveredAndRead:withUserId: uses KMCoreMessage * parameter
  • Documentation comments reference KMCoreMessage class

This ensures delivery callbacks work with the new message type.


68-69: Channel update delegate method updated.

The onChannelUpdated: method has been correctly updated:

  • Documentation references KMCoreChannel instead of ALChannel
  • Method parameter uses KMCoreChannel * type

This maintains consistency for channel update notifications.


86-86: Channel mute documentation updated.

The documentation comment for onChannelMute: has been updated to reference KMCoreChannel instead of ALChannel, ensuring consistency with the new class names.

Sources/corekit/ALAttachmentService.m (2)

11-13: Import statements correctly updated.

The import statements have been properly updated to use the new KMCore* prefixed classes.


75-75: Class instantiation correctly updated.

The instantiation of KMCoreMessageClientService is correct and consistent with the refactoring.

Sources/conversation/KMCoreConversationService.m (2)

2-2: File and class renaming completed correctly.

The file has been properly renamed to KMCoreConversationService.m and the class implementation updated to KMCoreConversationService. Import statements are correctly updated to use KMCore* prefixed classes.

Also applies to: 9-16


31-32: Service instantiation correctly updated.

The service instantiations have been properly updated to use KMCoreConversationClientService and KMCoreConversationDBService.

Sources/include/KMCoreChannelDBService.h (3)

2-2: Comprehensive renaming executed correctly.

The file has been properly renamed to KMCoreChannelDBService.h, and all imports have been systematically updated to use KMCore* prefixed classes. The interface declaration is correctly updated to KMCoreChannelDBService.

Also applies to: 10-20


26-26: Method signatures consistently updated.

All method signatures have been properly updated to use KMCore* types instead of AL* types. The consistency is excellent throughout the interface.

Also applies to: 30-30, 34-40


86-86:

✅ Verification successful

Return types and parameters consistently updated.

All return types and method parameters have been systematically updated to use the new KMCore* prefixed types. This shows excellent consistency in the refactoring effort.

Also applies to: 98-100, 115-115


🏁 Script executed:

#!/bin/bash
# Verify all usages of the old ALChannelDBService have been updated
rg -A 2 -B 2 "ALChannelDBService" --type objc
rg -A 2 -B 2 "#import.*ALChannel.*\.h" --type objc

Length of output: 2939


All ALChannelDBService references removed

I ran a search (rg ALChannelDBService) and confirmed there are no occurrences in the library source (only in the CocoaPods umbrella in Example/Pods). The KMCore* refactor is complete—ready to merge.

Sources/include/KMCoreMessageDBService.h (1)

1-116: LGTM! Comprehensive and systematic renaming from AL to KMCore prefix.**

The file has been systematically updated as part of the namespace refactoring:

  • File name updated from ALMessageDBService.h to KMCoreMessageDBService.h
  • All class names, protocols, and imports consistently renamed from AL* to KMCore*
  • Method signatures properly updated to use the new types
  • Forward declarations and property types correctly updated

The changes are consistent throughout the file and maintain the same interface structure while adopting the new naming convention.

Sources/include/KMCoreConversationService.h (1)

1-35: LGTM! Well-structured new conversation service interface.

This new header file introduces KMCoreConversationService as part of the namespace refactoring:

  • Properly imports all KMCore* dependencies
  • Provides a clean interface for conversation management operations
  • Methods follow consistent naming conventions
  • Integrates well with the client and database service architecture
  • Consistent with the overall migration from AL* to KMCore* naming

The service interface is comprehensive, covering conversation retrieval, creation, and proxy management operations.

Sources/include/KMCoreChannelClientService.h (1)

1-161: LGTM! Thorough and consistent renaming throughout the channel client service.

The header file has been comprehensively updated as part of the AL* to KMCore* refactoring:

  • File name correctly updated to KMCoreChannelClientService.h
  • All import statements systematically updated to use KMCore* equivalents
  • Class name properly changed to KMCoreChannelClientService
  • Method signatures consistently updated to use new types in parameters and completion handlers
  • Maintains the same API surface while adopting the new naming convention

The changes are systematic and maintain backward compatibility in terms of functionality while updating to the new namespace.

Sources/corekit/KommunicateClient.m (4)

55-59: LGTM! Service initialization correctly updated to use KMCore classes.*

The service setup method properly initializes the new KMCore* service classes:

  • KMCoreMessageService replaces ALMessageService
  • KMCoreMessageDBService replaces ALMessageDBService
  • KMCoreChannelService replaces ALChannelService

The delegate assignments remain consistent with the previous implementation.


201-224: LGTM! Message sending method signature correctly updated.

The method signature and implementation have been properly updated:

  • Parameter type changed from ALMessage* to KMCoreMessage*
  • Return type in completion handler updated to KMCoreMessage*
  • All method calls and variable usage consistent with the new types

The logic and error handling remain unchanged, maintaining the same functionality with the new type system.


247-254: LGTM! Channel creation method properly updated to use KMCore types.*

The channel creation method has been comprehensively updated:

  • Parameter types updated to KMCoreChannelInfo* and KMCoreChannelCreateResponse*
  • Local service instantiation updated to KMCoreChannelService
  • Method calls and completion handlers use the new types consistently

The implementation maintains the same logic flow while adopting the new naming convention.


309-315: LGTM! Channel information retrieval method signature correctly updated.

The method signature has been properly updated to use KMCore* types:

  • Completion handler parameters updated to KMCoreChannel* and KMCoreChannelFeedResponse*
  • Local service variable updated to KMCoreChannelService
  • Method call parameters consistent with the new types

The functionality remains identical while conforming to the new namespace.

Sources/message/KMCoreMessageServiceWrapper.m (3)

9-13: LGTM! Clean and systematic refactoring.

The import statements and class declaration have been properly updated from the AL* prefix to the KMCore* prefix. The renaming is consistent and maintains the same functionality.

Also applies to: 22-26


30-40: Excellent consistency in method implementation updates.

All ALMessage references have been properly renamed to KMCoreMessage, and the service class references are correctly updated to use KMCoreMessageService. The method logic remains unchanged, which is perfect for this refactoring effort.

Also applies to: 45-57


88-93: Database service and handler references properly updated.

The KMCoreMessageDBService and KMCoreDBHandler references are correctly updated from their AL* counterparts, maintaining the same functionality while aligning with the new naming convention.

Also applies to: 104-104

Sources/include/KMCoreMessageClientService.h (3)

2-2: Header file and class name properly updated.

The file header and class declaration have been correctly renamed from ALMessageClientService to KMCoreMessageClientService, maintaining consistency with the broader refactoring effort.

Also applies to: 19-19


10-14: Import statements and type references consistently updated.

All relevant imports have been updated to use the KMCore* prefix (KMCoreMessage, KMCoreMessageList, KMCoreMessageInfoResponse), and method signatures properly reflect the new types in completion handlers.

Also applies to: 27-27, 49-49


63-64: Method parameter types and return types properly updated.

The deprecated method and search methods now correctly use KMCoreMessage types instead of ALMessage, ensuring type consistency across the interface.

Also applies to: 80-84

Sources/include/KommunicateClient.h (3)

10-13: Service imports and property declarations properly updated.

The import statements and service property declarations have been systematically updated to use KMCoreMessageService, KMCoreMessageDBService, and KMCoreChannelService, maintaining the same functionality with the new naming convention.

Also applies to: 58-61


27-27: Delegate protocol methods consistently updated.

All delegate protocol methods now properly use KMCoreMessage instead of ALMessage in their signatures. The documentation comments have also been updated to reference the new type names.

Also applies to: 32-32, 36-36, 40-40, 45-45, 49-49


87-87: Public API method signatures properly maintained.

All public method signatures have been updated to use the new KMCore* types (KMCoreMessage, KMCoreChannelInfo, KMCoreChannelCreateResponse, etc.) while maintaining the same method contracts and functionality.

Also applies to: 91-92, 96-96, 101-101, 105-106, 117-117, 171-173, 242-242

Sources/message/KMCoreMessageClientService.m (5)

2-2: File header and class implementation properly renamed.

The file header, imports, and class implementation have been correctly updated from ALMessageClientService to KMCoreMessageClientService, maintaining consistency with the header file.

Also applies to: 9-9, 31-31


13-17: Import statements systematically updated.

All relevant imports have been updated to use the KMCore* prefix for message, database, channel, and conversation services, ensuring proper dependency references.

Also applies to: 20-20


231-238: Method signatures and service instantiations properly updated.

The method parameter types and service instantiations (KMCoreDBHandler, KMCoreMessageDBService, KMCoreMessage) have been consistently updated while maintaining the same functionality.

Also applies to: 241-244


275-275: Response object creation and service usage consistently updated.

All response object instantiations (KMCoreMessageList) and service usage (KMCoreChannelService) have been properly updated to use the new class names while preserving the original logic flow.

Also applies to: 301-301, 310-310, 317-317


532-532: Method signatures and object instantiations throughout the file properly updated.

The completion handler signatures, object instantiations, and array type declarations have all been systematically updated to use KMCoreMessage and related types, demonstrating excellent consistency in the refactoring effort.

Also applies to: 545-545, 627-627, 664-668, 726-730

Sources/include/KMCoreMessageService.h (1)

1-172: Excellent systematic refactoring of the message service header.

The renaming from ALMessageService to KMCoreMessageService and all related types has been executed consistently throughout the header file. All method signatures, return types, and parameter types have been properly updated to use the new KMCore namespace. The changes maintain the exact same functionality while establishing the new naming convention.

Sources/channel/KMCoreChannelDBService.m (1)

1-1141: Well-executed systematic refactoring of the channel database service.

The implementation has been thoroughly updated from ALChannelDBService to KMCoreChannelDBService with all related channel types (KMCoreChannel, KMCoreChannelUserX, KMCoreDBHandler) consistently renamed throughout. The business logic remains unchanged while successfully establishing the new KMCore namespace for channel-related operations.

The retention of some AL* prefixed classes (like ALContactDBService, ALContact) appears intentional as part of this phased refactoring approach.

Sources/channel/KMCoreChannelClientService.m (1)

1-1123: Comprehensive and consistent refactoring of the channel client service.

The transformation from ALChannelClientService to KMCoreChannelClientService has been executed systematically throughout the implementation. All method signatures, completion handler types, and object instantiations have been properly updated to use the new KMCore namespace (KMCoreChannel, KMCoreChannelCreateResponse, KMCoreChannelSyncResponse, etc.).

The network communication logic and business functionality remain completely intact, ensuring this refactoring is purely a namespace migration without any behavioral changes.

Sources/message/KMCoreMessageDBService.m (1)

1-1275: LGTM! Systematic refactoring executed consistently.

This file demonstrates a comprehensive and well-executed refactoring from the AL prefix to the KMCore prefix. All class names, imports, method signatures, variable types, and documentation have been systematically updated while preserving the original functionality and logic. The changes include:

  • Class name: ALMessageDBServiceKMCoreMessageDBService
  • All imports updated to use KMCore* prefixed classes
  • All method signatures and variable declarations consistently updated
  • Documentation and comments updated to reflect new class names

No functional logic, control flow, or error handling has been modified, which reduces the risk of introducing bugs during this large-scale refactoring.

Sources/include/KMCoreChannelService.h (1)

1-519: LGTM! Comprehensive header file refactoring with consistent namespace migration.

This header file has been thoroughly refactored from ALChannelService to KMCoreChannelService with excellent consistency:

  • Interface declaration: ALChannelServiceKMCoreChannelService (line 29)
  • Imports: All imports updated to use KMCore* prefixed headers (lines 10-18)
  • Method signatures: All parameter types, return types, and completion block types consistently updated throughout
  • Properties: Service properties updated to use KMCore* types (lines 39, 41)
  • Documentation: Extensive documentation updates to reference new class names in method comments

The refactoring maintains the complete API surface while transitioning to the new namespace. No functional changes were made, preserving existing behavior.

Sources/channel/KMCoreChannelService.m (8)

2-2: LGTM: File name and imports updated consistently.

The file name and import statements have been systematically updated from AL* to KMCore* prefixes, maintaining consistency with the broader refactoring effort.

Also applies to: 9-12, 18-18, 20-20


32-39: LGTM: Singleton pattern updated correctly.

The singleton implementation correctly uses the new KMCoreChannelService class name throughout the method, maintaining the same logic while updating the namespace.


54-55: LGTM: Service dependencies updated consistently.

The service instantiation correctly uses the new KMCore* prefixed classes for both channelClientService and channelDBService.


59-59: LGTM: Type declarations and method signatures updated systematically.

All variable declarations, method parameters, and return types have been consistently updated from ALChannel* to KMCoreChannel* and related types. The logic and functionality remain unchanged.

Also applies to: 63-63, 69-69, 72-72, 78-78, 86-86, 94-94, 104-104


117-117: LGTM: Static and instance methods updated correctly.

All method implementations correctly use the new KMCore* types while maintaining the same business logic for channel operations.

Also applies to: 124-124, 132-134, 146-147, 165-166


284-284: LGTM: Channel creation methods updated consistently.

All channel creation method signatures and completion block parameters have been systematically updated to use KMCoreChannel and KMCoreChannelCreateResponse types.

Also applies to: 294-294, 306-306, 308-308, 321-321, 323-323, 342-342, 345-345


386-386: LGTM: Channel info and broadcast channel methods updated.

The channel info classes and broadcast channel creation methods correctly use the new KMCore* prefixed types.

Also applies to: 392-393, 436-436, 438-438, 454-454, 458-458


13-17: Note: Partial migration approach with selective AL class retention.*

The refactoring maintains certain AL* prefixed classes (ALMuteRequest, ALAPIResponse, ALContactService, ALLogger) and constants (AL_CHANNEL_MEMBER_BATCH_SIZE, etc.), indicating this is a selective migration rather than a complete namespace change. This approach is acceptable for a phased migration strategy.

Also applies to: 22-27

Copy link

iOS Lint Test Result
Congratulations! Linter Check Passed Successfully 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants