| // Copyright 2014 The Flutter Authors. All rights reserved. | |
| // Use of this source code is governed by a BSD-style license that can be | |
| // found in the LICENSE file. | |
| import '../ios/ios_workflow.dart'; | |
| import '../ios/plist_parser.dart'; | |
| import '../ios/simulators.dart'; | |
| import '../ios/xcodeproj.dart'; | |
| import '../macos/cocoapods.dart'; | |
| import '../macos/cocoapods_validator.dart'; | |
| import '../macos/xcdevice.dart'; | |
| import '../macos/xcode.dart'; | |
| /// Holds Apple-specific dependencies. | |
| class AppleContext { | |
| AppleContext({ | |
| required this.cocoaPods, | |
| required this.cocoapodsValidator, | |
| required this.iosSimulatorUtils, | |
| required this.iosWorkflow, | |
| required this.plistParser, | |
| required this.xcdevice, | |
| required this.xcode, | |
| required this.xcodeProjectInterpreter, | |
| }); | |
| /// Interacts with and executes CocoaPods dependency management commands. | |
| final CocoaPods cocoaPods; | |
| /// Validates the host CocoaPods installation health and doctor status. | |
| final CocoaPodsValidator cocoapodsValidator; | |
| /// Manages discovery, booting, and queries for iOS simulator devices. | |
| final IOSSimulatorUtils iosSimulatorUtils; | |
| /// Evaluates host readiness and toolchain requirements for iOS workflows. | |
| final IOSWorkflow iosWorkflow; | |
| /// Parses Apple Property List (`.plist`) XML and binary format files. | |
| final PlistParser plistParser; | |
| /// Discovers and interacts with physical iOS devices attached to the host. | |
| final XCDevice xcdevice; | |
| /// Inspects and validates the host Xcode installation and SDK version compliance. | |
| final Xcode xcode; | |
| /// Evaluates Xcode project settings, schemes, and target configurations. | |
| final XcodeProjectInterpreter xcodeProjectInterpreter; | |
| } |