org.xbmc.kore.ui.AbstractFragment.java Source code

Java tutorial

Introduction

Here is the source code for org.xbmc.kore.ui.AbstractFragment.java

Source

/*
 * Copyright 2017 Martijn Brekhof. All rights reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.xbmc.kore.ui;

import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;

public class AbstractFragment extends Fragment {

    private AbstractInfoFragment.DataHolder dataHolder;

    public void setDataHolder(AbstractInfoFragment.DataHolder dataHolder) {
        this.dataHolder = dataHolder;
        Bundle bundle = getArguments();
        if (bundle == null) {
            setArguments(dataHolder.getBundle());
        } else {
            bundle.putAll(dataHolder.getBundle());
        }
    }

    public AbstractInfoFragment.DataHolder getDataHolder() {
        return dataHolder;
    }

    @Override
    public void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        if (this.dataHolder == null) {
            this.dataHolder = new AbstractInfoFragment.DataHolder(-1);
        }

        this.dataHolder.setBundle(getArguments());
    }

    public static class DataHolder {
        static final String POSTER_TRANS_NAME = "POSTER_TRANS_NAME";
        static final String BUNDLE_KEY_ID = "id";
        static final String BUNDLE_KEY_TITLE = "title";
        static final String BUNDLE_KEY_UNDERTITLE = "undertitle";
        static final String BUNDLE_KEY_DESCRIPTION = "description";
        static final String BUNDLE_KEY_DETAILS = "details";
        static final String BUNDLE_KEY_POSTERURL = "poster";
        static final String BUNDLE_KEY_FANARTURL = "fanart";
        static final String BUNDLE_KEY_SQUAREPOSTER = "squareposter";
        static final String BUNDLE_KEY_RATING = "rating";
        static final String BUNDLE_KEY_MAXRATING = "maxrating";
        static final String BUNDLE_KEY_VOTES = "votes";

        private Bundle bundle;

        private DataHolder() {
        }

        public DataHolder(Bundle bundle) {
            setBundle(bundle);
        }

        public DataHolder(int itemId) {
            bundle = new Bundle();
            bundle.putInt(BUNDLE_KEY_ID, itemId);
        }

        public void setBundle(Bundle bundle) {
            this.bundle = bundle;
        }

        public void setPosterTransitionName(String posterTransitionName) {
            bundle.putString(POSTER_TRANS_NAME, posterTransitionName);
        }

        public void setSquarePoster(boolean squarePoster) {
            bundle.putBoolean(BUNDLE_KEY_SQUAREPOSTER, squarePoster);
        }

        public void setRating(double rating) {
            bundle.putDouble(BUNDLE_KEY_RATING, rating);
        }

        public void setMaxRating(int maxRating) {
            bundle.putInt(BUNDLE_KEY_MAXRATING, maxRating);
        }

        public void setVotes(int votes) {
            bundle.putInt(BUNDLE_KEY_VOTES, votes);
        }

        public void setPosterUrl(String posterUrl) {
            bundle.putString(BUNDLE_KEY_POSTERURL, posterUrl);
        }

        public void setTitle(String title) {
            bundle.putString(BUNDLE_KEY_TITLE, title);
        }

        public void setUndertitle(String underTitle) {
            bundle.putString(BUNDLE_KEY_UNDERTITLE, underTitle);
        }

        public void setDescription(String description) {
            bundle.putString(BUNDLE_KEY_DESCRIPTION, description);
        }

        public void setDetails(String details) {
            bundle.putString(BUNDLE_KEY_DETAILS, details);
        }

        public void setFanArtUrl(String fanArtUrl) {
            bundle.putString(BUNDLE_KEY_FANARTURL, fanArtUrl);
        }

        public void setId(int id) {
            bundle.putInt(BUNDLE_KEY_ID, id);
        }

        public String getPosterTransitionName() {
            return bundle.getString(POSTER_TRANS_NAME);
        }

        public boolean getSquarePoster() {
            return bundle.getBoolean(BUNDLE_KEY_SQUAREPOSTER);
        }

        public double getRating() {
            return bundle.getDouble(BUNDLE_KEY_RATING);
        }

        public int getMaxRating() {
            return bundle.getInt(BUNDLE_KEY_MAXRATING);
        }

        public int getVotes() {
            return bundle.getInt(BUNDLE_KEY_VOTES);
        }

        public String getPosterUrl() {
            return bundle.getString(BUNDLE_KEY_POSTERURL);
        }

        public String getTitle() {
            return bundle.getString(BUNDLE_KEY_TITLE);
        }

        public String getUnderTitle() {
            return bundle.getString(BUNDLE_KEY_UNDERTITLE);
        }

        public String getDescription() {
            return bundle.getString(BUNDLE_KEY_DESCRIPTION);
        }

        public String getDetails() {
            return bundle.getString(BUNDLE_KEY_DETAILS);
        }

        public String getFanArtUrl() {
            return bundle.getString(BUNDLE_KEY_FANARTURL);
        }

        public int getId() {
            return bundle.getInt(BUNDLE_KEY_ID);
        }

        public Bundle getBundle() {
            return bundle;
        }
    }
}