Skip to content

Commit

Permalink
Merge pull request #160 from kishikawakatsumi/ios
Browse files Browse the repository at this point in the history
Fix iOS example app
  • Loading branch information
kishikawakatsumi authored Nov 17, 2024
2 parents eb0af32 + 89d6003 commit 65e0245
Show file tree
Hide file tree
Showing 5 changed files with 22 additions and 23 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import SMBClient

class DocumentViewController: UIViewController {
private let path: String
private let client: SMBClient
private let treeAccessor: TreeAccessor
private let fileReader: FileReader

private let server: HTTPServer
Expand All @@ -18,10 +18,10 @@ class DocumentViewController: UIViewController {
private var webView = WKWebView()
private var progressBar = UIProgressView(progressViewStyle: .bar)

init(client: SMBClient, path: String) {
self.client = client
init(accessor: TreeAccessor, path: String) {
treeAccessor = accessor
self.path = path
fileReader = client.fileReader(path: path)
fileReader = accessor.fileReader(path: path)

port = UInt16(42000)
server = HTTPServer(port: port, logger: .disabled)
Expand Down
14 changes: 7 additions & 7 deletions Examples/FileBrowser/FileBrowser (iOS)/FilesViewController.swift
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import AVKit
import SMBClient

class FilesViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {
private let client: SMBClient
private let treeAccessor: TreeAccessor
private let path: String
private var files = [File]()

Expand All @@ -16,8 +16,8 @@ class FilesViewController: UIViewController, UITableViewDataSource, UITableViewD
return dateFormatter
}()

init(client: SMBClient, path: String) {
self.client = client
init(accessor: TreeAccessor, path: String) {
treeAccessor = accessor
self.path = path
super.init(nibName: nil, bundle: nil)
}
Expand Down Expand Up @@ -48,7 +48,7 @@ class FilesViewController: UIViewController, UITableViewDataSource, UITableViewD

Task { @MainActor in
do {
let files = try await self.client.listDirectory(path: path)
let files = try await treeAccessor.listDirectory(path: path)
.filter { $0.name != "." && $0.name != ".." && !$0.isHidden }
.sorted { $0.name < $1.name }
self.files.append(contentsOf: files)
Expand Down Expand Up @@ -125,15 +125,15 @@ class FilesViewController: UIViewController, UITableViewDataSource, UITableViewD
}

if file.isDirectory {
let viewController = FilesViewController(client: client, path: subpath)
let viewController = FilesViewController(accessor: treeAccessor, path: subpath)
navigationController?.pushViewController(viewController, animated: true)
} else {
let path = URL(fileURLWithPath: subpath)
if MediaPlayerViewController.supportedExtensions.contains(path.pathExtension) {
let viewController = MediaPlayerViewController(client: client, path: subpath)
let viewController = MediaPlayerViewController(accessor: treeAccessor, path: subpath)
navigationController?.pushViewController(viewController, animated: true)
} else {
let viewController = DocumentViewController(client: client, path: subpath)
let viewController = DocumentViewController(accessor: treeAccessor, path: subpath)
navigationController?.pushViewController(viewController, animated: true)
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,14 @@ class MediaPlayerViewController: UIViewController {
return extensions
}()

private let client: SMBClient
private let treeAccessor: TreeAccessor
private let path: String

private let playerViewController = AVPlayerViewController()
private var observation: NSKeyValueObservation?

init(client: SMBClient, path: String) {
self.client = client
init(accessor: TreeAccessor, path: String) {
treeAccessor = accessor
self.path = path
super.init(nibName: nil, bundle: nil)
}
Expand Down Expand Up @@ -47,7 +47,7 @@ class MediaPlayerViewController: UIViewController {
playerViewController.didMove(toParent: self)

Task { @MainActor in
let asset = SMBAVAsset(client: client, path: path)
let asset = SMBAVAsset(accessor: treeAccessor, path: path)
let playerItem = AVPlayerItem(asset: asset)

let player = AVPlayer(playerItem: playerItem)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -82,13 +82,12 @@ class SharesViewController: UIViewController, UITableViewDataSource, UITableView

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let share = shares[indexPath.row]
Task { @MainActor in
_ = try await client.treeConnect(path: share.name)

let treeAccessor = client.treeAccessor(share: share.name)

let viewController = FilesViewController(client: client, path: "")
viewController.navigationItem.title = share.name

navigationController?.pushViewController(viewController, animated: true)
}
let viewController = FilesViewController(accessor: treeAccessor, path: "")
viewController.navigationItem.title = share.name

navigationController?.pushViewController(viewController, animated: true)
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
"location" : "https://github.com/kishikawakatsumi/SMBClient.git",
"state" : {
"branch" : "main",
"revision" : "fcdfa622401586a32b11a66817ac9c898b6ac3e7"
"revision" : "eb0af3216df0124534c52eac949adc7990e2a337"
}
}
],
Expand Down

0 comments on commit 65e0245

Please sign in to comment.