/**
* Copyright (c) 2013-2014. Francisco Contreras, Holland Salazar.
* Copyright (c) 2015. Tobias Strebitzer, Francisco Contreras, Holland Salazar.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
* permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice, this list of
* conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this list of
* conditions and the following disclaimer in the documentation and/or other materials
* provided with the distribution.
* Neither the name of the Baker Framework nor the names of its contributors may be used to
* endorse or promote products derived from this software without specific prior written
* permission.
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
* SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
**/
package com.bakerframework.baker.view;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentStatePagerAdapter;
import com.bakerframework.baker.activity.IssueActivity;
import com.bakerframework.baker.model.BookJson;
import java.io.File;
public class WebViewFragmentPagerAdapter extends FragmentStatePagerAdapter {
private BookJson book;
private String magazinePath;
private IssueActivity issueActivity;
public WebViewFragmentPagerAdapter(FragmentManager fm, BookJson book, final String magazinePath, IssueActivity _issueActivity) {
super(fm);
this.issueActivity = _issueActivity;
if (null == book) {
this.book = new BookJson();
} else {
this.book = book;
}
if (null == magazinePath) {
this.magazinePath = "";
} else {
this.magazinePath = magazinePath;
}
}
@Override
public Fragment getItem(int i) {
// Return null if out of bounds
if(i < 0 || i >= book.getContents().size()) { return null; }
// Instantiate and return Fragment
Bundle args = new Bundle();
String page = this.magazinePath + book.getMagazineName() + File.separator + book.getContents().get(i);
args.putString("object", page);
return Fragment.instantiate(issueActivity, WebViewFragment.class.getName(), args);
}
@Override
public int getCount() {
return book.getContents().size();
}
@Override
public CharSequence getPageTitle(int position) {
return "OBJECT " + (position + 1);
}
}