@@ -131,6 +131,15 @@ func handleConfEncryptKeyLength(v string, c *Configuration) error {
131131 return nil
132132}
133133
134+ func handleTimeout (v string , c * Configuration ) error {
135+ i , err := strconv .Atoi (v )
136+ if err != nil {
137+ return errors .Errorf ("timeout is numeric > 0, got: %s" , v )
138+ }
139+ c .Timeout = i
140+ return nil
141+ }
142+
134143func handleConfPermissions (v string , c * Configuration ) error {
135144 i , err := strconv .Atoi (v )
136145 if err != nil {
@@ -167,49 +176,12 @@ func handleDateFormat(v string, c *Configuration) error {
167176 return nil
168177}
169178
170- func handleOptimize (k , v string , c * Configuration ) error {
171- v = strings .ToLower (v )
172- if v != "true" && v != "false" {
173- return errors .Errorf ("config key %s is boolean" , k )
174- }
175- c .Optimize = v == "true"
176- return nil
177- }
178-
179- func handleOptimizeResourceDicts (k , v string , c * Configuration ) error {
179+ func boolean (k , v string ) (bool , error ) {
180180 v = strings .ToLower (v )
181181 if v != "true" && v != "false" {
182- return errors .Errorf ("config key %s is boolean" , k )
182+ return false , errors .Errorf ("config key %s is boolean" , k )
183183 }
184- c .OptimizeResourceDicts = v == "true"
185- return nil
186- }
187-
188- func handleOptimizeDuplicateContentStreams (k , v string , c * Configuration ) error {
189- v = strings .ToLower (v )
190- if v != "true" && v != "false" {
191- return errors .Errorf ("config key %s is boolean" , k )
192- }
193- c .OptimizeDuplicateContentStreams = v == "true"
194- return nil
195- }
196-
197- func handleCreateBookmarks (k , v string , c * Configuration ) error {
198- v = strings .ToLower (v )
199- if v != "true" && v != "false" {
200- return errors .Errorf ("config key %s is boolean" , k )
201- }
202- c .CreateBookmarks = v == "true"
203- return nil
204- }
205-
206- func handleNeedAppearances (k , v string , c * Configuration ) error {
207- v = strings .ToLower (v )
208- if v != "true" && v != "false" {
209- return errors .Errorf ("config key %s is boolean" , k )
210- }
211- c .NeedAppearances = v == "true"
212- return nil
184+ return v == "true" , nil
213185}
214186
215187func parseKeysPart1 (k , v string , c * Configuration ) (bool , error ) {
@@ -243,44 +215,50 @@ func parseKeysPart1(k, v string, c *Configuration) (bool, error) {
243215 return false , nil
244216}
245217
246- func parseKeysPart2 (k , v string , c * Configuration ) error {
218+ func parseKeysPart2 (k , v string , c * Configuration ) ( err error ) {
247219 switch k {
248220
249221 case "encryptUsingAES" :
250- return handleConfEncryptUsingAES (k , v , c )
222+ err = handleConfEncryptUsingAES (k , v , c )
251223
252224 case "encryptKeyLength" :
253- return handleConfEncryptKeyLength (v , c )
225+ err = handleConfEncryptKeyLength (v , c )
254226
255227 case "permissions" :
256- return handleConfPermissions (v , c )
228+ err = handleConfPermissions (v , c )
257229
258230 case "unit" , "units" :
259- return handleConfUnit (v , c )
231+ err = handleConfUnit (v , c )
260232
261233 case "timestampFormat" :
262- return handleTimestampFormat (v , c )
234+ err = handleTimestampFormat (v , c )
263235
264236 case "dateFormat" :
265- return handleDateFormat (v , c )
237+ err = handleDateFormat (v , c )
266238
267239 case "optimize" :
268- return handleOptimize (k , v , c )
240+ c . Optimize , err = boolean (k , v )
269241
270242 case "optimizeResourceDicts" :
271- return handleOptimizeResourceDicts (k , v , c )
243+ c . OptimizeResourceDicts , err = boolean (k , v )
272244
273245 case "optimizeDuplicateContentStreams" :
274- return handleOptimizeDuplicateContentStreams (k , v , c )
246+ c . OptimizeDuplicateContentStreams , err = boolean (k , v )
275247
276248 case "createBookmarks" :
277- return handleCreateBookmarks (k , v , c )
249+ c . CreateBookmarks , err = boolean (k , v )
278250
279251 case "needAppearances" :
280- return handleNeedAppearances (k , v , c )
252+ c .NeedAppearances , err = boolean (k , v )
253+
254+ case "offline" :
255+ c .Offline , err = boolean (k , v )
256+
257+ case "timeout" :
258+ handleTimeout (v , c )
281259 }
282260
283- return nil
261+ return err
284262}
285263
286264func parseKeyValue (k , v string , c * Configuration ) error {
0 commit comments