22// OTPToken.swift
33// OneTimePassword
44//
5- // Copyright (c) 2013-2016 Matt Rubin and the OneTimePassword authors
5+ // Copyright (c) 2013-2017 Matt Rubin and the OneTimePassword authors
66//
77// Permission is hereby granted, free of charge, to any person obtaining a copy
88// of this software and associated documentation files (the "Software"), to deal
2626import Foundation
2727import OneTimePassword
2828
29- // swiftlint:disable missing_docs
30-
3129/// `OTPToken` is a mutable, Objective-C-compatible wrapper around `OneTimePassword.Token`. For more
3230/// information about its properties and methods, consult the underlying `OneTimePassword`
3331/// documentation.
@@ -36,21 +34,21 @@ public final class OTPToken: NSObject {
3634
3735 public var name : String = OTPToken . defaultName
3836 public var issuer : String = OTPToken . defaultIssuer
39- public var type : OTPTokenType = . Timer
40- public var secret : NSData = NSData ( )
37+ public var type : OTPTokenType = . timer
38+ public var secret : Data = Data ( )
4139 public var algorithm : OTPAlgorithm = OTPToken . defaultAlgorithm
4240 public var digits : UInt = OTPToken . defaultDigits
43- public var period : NSTimeInterval = OTPToken . defaultPeriod
41+ public var period : TimeInterval = OTPToken . defaultPeriod
4442 public var counter : UInt64 = OTPToken . defaultInitialCounter
4543
4644 private static let defaultName : String = " "
4745 private static let defaultIssuer : String = " "
48- private static let defaultAlgorithm : OTPAlgorithm = . SHA1
46+ private static let defaultAlgorithm : OTPAlgorithm = . sha1
4947 private static var defaultDigits : UInt = 6
5048 private static var defaultInitialCounter : UInt64 = 0
51- private static var defaultPeriod : NSTimeInterval = 30
49+ private static var defaultPeriod : TimeInterval = 30
5250
53- private func updateWithToken ( token: Token ) {
51+ private func update ( with token: Token ) {
5452 self . name = token. name
5553 self . issuer = token. issuer
5654
@@ -59,18 +57,18 @@ public final class OTPToken: NSObject {
5957 self . digits = UInt ( token. generator. digits)
6058
6159 switch token. generator. factor {
62- case let . Counter ( counter) :
63- self . type = . Counter
60+ case let . counter ( counter) :
61+ self . type = . counter
6462 self . counter = counter
65- case let . Timer ( period) :
66- self . type = . Timer
63+ case let . timer ( period) :
64+ self . type = . timer
6765 self . period = period
6866 }
6967 }
7068
71- private convenience init ( token: Token ) {
69+ fileprivate convenience init ( token: Token ) {
7270 self . init ( )
73- updateWithToken ( token)
71+ update ( with : token)
7472 }
7573
7674 public func validate( ) -> Bool {
@@ -79,18 +77,20 @@ public final class OTPToken: NSObject {
7977}
8078
8179public extension OTPToken {
82- static func tokenWithURL( url: NSURL ) -> Self ? {
83- return tokenWithURL ( url, secret: nil )
80+ @objc ( tokenWithURL: )
81+ static func token( from url: URL ) -> Self ? {
82+ return token ( from: url, secret: nil )
8483 }
8584
86- static func tokenWithURL( url: NSURL , secret: NSData ? ) -> Self ? {
85+ @objc ( tokenWithURL: secret: )
86+ static func token( from url: URL , secret: Data ? ) -> Self ? {
8787 guard let token = Token ( url: url, secret: secret) else {
8888 return nil
8989 }
9090 return self . init ( token: token)
9191 }
9292
93- func url( ) -> NSURL ? {
93+ func url( ) -> URL ? {
9494 guard let token = tokenForOTPToken ( self ) else {
9595 return nil
9696 }
@@ -102,33 +102,33 @@ public extension OTPToken {
102102
103103@objc
104104public enum OTPTokenType : UInt8 {
105- case Counter
106- case Timer
105+ case counter
106+ case timer
107107}
108108
109109@objc
110110public enum OTPAlgorithm : UInt32 {
111- case SHA1
112- case SHA256
113- case SHA512
111+ @ objc ( OTPAlgorithmSHA1 ) case sha1
112+ @ objc ( OTPAlgorithmSHA256 ) case sha256
113+ @ objc ( OTPAlgorithmSHA512 ) case sha512
114114}
115115
116116// MARK: Conversion
117117
118118private extension OTPAlgorithm {
119119 init ( _ generatorAlgorithm: Generator . Algorithm ) {
120120 switch generatorAlgorithm {
121- case . SHA1 :
122- self = . SHA1
123- case . SHA256 :
124- self = . SHA256
125- case . SHA512 :
126- self = . SHA512
121+ case . sha1 :
122+ self = . sha1
123+ case . sha256 :
124+ self = . sha256
125+ case . sha512 :
126+ self = . sha512
127127 }
128128 }
129129}
130130
131- private func tokenForOTPToken( otpToken: OTPToken ) -> Token ? {
131+ private func tokenForOTPToken( _ otpToken: OTPToken ) -> Token ? {
132132 guard let generator = Generator (
133133 factor: factorForOTPToken ( otpToken) ,
134134 secret: otpToken. secret,
@@ -140,22 +140,22 @@ private func tokenForOTPToken(otpToken: OTPToken) -> Token? {
140140 return Token ( name: otpToken. name, issuer: otpToken. issuer, generator: generator)
141141}
142142
143- private func factorForOTPToken( otpToken: OTPToken ) -> Generator . Factor {
143+ private func factorForOTPToken( _ otpToken: OTPToken ) -> Generator . Factor {
144144 switch otpToken. type {
145- case . Counter :
146- return . Counter ( otpToken. counter)
147- case . Timer :
148- return . Timer ( period: otpToken. period)
145+ case . counter :
146+ return . counter ( otpToken. counter)
147+ case . timer :
148+ return . timer ( period: otpToken. period)
149149 }
150150}
151151
152- private func algorithmForOTPAlgorithm( algorithm: OTPAlgorithm ) -> Generator . Algorithm {
152+ private func algorithmForOTPAlgorithm( _ algorithm: OTPAlgorithm ) -> Generator . Algorithm {
153153 switch algorithm {
154- case . SHA1 :
155- return . SHA1
156- case . SHA256 :
157- return . SHA256
158- case . SHA512 :
159- return . SHA512
154+ case . sha1 :
155+ return . sha1
156+ case . sha256 :
157+ return . sha256
158+ case . sha512 :
159+ return . sha512
160160 }
161161}
0 commit comments