summaryrefslogtreecommitdiff
path: root/ZeroTier One
diff options
context:
space:
mode:
Diffstat (limited to 'ZeroTier One')
-rw-r--r--ZeroTier One/Info.plist5
-rw-r--r--ZeroTier One/ServiceCom.swift97
-rw-r--r--ZeroTier One/ShowNetworksViewController.swift6
3 files changed, 108 insertions, 0 deletions
diff --git a/ZeroTier One/Info.plist b/ZeroTier One/Info.plist
index f5d0dc94..7a6ab723 100644
--- a/ZeroTier One/Info.plist
+++ b/ZeroTier One/Info.plist
@@ -2,6 +2,11 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
+ <key>NSAppTransportSecurity</key>
+ <dict>
+ <key>NSAllowsArbitraryLoads</key>
+ <true/>
+ </dict>
<key>LSUIElement</key>
<true/>
<key>CFBundleDevelopmentRegion</key>
diff --git a/ZeroTier One/ServiceCom.swift b/ZeroTier One/ServiceCom.swift
new file mode 100644
index 00000000..a1bb0a3c
--- /dev/null
+++ b/ZeroTier One/ServiceCom.swift
@@ -0,0 +1,97 @@
+//
+// ServiceCom.swift
+// ZeroTier One
+//
+// Created by Grant Limberg on 5/16/16.
+// Copyright © 2016 ZeroTier, Inc. All rights reserved.
+//
+
+import Cocoa
+
+class ServiceCom: NSObject {
+ static let baseURL = "http://localhost:9993"
+ static var key: NSString? = "ddeb3b1e6996b6b4f2d12d10"
+
+ static func getNetworkList() {
+
+ let urlString = baseURL + "/network?auth=\(ServiceCom.key!)"
+
+ let url = NSURL(string: urlString)
+
+ if let u = url {
+ let request = NSMutableURLRequest(URL: u)
+ let session = NSURLSession.sharedSession()
+ let task = session.dataTaskWithRequest(request) { (data, response, error) in
+ let httpResponse = response as! NSHTTPURLResponse
+ let status = httpResponse.statusCode
+
+ if status == 200 {
+ do {
+ let json = try NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions())
+ print("\(json)")
+ }
+ catch {
+ print("JSON Error: \(error)")
+ }
+ }
+ }
+
+ task.resume()
+ }
+ else {
+ print("bad URL")
+ }
+ }
+
+
+ static func joinNetwork(network: String) {
+ let urlString = baseURL + "/network/\(network)?auth=\(ServiceCom.key!)"
+ let url = NSURL(string: urlString)
+
+ if let u = url {
+ let request = NSMutableURLRequest(URL: u)
+ request.HTTPMethod = "POST"
+
+ let session = NSURLSession.sharedSession()
+ let task = session.dataTaskWithRequest(request) { (data, response, error) in
+ let httpResponse = response as! NSHTTPURLResponse
+ let status = httpResponse.statusCode
+
+ if status == 200 {
+ print("join ok")
+ }
+ else {
+ print("join error: \(status)")
+ }
+ }
+
+ task.resume()
+ }
+ }
+
+ static func leaveNetwork(network: String) {
+ let urlString = baseURL + "/network/\(network)?auth=\(ServiceCom.key!)"
+ let url = NSURL(string: urlString)
+
+ if let u = url {
+ let request = NSMutableURLRequest(URL: u)
+ request.HTTPMethod = "DELETE"
+
+ let session = NSURLSession.sharedSession()
+ let task = session.dataTaskWithRequest(request) { (data, response, error) in
+ let httpResponse = response as! NSHTTPURLResponse
+ let status = httpResponse.statusCode
+
+ if status == 200 {
+ print("leave ok")
+ }
+ else {
+ print("leave error: \(status)")
+ }
+ }
+
+ task.resume()
+ }
+ }
+
+}
diff --git a/ZeroTier One/ShowNetworksViewController.swift b/ZeroTier One/ShowNetworksViewController.swift
index 8bf84a1c..0e8fd4b6 100644
--- a/ZeroTier One/ShowNetworksViewController.swift
+++ b/ZeroTier One/ShowNetworksViewController.swift
@@ -16,5 +16,11 @@ class ShowNetworksViewController: NSViewController {
super.viewDidLoad()
// Do view setup here.
}
+
+ override func viewWillAppear() {
+ super.viewWillAppear()
+
+ ServiceCom.getNetworkList()
+ }
}