com.github.fi3te.iliasdownloader.controller.Util.java Source code

Java tutorial

Introduction

Here is the source code for com.github.fi3te.iliasdownloader.controller.Util.java

Source

/*
 * Copyright (C) 2015-2016 Fiete Wennier
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
 *
 * Dieses Programm ist Freie Software: Sie knnen es unter den Bedingungen
 * der GNU General Public License, wie von der Free Software Foundation,
 * Version 3 der Lizenz oder (nach Ihrer Wahl) jeder neueren
 * verffentlichten Version, weiterverbreiten und/oder modifizieren.
 *
 * Dieses Programm wird in der Hoffnung, dass es ntzlich sein wird, aber
 * OHNE JEDE GEWHRLEISTUNG, bereitgestellt; sogar ohne die implizite
 * Gewhrleistung der MARKTFHIGKEIT oder EIGNUNG FR EINEN BESTIMMTEN ZWECK.
 * Siehe die GNU General Public License fr weitere Details.
 *
 * Sie sollten eine Kopie der GNU General Public License zusammen mit diesem
 * Programm erhalten haben. Wenn nicht, siehe <http://www.gnu.org/licenses/>.
 *
 */

package com.github.fi3te.iliasdownloader.controller;

import android.app.Activity;
import android.content.ActivityNotFoundException;
import android.content.Intent;
import android.net.Uri;
import android.webkit.MimeTypeMap;
import android.widget.Toast;

import org.apache.commons.io.FilenameUtils;

import java.io.File;
import java.util.ArrayList;
import java.util.List;

import com.github.fi3te.iliasdownloader.R;

/**
 * Created by wennier on 31.05.2015.
 */
public class Util {

    public static <T> List<T> arrayToArrayList(T[] array) {
        List<T> list = new ArrayList<>();
        if (array != null) {
            for (int i = 0; i < array.length; i++) {
                list.add(array[i]);
            }
        }
        return list;
    }

    public static void openFile(File file, Activity forMessages) {
        if (file != null && forMessages != null && file.isFile()) {
            String extension = FilenameUtils.getExtension(file.getPath());
            if (extension.length() > 0) {
                try {
                    extension = extension.toLowerCase();
                    Intent intent = new Intent(Intent.ACTION_VIEW);
                    intent.setDataAndType(Uri.fromFile(file),
                            MimeTypeMap.getSingleton().getMimeTypeFromExtension(extension));
                    intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
                    forMessages.startActivity(intent);
                } catch (ActivityNotFoundException anfe) {
                    Toast.makeText(forMessages, forMessages.getResources().getString(R.string.unknown_type),
                            Toast.LENGTH_SHORT).show();
                }
            }
        }
    }
}