Skip to content

Commit 03edaef

Browse files
authored
Use logging package (#26)
* Use `logging` package * Enforce `avoid_print`
1 parent 137e087 commit 03edaef

File tree

7 files changed

+51
-36
lines changed

7 files changed

+51
-36
lines changed

packages/sane/analysis_options.yaml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,5 @@
11
include: package:flutter_lints/flutter.yaml
22

3-
analyzer:
4-
errors:
5-
avoid_print: ignore
6-
73
linter:
84
rules:
95
prefer_single_quotes: true

packages/sane/example/main.dart

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,15 @@
33
import 'dart:io';
44
import 'dart:typed_data';
55

6+
import 'package:logging/logging.dart';
67
import 'package:sane/sane.dart';
78

89
void main(List<String> args) async {
10+
Logger.root.level = Level.ALL;
11+
Logger.root.onRecord.listen((record) {
12+
print('${record.level.name}: ${record.time}: ${record.message}');
13+
});
14+
915
final sane = SaneIsolate(sane: SaneDev());
1016
await sane.spawn();
1117

packages/sane/lib/src/logger.dart

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
import 'package:logging/logging.dart';
2+
3+
final logger = Logger('sane');

packages/sane/lib/src/sane.dart

Lines changed: 18 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import 'package:sane/src/bindings.g.dart';
77
import 'package:sane/src/dylib.dart';
88
import 'package:sane/src/exceptions.dart';
99
import 'package:sane/src/extensions.dart';
10+
import 'package:sane/src/logger.dart';
1011
import 'package:sane/src/structures.dart';
1112
import 'package:sane/src/type_conversion.dart';
1213
import 'package:sane/src/utils.dart';
@@ -57,12 +58,14 @@ class Sane {
5758
).nativeFunction
5859
: ffi.nullptr;
5960
final status = dylib.sane_init(versionCodePointer, nativeAuthCallback);
60-
print('sane_init() -> ${status.name}');
61+
logger.finest('sane_init() -> ${status.name}');
6162

6263
status.check();
6364

6465
final versionCode = versionCodePointer.value;
65-
print('SANE version: ${SaneUtils.version(versionCodePointer.value)}');
66+
logger.finest(
67+
'SANE version: ${SaneUtils.version(versionCodePointer.value)}',
68+
);
6669

6770
ffi.calloc.free(versionCodePointer);
6871
ffi.calloc.free(nativeAuthCallback);
@@ -82,7 +85,7 @@ class Sane {
8285
_exited = true;
8386

8487
dylib.sane_exit();
85-
print('sane_exit()');
88+
logger.finest('sane_exit()');
8689

8790
completer.complete();
8891

@@ -106,7 +109,8 @@ class Sane {
106109
deviceListPointer,
107110
saneBoolFromDartBool(localOnly),
108111
);
109-
print('sane_get_devices() -> ${status.name}');
112+
113+
logger.finest('sane_get_devices() -> ${status.name}');
110114

111115
status.check();
112116

@@ -133,7 +137,7 @@ class Sane {
133137
final nativeHandlePointer = ffi.calloc<SANE_Handle>();
134138
final deviceNamePointer = saneStringFromDartString(deviceName);
135139
final status = dylib.sane_open(deviceNamePointer, nativeHandlePointer);
136-
print('sane_open() -> ${status.name}');
140+
logger.finest('sane_open() -> ${status.name}');
137141

138142
status.check();
139143

@@ -165,7 +169,7 @@ class Sane {
165169
Future(() {
166170
dylib.sane_close(_getNativeHandle(handle));
167171
_nativeHandles.remove(handle);
168-
print('sane_close()');
172+
logger.finest('sane_close()');
169173

170174
completer.complete();
171175
});
@@ -307,7 +311,9 @@ class Sane {
307311
valuePointer.cast<ffi.Void>(),
308312
infoPointer,
309313
);
310-
print('sane_control_option($index, $action, $value) -> ${status.name}');
314+
logger.finest(
315+
'sane_control_option($index, $action, $value) -> ${status.name}',
316+
);
311317

312318
status.check();
313319

@@ -432,7 +438,7 @@ class Sane {
432438
_getNativeHandle(handle),
433439
nativeParametersPointer,
434440
);
435-
print('sane_get_parameters() -> ${status.name}');
441+
logger.finest('sane_get_parameters() -> ${status.name}');
436442

437443
status.check();
438444

@@ -453,7 +459,7 @@ class Sane {
453459

454460
Future(() {
455461
final status = dylib.sane_start(_getNativeHandle(handle));
456-
print('sane_start() -> ${status.name}');
462+
logger.finest('sane_start() -> ${status.name}');
457463

458464
status.check();
459465

@@ -478,7 +484,7 @@ class Sane {
478484
bufferSize,
479485
bytesReadPointer,
480486
);
481-
print('sane_read() -> ${status.name}');
487+
logger.finest('sane_read() -> ${status.name}');
482488

483489
status.check();
484490

@@ -505,7 +511,7 @@ class Sane {
505511

506512
Future(() {
507513
dylib.sane_cancel(_getNativeHandle(handle));
508-
print('sane_cancel()');
514+
logger.finest('sane_cancel()');
509515

510516
completer.complete();
511517
});
@@ -523,7 +529,7 @@ class Sane {
523529
_getNativeHandle(handle),
524530
saneBoolFromIOMode(mode),
525531
);
526-
print('sane_set_io_mode() -> ${status.name}');
532+
logger.finest('sane_set_io_mode() -> ${status.name}');
527533

528534
status.check();
529535

packages/sane/lib/src/sane_dev.dart

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,22 @@
11
import 'dart:typed_data';
22

3+
import 'package:logging/logging.dart';
34
import 'package:sane/sane.dart';
45

6+
final _logger = Logger('sane.dev');
7+
58
class SaneDev implements Sane {
69
@override
710
Future<void> cancel(SaneHandle handle) {
811
return Future.delayed(const Duration(seconds: 1), () {
9-
print('sane_cancel()');
12+
_logger.finest('sane_cancel()');
1013
});
1114
}
1215

1316
@override
1417
Future<void> close(SaneHandle handle) {
1518
return Future.delayed(const Duration(seconds: 1), () {
16-
print('sane_close()');
19+
_logger.finest('sane_close()');
1720
});
1821
}
1922

@@ -25,7 +28,7 @@ class SaneDev implements Sane {
2528
bool? value,
2629
}) {
2730
return Future.delayed(const Duration(seconds: 1), () {
28-
print('sane_controlBoolOption()');
31+
_logger.finest('sane_controlBoolOption()');
2932
return SaneOptionResult(result: value ?? true, infos: []);
3033
});
3134
}
@@ -36,7 +39,7 @@ class SaneDev implements Sane {
3639
required int index,
3740
}) {
3841
return Future.delayed(const Duration(seconds: 1), () {
39-
print('sane_controlButtonOption()');
42+
_logger.finest('sane_controlButtonOption()');
4043
return SaneOptionResult(result: null, infos: []);
4144
});
4245
}
@@ -49,7 +52,7 @@ class SaneDev implements Sane {
4952
double? value,
5053
}) {
5154
return Future.delayed(const Duration(seconds: 1), () {
52-
print('sane_controlFixedOption()');
55+
_logger.finest('sane_controlFixedOption()');
5356
return SaneOptionResult(result: value ?? .1, infos: []);
5457
});
5558
}
@@ -62,7 +65,7 @@ class SaneDev implements Sane {
6265
int? value,
6366
}) {
6467
return Future.delayed(const Duration(seconds: 1), () {
65-
print('sane_controlIntOption()');
68+
_logger.finest('sane_controlIntOption()');
6669
return SaneOptionResult(result: value ?? 1, infos: []);
6770
});
6871
}
@@ -75,15 +78,15 @@ class SaneDev implements Sane {
7578
String? value,
7679
}) {
7780
return Future.delayed(const Duration(seconds: 1), () {
78-
print('sane_controlStringOption()');
81+
_logger.finest('sane_controlStringOption()');
7982
return SaneOptionResult(result: value ?? 'value', infos: []);
8083
});
8184
}
8285

8386
@override
8487
Future<void> exit() {
8588
return Future(() {
86-
print('sane_exit()');
89+
_logger.finest('sane_exit()');
8790
});
8891
}
8992

@@ -92,7 +95,7 @@ class SaneDev implements Sane {
9295
SaneHandle handle,
9396
) {
9497
return Future.delayed(const Duration(seconds: 1), () {
95-
print('sane_getAllOptionDescriptors()');
98+
_logger.finest('sane_getAllOptionDescriptors()');
9699
return [
97100
SaneOptionDescriptor(
98101
index: 0,
@@ -114,7 +117,7 @@ class SaneDev implements Sane {
114117
required bool localOnly,
115118
}) {
116119
return Future.delayed(const Duration(seconds: 1), () {
117-
print('sane_getDevices()');
120+
_logger.finest('sane_getDevices()');
118121
return [
119122
for (var i = 0; i < 3; i++)
120123
SaneDevice(
@@ -133,7 +136,7 @@ class SaneDev implements Sane {
133136
int index,
134137
) {
135138
return Future.delayed(const Duration(seconds: 1), () {
136-
print('sane_getOptionDescriptor()');
139+
_logger.finest('sane_getOptionDescriptor()');
137140
return SaneOptionDescriptor(
138141
index: index,
139142
name: 'name',
@@ -151,7 +154,7 @@ class SaneDev implements Sane {
151154
@override
152155
Future<SaneParameters> getParameters(SaneHandle handle) {
153156
return Future.delayed(const Duration(seconds: 1), () {
154-
print('sane_getParameters()');
157+
_logger.finest('sane_getParameters()');
155158
return SaneParameters(
156159
format: SaneFrameFormat.gray,
157160
lastFrame: true,
@@ -168,46 +171,46 @@ class SaneDev implements Sane {
168171
AuthCallback? authCallback,
169172
}) {
170173
return Future(() {
171-
print('sane_init()');
174+
_logger.finest('sane_init()');
172175
return 1;
173176
});
174177
}
175178

176179
@override
177180
Future<SaneHandle> open(String deviceName) {
178181
return Future.delayed(const Duration(seconds: 1), () {
179-
print('sane_open()');
182+
_logger.finest('sane_open()');
180183
return SaneHandle(deviceName: deviceName);
181184
});
182185
}
183186

184187
@override
185188
Future<SaneHandle> openDevice(SaneDevice device) {
186189
return Future.delayed(const Duration(seconds: 1), () {
187-
print('sane_openDevice()');
190+
_logger.finest('sane_openDevice()');
188191
return SaneHandle(deviceName: device.name);
189192
});
190193
}
191194

192195
@override
193196
Future<Uint8List> read(SaneHandle handle, int bufferSize) {
194197
return Future.delayed(const Duration(seconds: 1), () {
195-
print('sane_read()');
198+
_logger.finest('sane_read()');
196199
return Uint8List.fromList([]);
197200
});
198201
}
199202

200203
@override
201204
Future<void> setIOMode(SaneHandle handle, SaneIOMode mode) {
202205
return Future.delayed(const Duration(seconds: 1), () {
203-
print('sane_setIOMode()');
206+
_logger.finest('sane_setIOMode()');
204207
});
205208
}
206209

207210
@override
208211
Future<void> start(SaneHandle handle) {
209212
return Future.delayed(const Duration(seconds: 1), () {
210-
print('sane_start()');
213+
_logger.finest('sane_start()');
211214
});
212215
}
213216
}

packages/sane/pubspec.lock

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ packages:
175175
source: hosted
176176
version: "4.0.0"
177177
logging:
178-
dependency: transitive
178+
dependency: "direct main"
179179
description:
180180
name: logging
181181
sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61
@@ -199,7 +199,7 @@ packages:
199199
source: hosted
200200
version: "0.12.16+1"
201201
meta:
202-
dependency: transitive
202+
dependency: "direct main"
203203
description:
204204
name: meta
205205
sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c

packages/sane/pubspec.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ environment:
1111

1212
dependencies:
1313
ffi: ^2.1.3
14+
logging: ^1.3.0
1415
meta: ^1.16.0
1516

1617
dev_dependencies:

0 commit comments

Comments
 (0)