Files
flutter_server_box/lib/data/model/server/system.dart
2023-10-14 13:26:15 +08:00

38 lines
756 B
Dart

import 'package:toolbox/data/model/app/shell_func.dart';
enum SystemType {
linux._(linuxSign),
bsd._(bsdSign),
;
final String value;
const SystemType._(this.value);
static SystemType parse(String value) {
switch (value.trim()) {
case linuxSign:
return SystemType.linux;
case bsdSign:
return SystemType.bsd;
default:
// Fallback to linux
return SystemType.linux;
}
}
bool isSegmentsLenMatch(int len) => len == segmentsLen;
int get segmentsLen {
switch (this) {
case SystemType.linux:
return StatusCmdType.values.length;
case SystemType.bsd:
return BSDStatusCmdType.values.length;
}
}
}
const linuxSign = 'linux';
const bsdSign = 'bsd';