亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? didlcrosswalk.java

?? dspace 用j2ee架構的一個數字圖書館.開源程序
?? JAVA
字號:
/** DSPACE DIDL CROSSWALK MODULE*AUTHOR*         Los Alamos National Laboratory*         Research Library*         Digital Library Research & Prototyping Team*         Henry Jerez*         2004, 2005**CONTACT*    proto@gws.lanl.gov*VERSION*    beta1    *    date 07/26/2005*ACKNOWLEDGMENT*    Development of this code is part of the aDORe repository project by the Research Library of the Los Alamos National Laboratory.* *Based on: * * OAIDCCrosswalk.java * * Version: $Revision: 1.3 $ * * Date: $Date: 2005/11/17 19:02:03 $ * * Copyright (c) 2002, Hewlett-Packard Company and Massachusetts * Institute of Technology.  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 Hewlett-Packard Company nor the name of the * Massachusetts Institute of Technology nor the names of their * 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 * HOLDERS 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 org.dspace.app.oai;import java.util.Properties;import java.util.Date;import java.io.*;import java.lang.*;import java.sql.SQLException;import ORG.oclc.oai.server.crosswalk.Crosswalk;import ORG.oclc.oai.server.verb.CannotDisseminateFormatException;import org.dspace.content.DCDate;import org.dspace.content.DCValue;import org.dspace.content.Item;import org.dspace.content.Bundle;import org.dspace.content.Bitstream;import org.dspace.content.BitstreamFormat;import org.dspace.storage.bitstore.BitstreamStorageManager;import org.dspace.app.didl.UUIDFactory;import org.dspace.core.Utils;import org.dspace.search.HarvestedItemInfo;import sun.misc.BASE64Encoder;import org.dspace.core.*;public class DIDLCrosswalk extends Crosswalk{    public DIDLCrosswalk(Properties properties)    {	super("urn:mpeg:mpeg21:2002:02-DIDL-NS http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-21_schema_files/did/didl.xsd ");    }            public boolean isAvailableFor(Object nativeItem)    {        // We have DC for everything        return true;    }            public String createMetadata(Object nativeItem)        throws CannotDisseminateFormatException    {        Item item = ((HarvestedItemInfo) nativeItem).item;                Date d = ((HarvestedItemInfo) nativeItem).datestamp;         String ITEMDATE = new DCDate(d).toString();                // Get all the DC        DCValue[] allDC = item.getDC(Item.ANY, Item.ANY, Item.ANY);                StringBuffer metadata = new StringBuffer();        StringBuffer metadata1 = new StringBuffer();        String itemhandle=item.getHandle();        int maxsize=  Integer.parseInt(ConfigurationManager.getProperty("oai.didl.maxresponse"));         String currdate=ORG.oclc.oai.server.verb.ServerVerb.createResponseDate(new Date());                metadata.append("<didl:DIDL ")	        .append(" xmlns:didl=\"urn:mpeg:mpeg21:2002:02-DIDL-NS\"  ")            .append(" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" ")            .append("xsi:schemaLocation=\"urn:mpeg:mpeg21:2002:02-DIDL-NS http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-21_schema_files/did/didl.xsd \">")        	.append ("<didl:DIDLInfo>")			.append ("<dcterms:created xmlns:dcterms=\"http://purl.org/dc/terms/\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://purl.org/dc/terms/ \">")			.append  (currdate)			.append ("</dcterms:created> </didl:DIDLInfo>" )			.append("<didl:Item id=\"")		.append("uuid-" + UUIDFactory.generateUUID().toString()+"\">");        metadata.append("<didl:Descriptor>")        		.append("<didl:Statement mimeType=\"application/xml; charset=utf-8\">")				.append("<dii:Identifier xmlns:dii=\"urn:mpeg:mpeg21:2002:01-DII-NS\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"urn:mpeg:mpeg21:2002:01-DII-NS http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-21_schema_files/dii/dii.xsd\">")				.append("urn:hdl:" + itemhandle)				.append("</dii:Identifier>")				.append("</didl:Statement>")				.append("</didl:Descriptor>");			metadata.append("<didl:Descriptor>")					.append("<didl:Statement mimeType=\"application/xml; charset=utf-8\">");					        for (int i = 0; i < allDC.length; i++)        {            // Do not include description.provenance            boolean description = allDC[i].element.equals("description");            boolean provenance = allDC[i].qualifier != null &&                                 allDC[i].qualifier.equals("provenance");            if (!(description && provenance))            {                // Escape XML chars <, > and &                String value = allDC[i].value;                // First do &'s - need to be careful not to replace the                // & in "&amp;" again!                int c = -1;                while ((c = value.indexOf("&", c + 1)) > -1)                {                    value = value.substring(0, c) +                        "&amp;" +                        value.substring(c + 1);                }                while ((c = value.indexOf("<")) > -1)                {                    value = value.substring(0, c) +                        "&lt;" +                        value.substring(c + 1);                }                                while ((c = value.indexOf(">")) > -1)                {                    value = value.substring(0, c) +                        "&gt;" +                        value.substring(c + 1);                }                metadata1.append("<dc:")                    .append(allDC[i].element)                    .append(">")                    .append(value)                    .append("</dc:")                    .append(allDC[i].element)                    .append(">");            }        }			metadata.append("<oai_dc:dc xmlns:oai_dc=\"http://www.openarchives.org/OAI/2.0/oai_dc/\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.openarchives.org/OAI/2.0/oai_dc/ http://www.openarchives.org/OAI/2.0/oai_dc.xsd\">");						        metadata.append(metadata1);                metadata.append("</oai_dc:dc>")				.append("</didl:Statement>")				.append("</didl:Descriptor>");												/**putfirst item here**/									//**CYCLE HERE!!!!**//               try        {        	Bundle[] bundles= item.getBundles("ORIGINAL");    					if (bundles.length == 0)	        {	            metadata.append("<P>There are no files associated with this item.</P>");	        }	        else	        {  		     	/**cycle bundles**/				for (int i = 0; i < bundles.length; i++)	            { 					int flag=0;				                Bitstream[] bitstreams = bundles[i].getBitstreams();		/**cycle bitstreams**/	                for (int k = 0; k < bitstreams.length ; k++)	                {	                    // Skip internal types	                    if (!bitstreams[k].getFormat().isInternal())	                    {	                    if (flag==0)		                    	{	                   		flag=1;	                    	}	               metadata.append("<didl:Component id=" + "\"uuid-"+ UUIDFactory.generateUUID().toString() + "\">");				   metadata.append("<didl:Resource ref=\""+ConfigurationManager.getProperty("dspace.url")+"/bitstream/"+itemhandle+"/"+bitstreams[k].getSequenceID()+"/"+bitstreams[k].getName() );	               metadata.append("\" mimeType=\"");	               metadata.append(bitstreams[k].getFormat().getMIMEType());	               metadata.append("\">");		       metadata.append("</didl:Resource>");		 			  if (bitstreams[k].getSize()< maxsize){									metadata.append("<didl:Resource mimeType=\"");					metadata.append(bitstreams[k].getFormat().getMIMEType());			 		metadata.append("\" encoding=\"base64\">");			 		try			 		{                        /*                         * Assume that size of in-line bitstreams will always be                         * smaller than MAXINT bytes                         */			 			int intSize = (int) bitstreams[k].getSize();                        			 			byte[] buffer = new byte[intSize];			 						 			//BufferedInputStream bis=new BufferedInputStream(bitstreams[k].retrieve());			 			Context contextl= new Context();			 			BufferedInputStream bis=new BufferedInputStream(BitstreamStorageManager.retrieve(contextl,bitstreams[k].getID()));			 			int size=bis.read(buffer);			 		    contextl.complete();			 						 			sun.misc.BASE64Encoder encoder=(sun.misc.BASE64Encoder) Class.forName("sun.misc.BASE64Encoder").newInstance();			 			 String encoding = encoder.encodeBuffer(buffer);			 			 metadata.append(encoding);			 		}			 		catch (Exception ex)			 		{			 			System.err.println("Caught exception:"+ex.getCause());			 			ex.printStackTrace();			 metadata.append("http://retrieve/"+ new Integer(bitstreams[k].getID()).toString()  +"bitstream=" + k +"/" );			 					 		}											                        metadata.append("</didl:Resource>");	                }			        metadata.append("</didl:Component>");		               			     }	            /*end bitstream cycle*/     	           }	           /*end bundle cycle*/          }      }     }     catch (SQLException sqle)     { 		System.err.println("Caught exception:"+sqle.getCause()); 		sqle.printStackTrace();     }						//**END CYCLE HERE **//			        metadata.append("</didl:Item>")        		.append("</didl:DIDL>");        return metadata.toString();    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产亚洲一区二区在线观看| 欧美亚洲另类激情小说| 丝瓜av网站精品一区二区| 亚洲视频一二三| 亚洲欧美另类久久久精品| 国产欧美日韩在线视频| 欧美激情一区二区三区蜜桃视频| 久久毛片高清国产| 中文字幕欧美区| 国产精品第一页第二页第三页| 欧美国产精品v| 一区在线观看视频| 亚洲午夜日本在线观看| 污片在线观看一区二区| 免费在线欧美视频| 国产一区二区三区黄视频| 成人激情小说乱人伦| 91视频com| 3d动漫精品啪啪一区二区竹菊| 日韩欧美区一区二| 国产农村妇女毛片精品久久麻豆 | 国产精品亚洲一区二区三区妖精 | 中文字幕在线播放不卡一区| 亚洲免费伊人电影| 午夜免费欧美电影| 久久99精品一区二区三区三区| 丰满亚洲少妇av| 欧美在线影院一区二区| 欧美一级一区二区| 中文字幕av资源一区| 亚洲国产精品一区二区久久恐怖片| 日韩专区欧美专区| 成人免费视频一区二区| 欧美亚洲动漫另类| 久久久久国产精品人| 亚洲精品中文字幕乱码三区| 久久国产生活片100| 91麻豆精品秘密| 久久婷婷国产综合精品青草| 一区二区三区视频在线看| 激情综合网av| 欧美亚洲日本国产| 国产亚洲一区二区三区在线观看| 亚洲中国最大av网站| 狠狠久久亚洲欧美| 欧美日本一区二区在线观看| 国产精品麻豆久久久| 蜜桃一区二区三区在线观看| 色婷婷精品久久二区二区蜜臀av| 精品国产免费一区二区三区香蕉| 亚洲国产sm捆绑调教视频| 国产精品99久久久久久宅男| 91.com在线观看| 亚洲精品写真福利| 福利电影一区二区| 久久先锋影音av| 奇米亚洲午夜久久精品| 91久久久免费一区二区| 国产三区在线成人av| 美国欧美日韩国产在线播放| 欧美婷婷六月丁香综合色| 国产精品久久久99| 国产成人午夜精品影院观看视频| 日韩一级片网址| 午夜久久福利影院| 精品视频免费在线| 亚洲综合精品久久| 欧亚一区二区三区| 日韩美女久久久| 色综合中文字幕国产 | 精品一区二区在线观看| 欧美电影一区二区| 五月天久久比比资源色| 在线观看不卡一区| 亚洲免费大片在线观看| 91在线观看美女| 中文字幕在线不卡国产视频| 成人av动漫网站| 亚洲色图欧美激情| 91免费国产在线| 亚洲精品免费看| 欧美在线免费观看视频| 亚洲主播在线播放| 欧美日韩国产经典色站一区二区三区| 一区二区三区精品视频在线| 在线欧美日韩国产| 亚洲一区二区在线视频| 欧美日产国产精品| 美腿丝袜亚洲三区| 国产无人区一区二区三区| 91一区在线观看| 亚洲桃色在线一区| 欧美日韩五月天| 麻豆91精品视频| 久久丝袜美腿综合| 丁香激情综合五月| 亚洲欧洲中文日韩久久av乱码| 91成人看片片| 免费在线观看精品| 欧美韩国日本一区| 欧美伊人久久大香线蕉综合69| 午夜成人免费电影| 久久久一区二区三区捆绑**| jizz一区二区| 午夜在线成人av| 精品久久久三级丝袜| 成人91在线观看| 亚州成人在线电影| 久久精品网站免费观看| 91小宝寻花一区二区三区| 日韩av午夜在线观看| 国产精品全国免费观看高清| 欧美精品一卡二卡| 成人一区二区三区视频在线观看| 亚洲综合久久av| 国产无人区一区二区三区| 欧美日韩亚洲另类| 成人av网站免费| 日产国产高清一区二区三区| 国产精品国产三级国产有无不卡 | 久久国产精品色婷婷| 国产精品久久久久久久久动漫| 欧美蜜桃一区二区三区| 成人黄色免费短视频| 久久精品国产99久久6| 怡红院av一区二区三区| 日本一区二区三区免费乱视频| 欧美三级资源在线| 91免费在线视频观看| 精彩视频一区二区三区| 亚洲不卡在线观看| 最好看的中文字幕久久| 久久久精品黄色| 欧美大片一区二区| 欧美精选在线播放| 欧美性猛片xxxx免费看久爱| eeuss鲁一区二区三区| 国产一区二区美女诱惑| 人妖欧美一区二区| 亚洲不卡在线观看| 亚洲小说春色综合另类电影| 日韩一区在线免费观看| 国产精品三级电影| 久久久精品天堂| 精品福利一二区| 精品福利视频一区二区三区| 精品伦理精品一区| 欧美成人video| 精品乱人伦一区二区三区| 欧美一区午夜精品| 日韩一区二区三区在线视频| 3atv一区二区三区| 91精品国产综合久久精品性色| 欧美视频一区在线| 欧美日韩视频在线观看一区二区三区 | 久久久久国产精品免费免费搜索| 91麻豆精品91久久久久同性| 欧美精品精品一区| 91精品国产一区二区| 欧美日韩国产中文| 欧美日韩视频在线观看一区二区三区 | 黄一区二区三区| 韩国视频一区二区| 国产**成人网毛片九色 | 一区二区三区**美女毛片| 亚洲三级在线播放| 一区二区三区中文在线| 亚洲成av人片在线观看无码| 日韩**一区毛片| 国产在线日韩欧美| 成人av资源在线观看| 在线观看国产91| 欧美一区二区福利视频| 久久嫩草精品久久久久| 国产精品美女久久久久久久网站| 亚洲免费观看高清在线观看| 午夜精品在线视频一区| 久久国产精品色| 99精品视频一区二区| 9191精品国产综合久久久久久| 久久综合久久综合久久| 亚洲三级理论片| 日本vs亚洲vs韩国一区三区| 国产精品1区2区| 欧美天天综合网| 久久九九久久九九| 一区二区三区精密机械公司| 美美哒免费高清在线观看视频一区二区 | 亚洲一区二区黄色| 国产一区二区电影| 欧洲精品视频在线观看| 久久女同性恋中文字幕| 一区二区三区中文字幕在线观看| 美国毛片一区二区| 一本大道久久a久久综合| 日韩一区二区精品在线观看| 亚洲美女一区二区三区| 国产乱人伦偷精品视频不卡| 欧美日韩综合色| 国产精品麻豆99久久久久久|