1 /* 2 * Copyright (C) 2019 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 package com.android.tv.common.flags.impl; 17 18 import com.google.auto.value.AutoValue; 19 import com.android.tv.common.flags.LegacyFlags; 20 21 /** Default {@link LegacyFlags}. */ 22 @AutoValue 23 public abstract class DefaultLegacyFlags implements LegacyFlags { 24 public static final DefaultLegacyFlags DEFAULT = DefaultLegacyFlags.builder().build(); 25 builder()26 public static Builder builder() { 27 return new AutoValue_DefaultLegacyFlags.Builder() 28 .compiled(true) 29 .enableDeveloperFeatures(false) 30 .enableQaFeatures(false) 31 .enableUnratedContentSettings(false); 32 } 33 34 /** Builder for {@link LegacyFlags} */ 35 @AutoValue.Builder 36 public abstract static class Builder { compiled(boolean value)37 public abstract Builder compiled(boolean value); 38 enableDeveloperFeatures(boolean value)39 public abstract Builder enableDeveloperFeatures(boolean value); 40 enableQaFeatures(boolean value)41 public abstract Builder enableQaFeatures(boolean value); 42 enableUnratedContentSettings(boolean value)43 public abstract Builder enableUnratedContentSettings(boolean value); 44 build()45 public abstract DefaultLegacyFlags build(); 46 } 47 } 48