16ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets/* 26ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets * Copyright (C) 2017 The Android Open Source Project 36ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets * 46ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets * Licensed under the Apache License, Version 2.0 (the "License"); 56ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets * you may not use this file except in compliance with the License. 66ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets * You may obtain a copy of the License at 76ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets * 86ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets * http://www.apache.org/licenses/LICENSE-2.0 96ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets * 106ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets * Unless required by applicable law or agreed to in writing, software 116ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets * distributed under the License is distributed on an "AS IS" BASIS, 126ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 136ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets * See the License for the specific language governing permissions and 146ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets * limitations under the License. 156ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets */ 166ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets 17bdc4c86d3dff74f6634a38e2f7b316b0e823a2c8Alan Viverettepackage androidx.lifecycle; 186ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets 196ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets/** 206ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets * {@link LiveData} which publicly exposes {@link #setValue(T)} and {@link #postValue(T)} method. 216ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets * 226ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets * @param <T> The type of data hold by this instance 236ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets */ 246ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets@SuppressWarnings("WeakerAccess") 256ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinetspublic class MutableLiveData<T> extends LiveData<T> { 266ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets @Override 276ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets public void postValue(T value) { 286ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets super.postValue(value); 296ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets } 306ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets 316ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets @Override 326ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets public void setValue(T value) { 336ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets super.setValue(value); 346ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets } 356ca8525782f16bcb4403dc692a1fefd77934aa31Sergey Vasilinets} 36