16ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko/* 26ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko * Copyright (C) 2016 The Android Open Source Project 36ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko * 46ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko * Licensed under the Apache License, Version 2.0 (the "License"); 56ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko * you may not use this file except in compliance with the License. 66ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko * You may obtain a copy of the License at 76ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko * 86ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko * http://www.apache.org/licenses/LICENSE-2.0 96ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko * 106ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko * Unless required by applicable law or agreed to in writing, software 116ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko * distributed under the License is distributed on an "AS IS" BASIS, 126ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 136ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko * See the License for the specific language governing permissions and 146ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko * limitations under the License. 156ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko */ 166ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko 176ebde20b03db4c0d57f67acaac11832b610b966bNick Chalkopackage com.android.tv.dvr.ui; 186ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko 196ebde20b03db4c0d57f67acaac11832b610b966bNick Chalkoimport android.support.annotation.NonNull; 206ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko 216ebde20b03db4c0d57f67acaac11832b610b966bNick Chalkoimport com.android.tv.common.SoftPreconditions; 226ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko 236ebde20b03db4c0d57f67acaac11832b610b966bNick Chalkoimport java.util.HashMap; 246ebde20b03db4c0d57f67acaac11832b610b966bNick Chalkoimport java.util.Map; 256ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko 266ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko/** 276ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko * Stores the object to pass through activities/fragments. 286ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko */ 296ebde20b03db4c0d57f67acaac11832b610b966bNick Chalkopublic class BigArguments { 306ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko private final static String TAG = "BigArguments"; 316ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko private static Map<String, Object> sBigArgumentMap = new HashMap<>(); 326ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko 336ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko /** 346ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko * Sets the argument. 356ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko */ 366ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko public static void setArgument(String name, @NonNull Object value) { 376ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko SoftPreconditions.checkState(value != null, TAG, "Set argument, but value is null"); 386ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko sBigArgumentMap.put(name, value); 396ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko } 406ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko 416ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko /** 426ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko * Returns the argument which is associated to the name. 436ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko */ 446ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko public static Object getArgument(String name) { 456ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko return sBigArgumentMap.get(name); 466ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko } 476ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko 486ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko /** 496ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko * Resets the arguments. 506ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko */ 516ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko public static void reset() { 526ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko sBigArgumentMap.clear(); 536ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko } 546ebde20b03db4c0d57f67acaac11832b610b966bNick Chalko} 55