content: package com.ftinc.scoop;
  
  import android.support.annotation.StyleRes;
  
  /**
   * This object represents a styled 'Theme' from the resource attributes
   *
   * Project: ThemeEngineTest
   * Package: com.ftinc.scoop.model
   * Created by drew.heavner on 6/7/16.
   */
  public final class Flavor {
  
      /***********************************************************************************************
       *
       * Variables
       *
       */
  
      private final String mName;
      private final int mStyleResource;
      private final int mDialogStyleResource;
      private final boolean mIsDayNight;
  
      /***********************************************************************************************
       *
       * Constructors
       *
       */
  
      public Flavor(String name, int styleResource){
          this(name, styleResource, -1);
      }
  
      public Flavor(String name, int styleResource, int dialogStyleResource){
          this(name, styleResource, dialogStyleResource, false);
      }
  
      public Flavor(String name, int styleResource, int dialogStyleResource, boolean isDayNight){
          mName = name;
          mStyleResource = styleResource;
          mDialogStyleResource = dialogStyleResource;
          mIsDayNight = isDayNight;
      }
      
      /***********************************************************************************************
       * 
       * Getters
       * 
       */
  
      public String getName() {
          return mName;
      }
  
      @StyleRes
      public int getStyleResource() {
          return mStyleResource;
      }
  
      @StyleRes
      public int getDialogStyleResource(){
          return mDialogStyleResource;
      }
  
      public boolean isDayNight() {
          return mIsDayNight;
      }
  
      /***********************************************************************************************
       *
       * Base Methods
       *
       */
  
      @Override
      public String toString() {
          return "Flavor{" +
                  "mName='" + mName + '\'' +
                  ", mStyleResource=" + mStyleResource +
                  ", mDialogStyleResource=" + mDialogStyleResource +
                  ", mIsDayNight=" + mIsDayNight +
                  '}';
      }
  
      @Override
      public boolean equals(Object o) {
          if (this == o) return true;
          if (o == null || getClass() != o.getClass()) return false;
  
          Flavor flavor = (Flavor) o;
  
          if (mStyleResource != flavor.mStyleResource) return false;
          if (mDialogStyleResource != flavor.mDialogStyleResource) return false;
          if (mIsDayNight != flavor.mIsDayNight) return false;
          return mName != null ? mName.equals(flavor.mName) : flavor.mName == null;
  
      }
  
      @Override
      public int hashCode() {
          int result = mName != null ? mName.hashCode() : 0;
          result = 31 * result + mStyleResource;
          result = 31 * result + mDialogStyleResource;
          result = 31 * result + (mIsDayNight ? 1 : 0);
          return result;
      }
  }
  