Skip to content

Instantly share code, notes, and snippets.

View sauvikatinnofied's full-sized avatar

Sauvik Dolui sauvikatinnofied

View GitHub Profile
func networkStatusDidChange(status: Reachability.NetworkStatus) {
switch status {
case .notReachable:
debugPrint("ViewController: Network became unreachable")
case .reachableViaWiFi:
debugPrint("ViewController: Network reachable through WiFi")
case .reachableViaWWAN:
debugPrint("ViewController: Network reachable through Cellular Data")
}
extension ViewController: NetworkStatusListener {
func networkStatusDidChange(status: Reachability.NetworkStatus) {
switch status {
case .notReachable:
debugPrint("ViewController: Network became unreachable")
case .reachableViaWiFi:
debugPrint("ViewController: Network reachable through WiFi")
case .reachableViaWWAN:
@sauvikatinnofied
sauvikatinnofied / AddRemoveListener.swift
Last active January 19, 2017 15:07
Medium Blog Post Gists
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
ReachabilityManager.shared.addListener(listener: self)
}
override func viewDidDisappear(_ animated: Bool) {
super.viewDidDisappear(animated)
ReachabilityManager.shared.removeListener(listener: self)
}
@sauvikatinnofied
sauvikatinnofied / LoginButtonIBOutlet.swift
Created October 24, 2016 07:57
Medium Blogpost Code Snippet
// IBOutlets
@IBOutlet var loginButton: UIButton!
@sauvikatinnofied
sauvikatinnofied / ReachabilityManagerStartStop.swift
Created October 24, 2016 06:18
Medium Blog Post Code Snippet
// Start
ReachabilityManager.shared.startMonitoring()
// Stop
ReachabilityManager.shared.stopMonitoring()
@sauvikatinnofied
sauvikatinnofied / ReachabilityChangedFinalFunc.swift
Last active January 19, 2017 15:09
Medium Blog Post Code Snippet
/// Called whenever there is a change in NetworkReachibility Status
///
/// — parameter notification: Notification with the Reachability instance
func reachabilityChanged(notification: Notification) {
let reachability = notification.object as! Reachability
switch reachability.currentReachabilityStatus {
case .notReachable:
debugPrint("Network became unreachable")
@sauvikatinnofied
sauvikatinnofied / AdditionInReachabilityChangedFunc.swift
Last active January 19, 2017 15:04
Medium Blog Post Code Snippet
// Sending message to each of the listeners
for listener in listeners {
listener.networkStatusDidChange(status: reachability.currentReachabilityStatus)
}
@sauvikatinnofied
sauvikatinnofied / HelperMethods.swift
Last active January 19, 2017 15:06
Medium Blog Post Code Snippet
/// Adds a new listener to the listeners array
///
/// - parameter delegate: a new listener
func addListener(listener: NetworkStatusListener){
listeners.append(listener)
}
/// Removes a listener from listeners array
///
/// - parameter delegate: the listener which is to be removed
@sauvikatinnofied
sauvikatinnofied / ListenersArray.swift
Last active January 19, 2017 15:07
Medium Blog Post Code Snippet
// 6. Array of delegates which are interested to listen to network status change
var listeners = [NetworkStatusListener]()
@sauvikatinnofied
sauvikatinnofied / NetworkStatusListener.swift
Last active January 19, 2017 15:08
Medium Blog Post Code Snippet
/// Protocol for listenig network status change
public protocol NetworkStatusListener : class {
func networkStatusDidChange(status: Reachability.NetworkStatus)
}