⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mediasource.java

📁 google的gdata api包
💻 JAVA
字号:
/* Copyright (c) 2006 Google Inc. * * 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 com.google.gdata.data.media;import com.google.gdata.data.DateTime;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import javax.activation.DataSource;/** * The MediaSource interface provides a model for accessing media content * sent by the GData client or returned by a GDataFeed service implementation. * It extends the JavaBeans Activation Framework {@link DataSource} interface, * making it possible to use the MediaSource as a DataSource within the * framework for media handling. * <p> * When creating new GData entries using a {@link MediaSource}, the return * value of the {@link DataSource#getName()} method will be used to create a * Slug header for the media source.  Some concrete implementations of the * MediaSource interface will provide the ability to set the name value and/or * provide a default value based upon source attributes. * *  */public interface MediaSource extends DataSource {  /**   * Returns the length (in bytes) of the media source.  A value of -1   * indicates the length is unknown.   */  public long getContentLength();  /**   * Returns the last modification time of the media content or {@code null}   * if unknown.   */  public DateTime getLastModified();  /**   * The Output class provides helper methods for MediaSource handling.   */  public class Output {    /**     * Helper method that writes the contents of a media source to an output     * stream.     *     * @param source the source media stream containing the media data.     * @param outputStream the target output stream.     * @throws IOException on any error writing the data to the stream.     */    public static void writeTo(MediaSource source, OutputStream outputStream)        throws IOException {      InputStream sourceStream = source.getInputStream();      BufferedOutputStream bos = new BufferedOutputStream(outputStream);      BufferedInputStream bis = new BufferedInputStream(sourceStream);      byte [] buf = new byte[2048]; // Transfer in 2k chunks      int bytesRead = 0;      while ((bytesRead = bis.read(buf, 0, buf.length)) >= 0) {        bos.write(buf, 0, bytesRead);      }      bos.flush();    }  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -