Home | History | Annotate | Download | only in image
      1 /*
      2  *  Licensed to the Apache Software Foundation (ASF) under one or more
      3  *  contributor license agreements.  See the NOTICE file distributed with
      4  *  this work for additional information regarding copyright ownership.
      5  *  The ASF licenses this file to You under the Apache License, Version 2.0
      6  *  (the "License"); you may not use this file except in compliance with
      7  *  the License.  You may obtain a copy of the License at
      8  *
      9  *     http://www.apache.org/licenses/LICENSE-2.0
     10  *
     11  *  Unless required by applicable law or agreed to in writing, software
     12  *  distributed under the License is distributed on an "AS IS" BASIS,
     13  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     14  *  See the License for the specific language governing permissions and
     15  *  limitations under the License.
     16  */
     17 /**
     18  * @author Oleg V. Khaschansky
     19  * @version $Revision$
     20  */
     21 /*
     22  * Created on 20.01.2005
     23  */
     24 package org.apache.harmony.awt.gl.image;
     25 
     26 import java.io.BufferedInputStream;
     27 import java.io.FileInputStream;
     28 import java.io.FileNotFoundException;
     29 import java.io.InputStream;
     30 
     31 public class FileDecodingImageSource extends DecodingImageSource {
     32   String filename;
     33 
     34   public FileDecodingImageSource(String file) {
     35     SecurityManager security = System.getSecurityManager();
     36     if (security != null) {
     37         security.checkRead(file);
     38     }
     39 
     40     filename = file;
     41   }
     42 
     43   @Override
     44 protected boolean checkConnection() {
     45       SecurityManager security = System.getSecurityManager();
     46       if (security != null) {
     47           try {
     48             security.checkRead(filename);
     49           } catch (SecurityException e) {
     50               return false;
     51           }
     52       }
     53 
     54       return true;
     55   }
     56 
     57   @Override
     58 protected InputStream getInputStream() {
     59     try {
     60       // BEGIN android-modified
     61       return new BufferedInputStream(new FileInputStream(filename), 8192);
     62       // END android-modified
     63     } catch (FileNotFoundException e) {
     64       return null;
     65     }
     66   }
     67 
     68 }
     69