Skip to content

Commit e6404aa

Browse files
refactor: enhance logging functionalities
- Replace usage of static AppLogger class with separate logging functions - Introduce individual logger functions for error, warning, info, and debug levels - Create a default stand-alone logger instance to handle logging operations
1 parent 7ae86de commit e6404aa

File tree

3 files changed

+22
-38
lines changed

3 files changed

+22
-38
lines changed

lib/optimizely_flutter_sdk.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ class OptimizelyFlutterSdk {
100100
if (logger != null) {
101101
setLogger(logger);
102102
} else {
103-
AppLogger.warning("Logger not provided.");
103+
logWarning("Logger not provided.");
104104
}
105105
}
106106

lib/src/logger/flutter_logger.dart

Lines changed: 13 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -8,35 +8,19 @@ abstract class OptimizelyLogger {
88
class DefaultOptimizelyLogger implements OptimizelyLogger {
99
@override
1010
void log(OptimizelyLogLevel level, String message) {
11-
print('${level.name} $message');
11+
print('[OPTIMIZELY] [${level.name.toUpperCase()}]: $message');
1212
}
1313
}
1414

15-
class AppLogger {
16-
static OptimizelyLogger _instance = DefaultOptimizelyLogger();
17-
18-
/// Get the current app logger instance
19-
static OptimizelyLogger get instance => _instance;
20-
21-
/// Reset to default logger
22-
static void reset() {
23-
_instance = DefaultOptimizelyLogger();
24-
}
25-
26-
/// Convenience methods for direct logging
27-
static void error(String message) {
28-
_instance.log(OptimizelyLogLevel.error, message);
29-
}
30-
31-
static void warning(String message) {
32-
_instance.log(OptimizelyLogLevel.warning, message);
33-
}
34-
35-
static void info(String message) {
36-
_instance.log(OptimizelyLogLevel.info, message);
37-
}
38-
39-
static void debug(String message) {
40-
_instance.log(OptimizelyLogLevel.debug, message);
41-
}
42-
}
15+
/// App logger instance
16+
final _appLogger = DefaultOptimizelyLogger();
17+
18+
/// App logging functions
19+
void logError(String message) =>
20+
_appLogger.log(OptimizelyLogLevel.error, message);
21+
void logWarning(String message) =>
22+
_appLogger.log(OptimizelyLogLevel.warning, message);
23+
void logInfo(String message) =>
24+
_appLogger.log(OptimizelyLogLevel.info, message);
25+
void logDebug(String message) =>
26+
_appLogger.log(OptimizelyLogLevel.debug, message);

lib/src/logger/logger_bridge.dart

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,24 +10,24 @@ class LoggerBridge {
1010

1111
/// Initialize the logger bridge to receive calls from native
1212
static void initialize(OptimizelyLogger? logger) {
13-
AppLogger.info('[LoggerBridge] Initializing with logger: ${logger != null}');
13+
logInfo('[LoggerBridge] Initializing with logger: ${logger != null}');
1414
_customLogger = logger;
1515
_loggerChannel.setMethodCallHandler(_handleMethodCall);
1616
}
1717

1818
/// Handle incoming method calls from native Swift/Java code
1919
static Future<void> _handleMethodCall(MethodCall call) async {
20-
AppLogger.info('[LoggerBridge] Received method call: ${call.method}');
20+
logInfo('[LoggerBridge] Received method call: ${call.method}');
2121
try {
2222
switch (call.method) {
2323
case 'log':
2424
await _handleLogCall(call);
2525
break;
2626
default:
27-
AppLogger.warning('[LoggerBridge] Unknown method call: ${call.method}');
27+
logWarning('[LoggerBridge] Unknown method call: ${call.method}');
2828
}
2929
} catch (e) {
30-
AppLogger.error('[LoggerBridge] Error handling method call: $e');
30+
logError('[LoggerBridge] Error handling method call: $e');
3131
}
3232
}
3333

@@ -40,21 +40,21 @@ class LoggerBridge {
4040
final message = args['message'] as String?;
4141

4242
if (levelRawValue == null || message == null) {
43-
AppLogger.error('[LoggerBridge] Warning: Missing level or message in log call');
43+
logError('[LoggerBridge] Warning: Missing level or message in log call');
4444
return;
4545
}
4646

4747
final level = _convertLogLevel(levelRawValue);
4848

49-
AppLogger.info('[LoggerBridge] Processing log: level=$levelRawValue, message=$message');
49+
logInfo('[LoggerBridge] Processing log: level=$levelRawValue, message=$message');
5050

5151
if (_customLogger != null) {
5252
_customLogger!.log(level, message);
5353
} else {
54-
AppLogger.info('[Optimizely ${level.name}] $message');
54+
logInfo('[Optimizely ${level.name}] $message');
5555
}
5656
} catch (e) {
57-
AppLogger.error('[LoggerBridge] Error processing log call: $e');
57+
logError('[LoggerBridge] Error processing log call: $e');
5858
}
5959
}
6060

0 commit comments

Comments
 (0)