Skip to content
This repository was archived by the owner on Jun 18, 2026. It is now read-only.

refactor(app): extract LocationResolver from addLocation - #131

Merged
sauravbhattacharya001 merged 1 commit into
masterfrom
refactor/location-resolver
Mar 28, 2026
Merged

sauravbhattacharya001 merged 1 commit into
masterfrom
refactor/location-resolver

Conversation

@sauravbhattacharya001

@sauravbhattacharya001 sauravbhattacharya001 commented Mar 27, 2026

Copy link
Copy Markdown
Owner

Changes Refactors the ^GddLocation\ class into a cleaner \LocationResolver: ### 1. Java naming conventions Class renamed from ^GddLocation\ to \LocationResolver\ (PascalCase). ### 2. Magic numbers → configurable Map The AP-to-location-type switch statement with hard-coded AP IDs (7, 16, 20, etc.) is replaced with a static \AP_LOCATION_MAP\ and a \classifyAP()\ method. This is: - Easier to read and maintain - Unit-testable in isolation - Extensible without modifying control flow ### 3. Duplicated query logic → helper method The identical single-IMEI AP lookup code that was copy-pasted 2x is now a \ indBestAP()\ helper method. ### 4. ResultSet fix Changed \while (rs.next())\ to \if (rs.next())\ for LIMIT 1 queries — the loop was semantically misleading since only one row is ever returned. Original ^GddLocation.java\ is preserved for backward compatibility.

- Rename addLocation → LocationResolver (Java naming conventions)
- Extract magic AP numbers from switch into a static Map (AP_LOCATION_MAP)
  with a classifyAP() method for testability
- Extract duplicated single-IMEI AP query logic into findBestAP() helper
- Fix ResultSet iteration (use rs.next() once, not while loop for LIMIT 1)

The original addLocation.java is preserved for backward compatibility.
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@sauravbhattacharya001
sauravbhattacharya001 merged commit 7c2e5c0 into master Mar 28, 2026
4 of 8 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant