CocoaPods trunk is moving to be read-only. Read more on the blog, there are 18 months to go.

rebekka 1.0.3

rebekka 1.0.3

TestsTested
LangLanguage SwiftSwift
License BSD 2.0
ReleasedLast Release Oct 2016
SPMSupports SPM

Maintained by Keaton Burleson.



rebekka 1.0.3

  • By
  • Constantine Fry

rebekka

Rebekka - an FTP/FTPS client in Swift. Utilizes CFFTPStream API from CFNetworking.

Implemented FTP commands

  • Directory content listing.
  • Directory creation.
  • File upload/download.

Installation

As Embedded framework (iOS 8.0+)
  1. Add Rebekka as a submodule. git submodule add [email protected]:Constantine-Fry/rebekka.git
  2. Drag-and-drop Rebekka.xcodeproj into your project. The project has two targets: Rebekka.framework for OSX project, RebekkaTouch.framework for iOS projects.
  3. Add new target in “Build Phases” -> “Target Dependencies”.
  4. Click the + button at the top left of the panel and choose “New copy files phase”.
    • Rename the new phase to “Copy Frameworks”.
    • Set the “Destination” to “Frameworks”.
  5. Add Rebekka framework to this phase.

To support iOS 7.0, you can add source code files directly into your project .

Usage

var configuration = SessionConfiguration()
configuration.host = "ftp://ftp.mozilla.org:21"
configuration.encoding = NSUTF8StringEncoding
_session = Session(configuration: configuration)
_session.list("/") {
    (resources, error) -> Void in
    println("List directory with result:\n\(resources), error: \(error)\n\n")
}
var configuration = SessionConfiguration()
configuration.host = "127.0.0.1"
_session = Session(configuration: configuration)
_session.download("/Users/foo/testdownload.png") {
   (fileURL, error) -> Void in
   println("Download file with result:\n\(fileURL), error: \(error)\n\n")
}
var configuration = SessionConfiguration()
configuration.host = "localhost:21"
configuration.username = "optimus"
configuration.password = "rollout"
if let URL = NSBundle.mainBundle().URLForResource("testUpload", withExtension: "png") {
   let path = "/Users/foo/bar/testUpload.png"
   _session.upload(URL, path: path) {
       (result, error) -> Void in
       println("Upload file with result:\n\(result), error: \(error)\n\n")
  }
}

Requirements

Swift 2.0 / iOS 8.0+ / Mac OS X 10.9+

License

The BSD 2-Clause License. See License.txt for details.

Bonn, December 2015.