19c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian/*
29c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian * Copyright 2017 The Android Open Source Project
39c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian *
49c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian * Licensed under the Apache License, Version 2.0 (the "License");
59c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian * you may not use this file except in compliance with the License.
69c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian * You may obtain a copy of the License at
79c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian *
89c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian *      http://www.apache.org/licenses/LICENSE-2.0
99c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian *
109c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian * Unless required by applicable law or agreed to in writing, software
119c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian * distributed under the License is distributed on an "AS IS" BASIS,
129c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
139c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian * See the License for the specific language governing permissions and
149c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian * limitations under the License.
159c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian */
169c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian
179c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulianpackage android.app.servertransaction;
189c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian
199c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian/**
209c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian * Base interface for all lifecycle items that can be put in object pool.
219c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian * @hide
229c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian */
239c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulianpublic interface ObjectPoolItem {
249c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian    /**
259c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian     * Clear the contents of the item and putting it to a pool. The implementation should call
269c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian     * {@link ObjectPool#recycle(ObjectPoolItem)} passing itself.
279c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian     */
289c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian    void recycle();
299c5ea9c153fcc1f0fd2cfd35a77f26bf2849c48eAndrii Kulian}
30