// Path: src/main/java/com/papercut/dust/auth/AuthConfig.java
// public class AuthConfig {
// 
//     @JsonProperty("clientId")
//     private String clientId;
// 
//     @JsonProperty("hostedDomain")
//     private String hostedDomain;
// 
//     private String authenticationCachePolicy;
// 
//     public String getClientId() {
//         return clientId;
//     }
// 
//     public void setClientId(final String clientId) {
//         this.clientId = clientId;
//     }
// 
//     @Nullable
//     public String getHostedDomain() {
//         return hostedDomain;
//     }
// 
//     public void setHostedDomain(final String hostedDomain) {
//         this.hostedDomain = hostedDomain;
//     }
// 
//     @JsonProperty("authenticationCachePolicy")
//     public CacheBuilderSpec getAuthenticationCachePolicy() {
//         return CacheBuilderSpec.parse(authenticationCachePolicy);
//     }
// 
//     public void setAuthenticationCachePolicy(final String authenticationCachePolicy) {
//         this.authenticationCachePolicy = authenticationCachePolicy;
//     }
// }
// 
// Path: src/main/java/com/papercut/dust/slack/SlackConfig.java
// public class SlackConfig {
// 
//     @JsonProperty("botToken")
//     private String botToken;
// 
//     @JsonProperty("commandVerificationTokens")
//     private List<String> commandVerificationTokens;
// 
//     @JsonProperty("help")
//     private String help;
// 
//     @JsonProperty("botUsername")
//     private String botUsername;
// 
//     @JsonProperty("channel")
//     private String channel;
// 
//     @JsonProperty("pinningChannel")
//     private String pinningChannel;
// 
//     public String getBotToken() {
//         return botToken;
//     }
// 
//     public void setBotToken(final String slackBotAuthToken) {
//         this.botToken = slackBotAuthToken;
//     }
// 
//     public List<String> getCommandVerificationTokens() {
//         return commandVerificationTokens;
//     }
// 
//     public void setCommandVerificationTokens(final List<String> commandVerificationTokens) {
//         this.commandVerificationTokens = commandVerificationTokens;
//     }
// 
//     public String getBotUsername() {
//         return botUsername;
//     }
// 
//     public void setBotUsername(final String botUsername) {
//         this.botUsername = botUsername;
//     }
// 
//     public String getHelp() {
//         return help;
//     }
// 
//     public void setHelp(String help) {
//         this.help = help;
//     }
// 
//     public String getChannel() {
//         return channel;
//     }
// 
//     public void setChannel(String channel) {
//         this.channel = channel;
//     }
// 
//     public String getPinningChannel() {
//         return pinningChannel;
//     }
// 
//     public void setPinningChannel(String pinningChannel) {
//         this.pinningChannel = pinningChannel;
//     }
// 
//     public boolean configured() {
//         return StringUtils.isNotBlank(getBotToken())
//                 && commandVerificationTokens != null && !commandVerificationTokens.isEmpty();
//     }
// 
// }


import com.papercut.dust.auth.AuthConfig;
import com.papercut.dust.slack.SlackConfig;
import io.dropwizard.Configuration;
/*
 * Copyright (c) 2017 PaperCut Software International Pty. Ltd.
 *
 * https://www.papercut.com
 *
 * Use of this source code is governed by an MIT license.
 * See the project's LICENSE file for more information.
 */
package com.papercut.dust;


/**
 * Configuration wrapper class.
 */
public class DeviceUsageTrackerConfig extends Configuration {

    private AuthConfig authConfig;
    private SlackConfig slackConfig;

// Path: src/main/java/com/papercut/dust/auth/AuthConfig.java
// public class AuthConfig {
// 
//     @JsonProperty("clientId")
//     private String clientId;
// 
//     @JsonProperty("hostedDomain")
//     private String hostedDomain;
// 
//     private String authenticationCachePolicy;
// 
//     public String getClientId() {
//         return clientId;
//     }
// 
//     public void setClientId(final String clientId) {
//         this.clientId = clientId;
//     }
// 
//     @Nullable
//     public String getHostedDomain() {
//         return hostedDomain;
//     }
// 
//     public void setHostedDomain(final String hostedDomain) {
//         this.hostedDomain = hostedDomain;
//     }
// 
//     @JsonProperty("authenticationCachePolicy")
//     public CacheBuilderSpec getAuthenticationCachePolicy() {
//         return CacheBuilderSpec.parse(authenticationCachePolicy);
//     }
// 
//     public void setAuthenticationCachePolicy(final String authenticationCachePolicy) {
//         this.authenticationCachePolicy = authenticationCachePolicy;
//     }
// }
// 
// Path: src/main/java/com/papercut/dust/slack/SlackConfig.java
// public class SlackConfig {
// 
//     @JsonProperty("botToken")
//     private String botToken;
// 
//     @JsonProperty("commandVerificationTokens")
//     private List<String> commandVerificationTokens;
// 
//     @JsonProperty("help")
//     private String help;
// 
//     @JsonProperty("botUsername")
//     private String botUsername;
// 
//     @JsonProperty("channel")
//     private String channel;
// 
//     @JsonProperty("pinningChannel")
//     private String pinningChannel;
// 
//     public String getBotToken() {
//         return botToken;
//     }
// 
//     public void setBotToken(final String slackBotAuthToken) {
//         this.botToken = slackBotAuthToken;
//     }
// 
//     public List<String> getCommandVerificationTokens() {
//         return commandVerificationTokens;
//     }
// 
//     public void setCommandVerificationTokens(final List<String> commandVerificationTokens) {
//         this.commandVerificationTokens = commandVerificationTokens;
//     }
// 
//     public String getBotUsername() {
//         return botUsername;
//     }
// 
//     public void setBotUsername(final String botUsername) {
//         this.botUsername = botUsername;
//     }
// 
//     public String getHelp() {
//         return help;
//     }
// 
//     public void setHelp(String help) {
//         this.help = help;
//     }
// 
//     public String getChannel() {
//         return channel;
//     }
// 
//     public void setChannel(String channel) {
//         this.channel = channel;
//     }
// 
//     public String getPinningChannel() {
//         return pinningChannel;
//     }
// 
//     public void setPinningChannel(String pinningChannel) {
//         this.pinningChannel = pinningChannel;
//     }
// 
//     public boolean configured() {
//         return StringUtils.isNotBlank(getBotToken())
//                 && commandVerificationTokens != null && !commandVerificationTokens.isEmpty();
//     }
// 
// }


// Path: src/main/java/com/papercut/dust/DeviceUsageTrackerConfig.java
import com.papercut.dust.auth.AuthConfig;
import com.papercut.dust.slack.SlackConfig;
import io.dropwizard.Configuration;

/*
 * Copyright (c) 2017 PaperCut Software International Pty. Ltd.
 *
 * https://www.papercut.com
 *
 * Use of this source code is governed by an MIT license.
 * See the project's LICENSE file for more information.
 */
package com.papercut.dust;


/**
 * Configuration wrapper class.
 */
public class DeviceUsageTrackerConfig extends Configuration {

    private AuthConfig authConfig;
    private SlackConfig slackConfig;

    public SlackConfig getSlackConfig() {