mirror of
https://gitlab.com/mysocialportal/fediverse-archiving-tools.git
synced 2024-10-18 08:53:31 +00:00
Refactor services so in individual network type folders
This commit is contained in:
parent
e051a3ea52
commit
e84bbf2c09
18 changed files with 44 additions and 44 deletions
|
@ -2,12 +2,12 @@ import 'package:desktop_window/desktop_window.dart';
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
|
||||
import 'package:flutter_localizations/flutter_localizations.dart';
|
||||
import 'package:friendica_archive_browser/src/services/friendica_archive_service.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/friendica_archive_service.dart';
|
||||
import 'package:friendica_archive_browser/src/themes.dart';
|
||||
import 'package:friendica_archive_browser/src/utils/scrolling_behavior.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
|
||||
import 'friendica/services/path_mapping_service.dart';
|
||||
import 'friendica/services/friendica_path_mapping_service.dart';
|
||||
import 'home.dart';
|
||||
import 'settings/settings_controller.dart';
|
||||
|
||||
|
@ -25,7 +25,7 @@ class FriendicaArchiveBrowser extends StatelessWidget {
|
|||
@override
|
||||
Widget build(BuildContext context) {
|
||||
DesktopWindow.setMinWindowSize(minAppSize);
|
||||
final pathMappingService = PathMappingService(settingsController);
|
||||
final pathMappingService = FriendicaPathMappingService(settingsController);
|
||||
final friendicaArchiveService =
|
||||
FriendicaArchiveService(pathMappingService: pathMappingService);
|
||||
settingsController.addListener(() {
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:friendica_archive_browser/src/models/time_element.dart';
|
||||
import 'package:friendica_archive_browser/src/services/friendica_connections.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/friendica_connections.dart';
|
||||
import 'package:friendica_archive_browser/src/utils/snackbar_status_builder.dart';
|
||||
import 'package:friendica_archive_browser/src/utils/top_interactors_generator.dart';
|
||||
import 'package:logging/logging.dart';
|
||||
|
|
|
@ -4,15 +4,15 @@ import 'dart:io';
|
|||
import 'package:path/path.dart' as p;
|
||||
import 'package:result_monad/result_monad.dart';
|
||||
|
||||
import '../friendica/models/friendica_entry_tree_item.dart';
|
||||
import '../friendica/models/friendica_timeline_entry.dart';
|
||||
import '../friendica/services/path_mapping_service.dart';
|
||||
import '../models/local_image_archive_entry.dart';
|
||||
import '../utils/exec_error.dart';
|
||||
import 'friendica_connections.dart';
|
||||
import '../../friendica/models/friendica_entry_tree_item.dart';
|
||||
import '../../friendica/models/friendica_timeline_entry.dart';
|
||||
import '../../friendica/services/friendica_path_mapping_service.dart';
|
||||
import '../../models/local_image_archive_entry.dart';
|
||||
import '../../utils/exec_error.dart';
|
||||
import '../../friendica/services/friendica_connections.dart';
|
||||
|
||||
class DiasporaArchiveService {
|
||||
final PathMappingService pathMappingService;
|
||||
final FriendicaPathMappingService pathMappingService;
|
||||
final Map<String, ImageEntry> _imagesByRequestUrl = {};
|
||||
final List<FriendicaEntryTreeItem> _postEntries = [];
|
||||
final List<FriendicaEntryTreeItem> _orphanedCommentEntries = [];
|
|
@ -3,8 +3,8 @@ import 'dart:math';
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/models/friendica_media_attachment.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/screens/media_slideshow_screen.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/path_mapping_service.dart';
|
||||
import 'package:friendica_archive_browser/src/services/friendica_archive_service.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/friendica_path_mapping_service.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/friendica_archive_service.dart';
|
||||
import 'package:friendica_archive_browser/src/settings/settings_controller.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
|
||||
|
@ -28,7 +28,7 @@ class MediaTimelineComponent extends StatelessWidget {
|
|||
final double singleWidth = MediaQuery.of(context).size.width / 2.0;
|
||||
final double threeAcrossWidth = MediaQuery.of(context).size.width / 3.0;
|
||||
final double preferredMultiWidth = min(threeAcrossWidth, _maxHeightWidth);
|
||||
final pathMapper = Provider.of<PathMappingService>(context);
|
||||
final pathMapper = Provider.of<FriendicaPathMappingService>(context);
|
||||
final archiveService = Provider.of<FriendicaArchiveService>(context);
|
||||
final settingsController = Provider.of<SettingsController>(context);
|
||||
|
||||
|
|
|
@ -3,8 +3,8 @@ import 'dart:io';
|
|||
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/models/friendica_media_attachment.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/path_mapping_service.dart';
|
||||
import 'package:friendica_archive_browser/src/services/friendica_archive_service.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/friendica_path_mapping_service.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/friendica_archive_service.dart';
|
||||
import 'package:friendica_archive_browser/src/settings/settings_controller.dart';
|
||||
import 'package:friendica_archive_browser/src/utils/snackbar_status_builder.dart';
|
||||
import 'package:logging/logging.dart';
|
||||
|
@ -28,7 +28,7 @@ class MediaWrapperComponent extends StatelessWidget {
|
|||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final settingsController = Provider.of<SettingsController>(context);
|
||||
final pathMapper = Provider.of<PathMappingService>(context);
|
||||
final pathMapper = Provider.of<FriendicaPathMappingService>(context);
|
||||
final archiveService = Provider.of<FriendicaArchiveService>(context);
|
||||
final videoPlayerCommand = settingsController.videoPlayerCommand;
|
||||
final path = _calculatePath(pathMapper, archiveService);
|
||||
|
@ -111,7 +111,7 @@ class MediaWrapperComponent extends StatelessWidget {
|
|||
}
|
||||
}
|
||||
|
||||
_ImageAndPathResult _uriToImage(Uri uri, PathMappingService mapper,
|
||||
_ImageAndPathResult _uriToImage(Uri uri, FriendicaPathMappingService mapper,
|
||||
{String imageTypeName = 'image'}) {
|
||||
if (uri.toString().startsWith('https://interncache')) {
|
||||
return _ImageAndPathResult.none();
|
||||
|
@ -173,7 +173,7 @@ class MediaWrapperComponent extends StatelessWidget {
|
|||
}
|
||||
|
||||
String _calculatePath(
|
||||
PathMappingService pathMapper, FriendicaArchiveService archiveService) {
|
||||
FriendicaPathMappingService pathMapper, FriendicaArchiveService archiveService) {
|
||||
final url = mediaAttachment.uri.toString();
|
||||
String basePath = '';
|
||||
if (url.startsWith('http')) {
|
||||
|
|
|
@ -3,7 +3,7 @@ import 'package:flutter/material.dart';
|
|||
import 'package:flutter_widget_from_html_core/flutter_widget_from_html_core.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/models/friendica_entry_tree_item.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/models/location_data.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/path_mapping_service.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/friendica_path_mapping_service.dart';
|
||||
import 'package:friendica_archive_browser/src/settings/settings_controller.dart';
|
||||
import 'package:friendica_archive_browser/src/utils/clipboard_helper.dart';
|
||||
import 'package:friendica_archive_browser/src/utils/snackbar_status_builder.dart';
|
||||
|
@ -32,7 +32,7 @@ class TreeEntryCard extends StatelessWidget {
|
|||
const double spacingHeight = 5.0;
|
||||
final formatter =
|
||||
Provider.of<SettingsController>(context).dateTimeFormatter;
|
||||
final mapper = Provider.of<PathMappingService>(context);
|
||||
final mapper = Provider.of<FriendicaPathMappingService>(context);
|
||||
|
||||
final entry = treeEntry.entry;
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import 'dart:io';
|
||||
|
||||
import 'package:friendica_archive_browser/src/friendica/services/path_mapping_service.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/friendica_path_mapping_service.dart';
|
||||
|
||||
import 'model_utils.dart';
|
||||
|
||||
|
@ -71,7 +71,7 @@ class FriendicaMediaAttachment {
|
|||
return 'FriendicaMediaAttachment{uri: $uri, creationTimestamp: $creationTimestamp, type: $explicitType, metadata: $metadata, title: $title, description: $description}';
|
||||
}
|
||||
|
||||
String toHumanString(PathMappingService mapper) {
|
||||
String toHumanString(FriendicaPathMappingService mapper) {
|
||||
if (uri.scheme.startsWith('http')) {
|
||||
return uri.toString();
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import 'package:friendica_archive_browser/src/friendica/services/path_mapping_service.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/friendica_path_mapping_service.dart';
|
||||
import 'package:friendica_archive_browser/src/models/friendica_contact.dart';
|
||||
import 'package:friendica_archive_browser/src/services/friendica_connections.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/friendica_connections.dart';
|
||||
import 'package:friendica_archive_browser/src/utils/offsetdatetime_utils.dart';
|
||||
import 'package:intl/intl.dart';
|
||||
import 'package:logging/logging.dart';
|
||||
|
@ -142,7 +142,7 @@ class FriendicaTimelineEntry {
|
|||
return 'FriendicaTimelineEntry{id: $id, isReshare: $isReshare, parentId: $parentId, creationTimestamp: $creationTimestamp, modificationTimestamp: $modificationTimestamp, backdatedTimeStamp: $backdatedTimestamp, post: $body, title: $title, author: $author, parentAuthor: $parentAuthor mediaAttachments: $mediaAttachments, links: $links}';
|
||||
}
|
||||
|
||||
String toHumanString(PathMappingService mapper, DateFormat formatter) {
|
||||
String toHumanString(FriendicaPathMappingService mapper, DateFormat formatter) {
|
||||
final creationDateString = formatter.format(
|
||||
DateTime.fromMillisecondsSinceEpoch(creationTimestamp * 1000)
|
||||
.toLocal());
|
||||
|
|
|
@ -8,11 +8,11 @@ import 'package:friendica_archive_browser/src/friendica/components/geo/marker_da
|
|||
import 'package:friendica_archive_browser/src/friendica/components/tree_entry_card.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/models/friendica_entry_tree_item.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/models/friendica_timeline_entry.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/path_mapping_service.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/friendica_path_mapping_service.dart';
|
||||
import 'package:friendica_archive_browser/src/screens/error_screen.dart';
|
||||
import 'package:friendica_archive_browser/src/screens/loading_status_screen.dart';
|
||||
import 'package:friendica_archive_browser/src/screens/standin_status_screen.dart';
|
||||
import 'package:friendica_archive_browser/src/services/friendica_archive_service.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/friendica_archive_service.dart';
|
||||
import 'package:friendica_archive_browser/src/settings/settings_controller.dart';
|
||||
import 'package:friendica_archive_browser/src/utils/exec_error.dart';
|
||||
import 'package:friendica_archive_browser/src/utils/temp_file_builder.dart';
|
||||
|
@ -178,7 +178,7 @@ class _GeospatialViewState extends State<GeospatialView> {
|
|||
_logger.finer('Call Geospatial builder');
|
||||
final formatter =
|
||||
Provider.of<SettingsController>(context).dateTimeFormatter;
|
||||
final mapper = Provider.of<PathMappingService>(context);
|
||||
final mapper = Provider.of<FriendicaPathMappingService>(context);
|
||||
|
||||
_updatePostsInBoundsFilter();
|
||||
final map = _buildMap(context, formatter, mapper);
|
||||
|
@ -204,7 +204,7 @@ class _GeospatialViewState extends State<GeospatialView> {
|
|||
}
|
||||
|
||||
Widget _buildPostList(
|
||||
BuildContext context, DateFormat formatter, PathMappingService mapper) {
|
||||
BuildContext context, DateFormat formatter, FriendicaPathMappingService mapper) {
|
||||
_logger.finest(() => 'Building PostList with ${postsInList.length} items');
|
||||
if (postsInList.isEmpty) {
|
||||
return const StandInStatusScreen(
|
||||
|
@ -225,7 +225,7 @@ class _GeospatialViewState extends State<GeospatialView> {
|
|||
}
|
||||
|
||||
Widget _buildMap(
|
||||
BuildContext context, DateFormat formatter, PathMappingService mapper) {
|
||||
BuildContext context, DateFormat formatter, FriendicaPathMappingService mapper) {
|
||||
final settings = Provider.of<SettingsController>(context);
|
||||
|
||||
final shouldDebugCache =
|
||||
|
@ -333,7 +333,7 @@ class _GeospatialViewState extends State<GeospatialView> {
|
|||
}
|
||||
|
||||
Widget _buildMarkerWidget(
|
||||
MarkerData data, DateFormat formatter, PathMappingService mapper) {
|
||||
MarkerData data, DateFormat formatter, FriendicaPathMappingService mapper) {
|
||||
return Positioned(
|
||||
left: data.pos.dx - 16,
|
||||
top: data.pos.dy - 16,
|
||||
|
|
|
@ -5,7 +5,7 @@ import 'package:flutter/material.dart';
|
|||
import 'package:flutter/services.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/components/media_wrapper_component.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/models/friendica_media_attachment.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/path_mapping_service.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/friendica_path_mapping_service.dart';
|
||||
import 'package:friendica_archive_browser/src/settings/settings_controller.dart';
|
||||
import 'package:friendica_archive_browser/src/themes.dart';
|
||||
import 'package:friendica_archive_browser/src/utils/snackbar_status_builder.dart';
|
||||
|
@ -155,7 +155,7 @@ class _MediaSlideShowScreenState extends State<MediaSlideShowScreen> {
|
|||
}
|
||||
|
||||
Future<void> _saveFile(BuildContext context) async {
|
||||
final pathMapper = Provider.of<PathMappingService>(context, listen: false);
|
||||
final pathMapper = Provider.of<FriendicaPathMappingService>(context, listen: false);
|
||||
|
||||
final filename = media.uri.pathSegments.last;
|
||||
final initialPath = pathMapper.toFullPath(media.uri.toFilePath());
|
||||
|
|
|
@ -7,7 +7,7 @@ import 'package:friendica_archive_browser/src/friendica/components/filter_contro
|
|||
import 'package:friendica_archive_browser/src/friendica/models/model_utils.dart';
|
||||
import 'package:friendica_archive_browser/src/models/time_element.dart';
|
||||
import 'package:friendica_archive_browser/src/screens/standin_status_screen.dart';
|
||||
import 'package:friendica_archive_browser/src/services/friendica_archive_service.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/friendica_archive_service.dart';
|
||||
import 'package:friendica_archive_browser/src/utils/snackbar_status_builder.dart';
|
||||
import 'package:logging/logging.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
|
|
|
@ -4,15 +4,15 @@ import 'dart:io';
|
|||
import 'package:flutter/foundation.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/models/friendica_entry_tree_item.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/models/friendica_timeline_entry.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/path_mapping_service.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/friendica_path_mapping_service.dart';
|
||||
import 'package:friendica_archive_browser/src/models/local_image_archive_entry.dart';
|
||||
import 'package:friendica_archive_browser/src/services/friendica_connections.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/friendica_connections.dart';
|
||||
import 'package:friendica_archive_browser/src/utils/exec_error.dart';
|
||||
import 'package:path/path.dart' as p;
|
||||
import 'package:result_monad/result_monad.dart';
|
||||
|
||||
class FriendicaArchiveService extends ChangeNotifier {
|
||||
final PathMappingService pathMappingService;
|
||||
final FriendicaPathMappingService pathMappingService;
|
||||
final Map<String, ImageEntry> _imagesByRequestUrl = {};
|
||||
final List<FriendicaEntryTreeItem> _postEntries = [];
|
||||
final List<FriendicaEntryTreeItem> _orphanedCommentEntries = [];
|
|
@ -4,12 +4,12 @@ import 'package:friendica_archive_browser/src/settings/settings_controller.dart'
|
|||
import 'package:logging/logging.dart';
|
||||
import 'package:path/path.dart' as p;
|
||||
|
||||
class PathMappingService {
|
||||
static final _logger = Logger('$PathMappingService');
|
||||
class FriendicaPathMappingService {
|
||||
static final _logger = Logger('$FriendicaPathMappingService');
|
||||
final SettingsController settings;
|
||||
final _archiveDirectories = <FileSystemEntity>[];
|
||||
|
||||
PathMappingService(this.settings) {
|
||||
FriendicaPathMappingService(this.settings) {
|
||||
refresh();
|
||||
}
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
import 'dart:io';
|
||||
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:friendica_archive_browser/src/services/friendica_archive_service.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/friendica_archive_service.dart';
|
||||
|
||||
import 'friendica/screens/entries_screen.dart';
|
||||
import 'friendica/screens/stats_screen.dart';
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import 'package:friendica_archive_browser/src/friendica/models/friendica_timeline_entry.dart';
|
||||
import 'package:friendica_archive_browser/src/models/friendica_contact.dart';
|
||||
import 'package:friendica_archive_browser/src/services/friendica_connections.dart';
|
||||
import 'package:friendica_archive_browser/src/friendica/services/friendica_connections.dart';
|
||||
|
||||
class TopInteractorsGenerator {
|
||||
final _interactors = <String, InteractorItem>{};
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// ignore_for_file: avoid_print
|
||||
|
||||
import 'package:flutter_test/flutter_test.dart';
|
||||
import 'package:friendica_archive_browser/src/services/diaspora_profile_json_reader.dart';
|
||||
import 'package:friendica_archive_browser/src/diaspora/services/diaspora_profile_json_reader.dart';
|
||||
|
||||
void main() {
|
||||
test('Diaspora Connections Test', () {
|
||||
|
|
Loading…
Reference in a new issue