Skip to content

Commit 883a30a

Browse files
authored
Merge pull request #726 from CyBear-Jinni/Changing_grpc
Added db
2 parents 3c933f7 + 506a0c4 commit 883a30a

File tree

49 files changed

+325
-470
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+325
-470
lines changed

android/app/src/main/AndroidManifest.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
<uses-permission android:name="android.permission.BLUETOOTH" />
2020
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
2121
<uses-permission android:name="android.permission.VIBRATE" />
22+
<uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE" />
2223
<uses-permission android:name="com.google.android.gms.permission.AD_ID"/>
2324

2425
<application

devtools_options.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
extensions:

lib/domain/connections_service.dart

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -37,12 +37,15 @@ abstract interface class ConnectionsService {
3737
static ConnectionsService? _instance;
3838

3939
static ConnectionsService get instance {
40-
return _instance ??= _AppConnectionService();
40+
return _instance ??= _NoneConnectionService();
4141
}
4242

43-
static ConnectionType _currentConnectionType = ConnectionType.appAsHub;
43+
static ConnectionType _currentConnectionType = ConnectionType.none;
4444

45-
static void setCurrentConnectionType(ConnectionType connectionType) {
45+
static void setCurrentConnectionType({
46+
required String networkBssid,
47+
required ConnectionType connectionType,
48+
}) {
4649
if (connectionType == _currentConnectionType) {
4750
return;
4851
}
@@ -52,13 +55,13 @@ abstract interface class ConnectionsService {
5255

5356
switch (connectionType) {
5457
case ConnectionType.appAsHub:
55-
_instance = _AppConnectionService();
58+
_instance = _AppConnectionService(networkBssid);
5659
case ConnectionType.hub:
57-
_instance = _HubConnectionService();
60+
_instance = _HubConnectionService(networkBssid);
5861
case ConnectionType.remotePipes:
59-
_instance = _RemotePipesConnectionService();
62+
_instance = _RemotePipesConnectionService(networkBssid);
6063
case ConnectionType.demo:
61-
_instance = _DemoConnectionService();
64+
_instance = _DemoConnectionService(networkBssid);
6265
case ConnectionType.none:
6366
_instance = _NoneConnectionService();
6467
}

lib/domain/i_local_db_repository.dart

Lines changed: 0 additions & 34 deletions
This file was deleted.

lib/domain/manage_network/i_manage_network_repository.dart

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
import 'dart:io';
22

3+
import 'package:cbj_integrations_controller/integrations_controller.dart';
34
import 'package:cybearjinni/domain/home_user/home_user_failures.dart';
45
import 'package:cybearjinni/domain/manage_network/manage_network_entity.dart';
56
import 'package:cybearjinni/domain/manage_network/manage_network_value_objects.dart';
67
import 'package:cybearjinni/infrastructure/core/logger.dart';
78
import 'package:dartz/dartz.dart';
89
import 'package:flutter/services.dart';
910
import 'package:kt_dart/collection.dart';
11+
import 'package:location/location.dart' as location;
1012
import 'package:network_info_plus/network_info_plus.dart';
1113
import 'package:permission_handler/permission_handler.dart';
1214
import 'package:wifi_iot/wifi_iot.dart';
@@ -22,6 +24,8 @@ abstract interface class IManageNetworkRepository {
2224

2325
static ManageNetworkEntity? manageWiFiEntity;
2426

27+
Future loadWifi();
28+
2529
Future<Either<HomeUserFailures, String?>> doesWiFiEnabled();
2630

2731
Stream<Either<HomeUserFailures, KtList<ManageNetworkEntity>>>

lib/infrastructure/app_commands.dart

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,7 @@ import 'package:cbj_integrations_controller/integrations_controller.dart';
44
import 'package:device_info_plus/device_info_plus.dart';
55
import 'package:path_provider/path_provider.dart';
66

7-
class AppCommands implements IPhoneCommandsD {
8-
AppCommands() {
9-
IPhoneCommandsD.instance = this;
10-
}
11-
7+
class AppCommands extends SystemCommandsBaseClassD {
128
@override
139
Future<String> getAllEtcReleaseFilesText() {
1410
// TODO: implement getAllEtcReleaseFilesText
@@ -62,7 +58,7 @@ class AppCommands implements IPhoneCommandsD {
6258
}
6359

6460
@override
65-
Future<String> getLocalDbPath(Future<String?> currentUserName) async {
61+
Future<String> getLocalDbPath() async {
6662
final Directory appDocDirectory = await getApplicationDocumentsDirectory();
6763
return appDocDirectory.path;
6864
}
@@ -86,8 +82,8 @@ class AppCommands implements IPhoneCommandsD {
8682
}
8783

8884
@override
89-
Future<String?> suspendComputer() {
90-
// TODO: implement suspendComputer
91-
throw UnimplementedError();
92-
}
85+
Future<String?> suspendComputer() async => null;
86+
87+
@override
88+
Future<String?> getRaspberryPiDeviceVersion() async => null;
9389
}

lib/infrastructure/connection_service/app_connection_service.dart

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
11
part of 'package:cybearjinni/domain/connections_service.dart';
22

33
class _AppConnectionService implements ConnectionsService {
4-
_AppConnectionService() {
5-
searchDevicesInstance = SearchDevices();
6-
searchDevices();
7-
}
4+
_AppConnectionService(this.networkBssid);
85

9-
late SearchDevices searchDevicesInstance;
6+
String networkBssid;
7+
SearchDevices? searchDevicesInstance;
108

119
@override
1210
Future<HashMap<String, DeviceEntityBase>> get getEntities async =>
@@ -17,8 +15,12 @@ class _AppConnectionService implements ConnectionsService {
1715
IcSynchronizer().getAreas();
1816

1917
@override
20-
Future searchDevices() =>
21-
searchDevicesInstance.startSearchIsolate(NetworkUtilitiesFlutter());
18+
Future searchDevices() async =>
19+
searchDevicesInstance = (searchDevicesInstance ?? SearchDevices())
20+
..startSearchIsolate(
21+
networkUtilitiesType: NetworkUtilitiesFlutter(),
22+
systemCommands: SystemCommandsBaseClassD.instance,
23+
);
2224

2325
@override
2426
Stream<MapEntry<String, DeviceEntityBase>> watchEntities() =>
@@ -33,7 +35,7 @@ class _AppConnectionService implements ConnectionsService {
3335
IcSynchronizer().setEntitiesState(action);
3436

3537
@override
36-
Future dispose() async => searchDevicesInstance.dispose();
38+
Future dispose() async => searchDevicesInstance?.dispose();
3739

3840
@override
3941
Future setNewArea(AreaEntity area) async {

lib/infrastructure/connection_service/demo_connection_service.dart

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
part of 'package:cybearjinni/domain/connections_service.dart';
22

33
class _DemoConnectionService implements ConnectionsService {
4+
_DemoConnectionService(this.networkBssid);
5+
6+
String networkBssid;
7+
48
StreamController<MapEntry<String, DeviceEntityBase>>? entitiesStream;
59
StreamController<MapEntry<String, AreaEntity>>? areasStream;
610

lib/infrastructure/connection_service/hub_connection_service.dart

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,21 @@
11
part of 'package:cybearjinni/domain/connections_service.dart';
22

33
class _HubConnectionService implements ConnectionsService {
4-
_HubConnectionService() {
4+
_HubConnectionService(this.networkBssid) {
55
if (currentEnvApp == EnvApp.prod) {
66
hubPort = 50055;
77
} else {
88
hubPort = 60055;
99
}
1010
}
1111

12+
String networkBssid;
13+
1214
/// Port to connect to the cbj hub, will change according to the current
1315
/// running environment
1416
late int hubPort;
1517

1618
String? hubIp;
17-
String? networkBssid;
1819
String? networkName;
1920

2021
ClientChannel? channel;
@@ -166,7 +167,6 @@ class _HubConnectionService implements ConnectionsService {
166167
final NetworkInfo networkInfo = NetworkInfo();
167168
networkName = await networkInfo.getWifiName();
168169
appDeviceIp = await networkInfo.getWifiIP();
169-
networkBssid = await networkInfo.getWifiBSSID();
170170
} else {
171171
return false;
172172
// if (deviceIpOnTheNetwork == null) {

lib/infrastructure/connection_service/remote_pipes_connection_service.dart

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
part of 'package:cybearjinni/domain/connections_service.dart';
22

33
class _RemotePipesConnectionService implements ConnectionsService {
4+
_RemotePipesConnectionService(this.networkBssid);
5+
46
/// Port to connect to the cbj hub, will change according to the current
57
/// running environment
68
int hubPort = 50051;
79

810
String? address;
9-
String? networkBssid;
10-
String? networkName;
11+
String networkBssid;
1112

1213
ClientChannel? channel;
1314
CbjHubClient? stub;

0 commit comments

Comments
 (0)