From: <jbo...@li...> - 2006-01-24 22:55:20
|
Author: szimano Date: 2006-01-24 17:55:11 -0500 (Tue, 24 Jan 2006) New Revision: 2193 Added: trunk/forge/portal-extensions/shotoku/shotoku-files/ trunk/forge/portal-extensions/shotoku/shotoku-files/maven.xml trunk/forge/portal-extensions/shotoku/shotoku-files/project.properties trunk/forge/portal-extensions/shotoku/shotoku-files/project.xml trunk/forge/portal-extensions/shotoku/shotoku-files/src/ trunk/forge/portal-extensions/shotoku/shotoku-files/src/app/ trunk/forge/portal-extensions/shotoku/shotoku-files/src/app/META-INF/ trunk/forge/portal-extensions/shotoku/shotoku-files/src/app/META-INF/application.xml trunk/forge/portal-extensions/shotoku/shotoku-files/src/etc/ trunk/forge/portal-extensions/shotoku/shotoku-files/src/etc/mime-types.txt trunk/forge/portal-extensions/shotoku/shotoku-files/src/java/ trunk/forge/portal-extensions/shotoku/shotoku-files/src/java/org/ trunk/forge/portal-extensions/shotoku/shotoku-files/src/java/org/jboss/ trunk/forge/portal-extensions/shotoku/shotoku-files/src/java/org/jboss/shotoku/ trunk/forge/portal-extensions/shotoku/shotoku-files/src/java/org/jboss/shotoku/files/ trunk/forge/portal-extensions/shotoku/shotoku-files/src/java/org/jboss/shotoku/files/FileDirectory.java trunk/forge/portal-extensions/shotoku/shotoku-files/src/java/org/jboss/shotoku/files/FileNode.java trunk/forge/portal-extensions/shotoku/shotoku-files/src/java/org/jboss/shotoku/files/FilesContentManager.java Log: Begining of FileContentManager for shotoku http://jira.jboss.com/jira/browse/JBSHOTOKU-53 Added: trunk/forge/portal-extensions/shotoku/shotoku-files/maven.xml =================================================================== --- trunk/forge/portal-extensions/shotoku/shotoku-files/maven.xml 2006-01-24 22:18:44 UTC (rev 2192) +++ trunk/forge/portal-extensions/shotoku/shotoku-files/maven.xml 2006-01-24 22:55:11 UTC (rev 2193) @@ -0,0 +1,54 @@ +<!-- + JBoss, the OpenSource J2EE webOS + Distributable under LGPL license. + See terms of license at gnu.org. + --> +<project xmlns:j="jelly:core" xmlns:ant="jelly:ant" xmlns:u="jelly:util"> + <goal name="clean"> + <attainGoal name="prj-clean" /> + </goal> + + <goal name="build"> + <attainGoal name="ejb" /> + </goal> + + <goal name="deploy"> + <!-- Constructing the ear. --> + <ant:copy overwrite="true" + tofile="target/${shotoku.ear.dir}/shotoku-svn.ejb3" + file="target/shotoku-svn-1.0.jar" /> + <ant:copy + todir="target/${shotoku.ear.dir}" overwrite="true" + file="${maven.repo.local}/shotoku/jars/shotoku-base.jar" /> + <ant:copy + todir="target/${shotoku.ear.dir}" overwrite="true" + file="${maven.repo.local}/commons-configuration/jars/commons-configuration-1.1.jar" /> + <ant:copy + todir="target/${shotoku.ear.dir}" overwrite="true" + file="${maven.repo.local}/commons-lang/jars/commons-lang-2.1.jar" /> + <ant:copy + todir="target/${shotoku.ear.dir}" overwrite="true" + file="${maven.repo.local}/commons-collections/jars/commons-collections-3.1.jar" /> + <ant:copy + todir="target/${shotoku.ear.dir}" overwrite="true" + file="${maven.repo.local}/tmate/jars/javasvn.jar" /> + <ant:copy + todir="target/${shotoku.ear.dir}" overwrite="true"> + <ant:fileset dir="${maven.repo.local}/velocity/jars"> + <ant:filename name="velocity*-1.4.jar" /> + </ant:fileset> + </ant:copy> + <ant:copy todir="target/${shotoku.ear.dir}"> + <ant:fileset dir="src/app" flatten="true" overwrite="true"> + <ant:filename name="**" /> + </ant:fileset> + </ant:copy> + + <!-- Copying the ear to the deploy directory. --> + <ant:copy todir="${local.deploy.dir}"> + <ant:fileset dir="target" flatten="true" overwrite="true"> + <ant:filename name="${shotoku.ear.dir}/**" /> + </ant:fileset> + </ant:copy> + </goal> +</project> Added: trunk/forge/portal-extensions/shotoku/shotoku-files/project.properties =================================================================== --- trunk/forge/portal-extensions/shotoku/shotoku-files/project.properties 2006-01-24 22:18:44 UTC (rev 2192) +++ trunk/forge/portal-extensions/shotoku/shotoku-files/project.properties 2006-01-24 22:55:11 UTC (rev 2193) @@ -0,0 +1,7 @@ +maven.repo.remote=http://repository.atlassian.com,http://www.ibiblio.org/maven,http://dist.codehaus.org/ +maven.junit.fork=yes +maven.war.src=${basedir}/src/web +maven.ejb.excludes=**/*Listener*,**/listener +maven.war.classes.excludes=**/*Bean* + +shotoku.ear.dir=00shotoku.ear \ No newline at end of file Added: trunk/forge/portal-extensions/shotoku/shotoku-files/project.xml =================================================================== --- trunk/forge/portal-extensions/shotoku/shotoku-files/project.xml 2006-01-24 22:18:44 UTC (rev 2192) +++ trunk/forge/portal-extensions/shotoku/shotoku-files/project.xml 2006-01-24 22:55:11 UTC (rev 2193) @@ -0,0 +1,99 @@ +<?xml version='1.0' encoding='ISO-8859-1'?> +<!-- + JBoss, the OpenSource J2EE webOS + Distributable under LGPL license. + See terms of license at gnu.org. + --> +<project> + <pomVersion>3</pomVersion> + <extend>../project.xml</extend> + <id>shotoku-svn</id> + <name>Shotoku svn</name> + <currentVersion>1.0</currentVersion> + <organization> + <name>Adam Warski</name> + <url>http://mamut.net.pl</url> + </organization> + <description></description> + + <dependencies> + + <dependency> + <groupId>shotoku</groupId> + <artifactId>shotoku-base</artifactId> + <jar>shotoku-base.jar</jar> + <properties> + <ejb.manifest.classpath>true</ejb.manifest.classpath> + </properties> + </dependency> + + <dependency> + <groupId>velocity</groupId> + <artifactId>velocity</artifactId> + <version>1.4</version> + <properties> + <ejb.manifest.classpath>true</ejb.manifest.classpath> + </properties> + </dependency> + <dependency> + <groupId>velocity</groupId> + <artifactId>velocity-dep</artifactId> + <version>1.4</version> + <properties> + <ejb.manifest.classpath>true</ejb.manifest.classpath> + </properties> + </dependency> + + <dependency> + <groupId>jboss</groupId> + <artifactId>jboss-ejb3</artifactId> + <version>1.0</version> + <jar>jboss-ejb3.jar</jar> + </dependency> + + <dependency> + <groupId>jboss</groupId> + <artifactId>jboss-ejb3x</artifactId> + <version>1.0</version> + <jar>jboss-ejb3x.jar</jar> + </dependency> + + <dependency> + <groupId>jboss</groupId> + <artifactId>jboss-annotations-ejb3</artifactId> + <version>1.0</version> + <jar>jboss-annotations-ejb3.jar</jar> + </dependency> + + <dependency> + <groupId>jboss</groupId> + <artifactId>jboss-jmx</artifactId> + <version>1.0</version> + <jar>jboss-jmx.jar</jar> + </dependency> + + <dependency> + <groupId>jboss</groupId> + <artifactId>jboss-j2ee</artifactId> + <version>1.0</version> + <jar>jboss-j2ee.jar</jar> + </dependency> + + <dependency> + <groupId>jboss</groupId> + <artifactId>activation</artifactId> + <version>1.0</version> + <jar>activation.jar</jar> + </dependency> + </dependencies> + + <build> + <sourceDirectory>src/java</sourceDirectory> + <resources> + <resource> + <directory>src/etc/</directory> + <include>**/*.xml</include> + </resource> + </resources> + </build> +</project> Added: trunk/forge/portal-extensions/shotoku/shotoku-files/src/app/META-INF/application.xml =================================================================== --- trunk/forge/portal-extensions/shotoku/shotoku-files/src/app/META-INF/application.xml 2006-01-24 22:18:44 UTC (rev 2192) +++ trunk/forge/portal-extensions/shotoku/shotoku-files/src/app/META-INF/application.xml 2006-01-24 22:55:11 UTC (rev 2193) @@ -0,0 +1,6 @@ +<application> + <display-name>Shotoku service</display-name> + <module> + <ejb>shotoku-svn.ejb3</ejb> + </module> +</application> Added: trunk/forge/portal-extensions/shotoku/shotoku-files/src/etc/mime-types.txt =================================================================== --- trunk/forge/portal-extensions/shotoku/shotoku-files/src/etc/mime-types.txt 2006-01-24 22:18:44 UTC (rev 2192) +++ trunk/forge/portal-extensions/shotoku/shotoku-files/src/etc/mime-types.txt 2006-01-24 22:55:11 UTC (rev 2193) @@ -0,0 +1,714 @@ +############################################################################### +# +# MIME-TYPES and the extensions that represent them +# +# This file is part of the "mime-support" package. Please send email (not a +# bug report) to mim...@pa... if you would like new types +# and/or extensions to be added. +# +# Users can add their own types if they wish by creating a ".mime.types" +# file in their home directory. Definitions included there will take +# precedence over those listed here. +# +# Note: Compression schemes like "gzip", "bzip", and "compress" are not +# actually "mime-types". They are "encodings" and hence must _not_ have +# entries in this file to map their extensions. The "mime-type" of an +# encoded file refers to the type of data that has been encoded, not the +# type of the encoding. +# +############################################################################### + + +application/activemessage +application/andrew-inset ez +application/applefile +application/atomicmail +application/batch-SMTP +application/beep+xml +application/cals-1840 +application/commonground +application/cu-seeme cu +application/cybercash +application/dca-rft +application/dec-dx +application/docbook+xml +application/dsptype tsp +application/dvcs +application/edi-consent +application/edi-x12 +application/edifact +application/eshop +application/font-tdpfr +application/futuresplash spl +application/ghostview +application/hta hta +application/http +application/hyperstudio +application/iges +application/index +application/index.cmd +application/index.obj +application/index.response +application/index.vnd +application/iotp +application/ipp +application/isup +application/mac-binhex40 hqx +application/mac-compactpro cpt +application/macwriteii +application/marc +application/mathematica nb +application/mathematica-old +application/msaccess mdb +application/msword doc dot +application/news-message-id +application/news-transmission +application/ocsp-request +application/ocsp-response +application/octet-stream bin +application/oda oda +application/ogg ogg +application/parityfec +application/pdf pdf +application/pgp-encrypted +application/pgp-keys key +application/pgp-signature pgp +application/pics-rules prf +application/pkcs10 +application/pkcs7-mime +application/pkcs7-signature +application/pkix-cert +application/pkix-crl +application/pkixcmp +application/postscript ps ai eps +application/prs.alvestrand.titrax-sheet +application/prs.cww +application/prs.nprend +application/qsig +application/rar rar +application/rdf+xml rdf +application/remote-printing +application/riscos +application/rss+xml rss +application/rtf +application/sdp +application/set-payment +application/set-payment-initiation +application/set-registration +application/set-registration-initiation +application/sgml +application/sgml-open-catalog +application/sieve +application/slate +application/smil smi smil +application/timestamp-query +application/timestamp-reply +application/vemmi +application/whoispp-query +application/whoispp-response +application/wita +application/wordperfect5.1 wp5 +application/x400-bp +application/xhtml+xml xhtml xht +application/xml xml xsl +application/xml-dtd +application/xml-external-parsed-entity +application/zip zip +application/vnd.3M.Post-it-Notes +application/vnd.accpac.simply.aso +application/vnd.accpac.simply.imp +application/vnd.acucobol +application/vnd.aether.imp +application/vnd.anser-web-certificate-issue-initiation +application/vnd.anser-web-funds-transfer-initiation +application/vnd.audiograph +application/vnd.bmi +application/vnd.businessobjects +application/vnd.canon-cpdl +application/vnd.canon-lips +application/vnd.cinderella cdy +application/vnd.claymore +application/vnd.commerce-battelle +application/vnd.commonspace +application/vnd.comsocaller +application/vnd.contact.cmsg +application/vnd.cosmocaller +application/vnd.ctc-posml +application/vnd.cups-postscript +application/vnd.cups-raster +application/vnd.cups-raw +application/vnd.cybank +application/vnd.dna +application/vnd.dpgraph +application/vnd.dxr +application/vnd.ecdis-update +application/vnd.ecowin.chart +application/vnd.ecowin.filerequest +application/vnd.ecowin.fileupdate +application/vnd.ecowin.series +application/vnd.ecowin.seriesrequest +application/vnd.ecowin.seriesupdate +application/vnd.enliven +application/vnd.epson.esf +application/vnd.epson.msf +application/vnd.epson.quickanime +application/vnd.epson.salt +application/vnd.epson.ssf +application/vnd.ericsson.quickcall +application/vnd.eudora.data +application/vnd.fdf +application/vnd.ffsns +application/vnd.flographit +application/vnd.framemaker +application/vnd.fsc.weblaunch +application/vnd.fujitsu.oasys +application/vnd.fujitsu.oasys2 +application/vnd.fujitsu.oasys3 +application/vnd.fujitsu.oasysgp +application/vnd.fujitsu.oasysprs +application/vnd.fujixerox.ddd +application/vnd.fujixerox.docuworks +application/vnd.fujixerox.docuworks.binder +application/vnd.fut-misnet +application/vnd.grafeq +application/vnd.groove-account +application/vnd.groove-identity-message +application/vnd.groove-injector +application/vnd.groove-tool-message +application/vnd.groove-tool-template +application/vnd.groove-vcard +application/vnd.hhe.lesson-player +application/vnd.hp-HPGL +application/vnd.hp-PCL +application/vnd.hp-PCLXL +application/vnd.hp-hpid +application/vnd.hp-hps +application/vnd.httphone +application/vnd.hzn-3d-crossword +application/vnd.ibm.MiniPay +application/vnd.ibm.afplinedata +application/vnd.ibm.modcap +application/vnd.informix-visionary +application/vnd.intercon.formnet +application/vnd.intertrust.digibox +application/vnd.intertrust.nncp +application/vnd.intu.qbo +application/vnd.intu.qfx +application/vnd.irepository.package+xml +application/vnd.is-xpr +application/vnd.japannet-directory-service +application/vnd.japannet-jpnstore-wakeup +application/vnd.japannet-payment-wakeup +application/vnd.japannet-registration +application/vnd.japannet-registration-wakeup +application/vnd.japannet-setstore-wakeup +application/vnd.japannet-verification +application/vnd.japannet-verification-wakeup +application/vnd.koan +application/vnd.lotus-1-2-3 +application/vnd.lotus-approach +application/vnd.lotus-freelance +application/vnd.lotus-notes +application/vnd.lotus-organizer +application/vnd.lotus-screencam +application/vnd.lotus-wordpro +application/vnd.mcd +application/vnd.mediastation.cdkey +application/vnd.meridian-slingshot +application/vnd.mif +application/vnd.minisoft-hp3000-save +application/vnd.mitsubishi.misty-guard.trustweb +application/vnd.mobius.daf +application/vnd.mobius.dis +application/vnd.mobius.msl +application/vnd.mobius.plc +application/vnd.mobius.txf +application/vnd.motorola.flexsuite +application/vnd.motorola.flexsuite.adsi +application/vnd.motorola.flexsuite.fis +application/vnd.motorola.flexsuite.gotap +application/vnd.motorola.flexsuite.kmr +application/vnd.motorola.flexsuite.ttc +application/vnd.motorola.flexsuite.wem +application/vnd.mozilla.xul+xml xul +application/vnd.ms-artgalry +application/vnd.ms-asf +application/vnd.ms-excel xls xlb xlt +application/vnd.ms-lrm +application/vnd.ms-pki.seccat cat +application/vnd.ms-pki.stl stl +application/vnd.ms-powerpoint ppt pps +application/vnd.ms-project +application/vnd.ms-tnef +application/vnd.ms-works +application/vnd.mseq +application/vnd.msign +application/vnd.music-niff +application/vnd.musician +application/vnd.netfpx +application/vnd.noblenet-directory +application/vnd.noblenet-sealer +application/vnd.noblenet-web +application/vnd.novadigm.EDM +application/vnd.novadigm.EDX +application/vnd.novadigm.EXT +application/vnd.oasis.opendocument.chart odc +application/vnd.oasis.opendocument.database odb +application/vnd.oasis.opendocument.formula odf +application/vnd.oasis.opendocument.graphics odg +application/vnd.oasis.opendocument.graphics-template otg +application/vnd.oasis.opendocument.image odi +application/vnd.oasis.opendocument.presentation odp +application/vnd.oasis.opendocument.presentation-template otp +application/vnd.oasis.opendocument.spreadsheet ods +application/vnd.oasis.opendocument.spreadsheet-template ots +application/vnd.oasis.opendocument.text odt +application/vnd.oasis.opendocument.text-master odm +application/vnd.oasis.opendocument.text-template ott +application/vnd.oasis.opendocument.text-web oth +application/vnd.osa.netdeploy +application/vnd.palm +application/vnd.pg.format +application/vnd.pg.osasli +application/vnd.powerbuilder6 +application/vnd.powerbuilder6-s +application/vnd.powerbuilder7 +application/vnd.powerbuilder7-s +application/vnd.powerbuilder75 +application/vnd.powerbuilder75-s +application/vnd.previewsystems.box +application/vnd.publishare-delta-tree +application/vnd.pvi.ptid1 +application/vnd.pwg-xhtml-print+xml +application/vnd.rapid +application/vnd.rim.cod cod +application/vnd.s3sms +application/vnd.seemail +application/vnd.shana.informed.formdata +application/vnd.shana.informed.formtemplate +application/vnd.shana.informed.interchange +application/vnd.shana.informed.package +application/vnd.smaf mmf +application/vnd.sss-cod +application/vnd.sss-dtf +application/vnd.sss-ntf +application/vnd.stardivision.calc sdc +application/vnd.stardivision.draw sda +application/vnd.stardivision.impress sdd sdp +application/vnd.stardivision.math smf +application/vnd.stardivision.writer sdw vor +application/vnd.stardivision.writer-global sgl +application/vnd.street-stream +application/vnd.sun.xml.calc sxc +application/vnd.sun.xml.calc.template stc +application/vnd.sun.xml.draw sxd +application/vnd.sun.xml.draw.template std +application/vnd.sun.xml.impress sxi +application/vnd.sun.xml.impress.template sti +application/vnd.sun.xml.math sxm +application/vnd.sun.xml.writer sxw +application/vnd.sun.xml.writer.global sxg +application/vnd.sun.xml.writer.template stw +application/vnd.svd +application/vnd.swiftview-ics +application/vnd.symbian.install sis +application/vnd.triscape.mxs +application/vnd.trueapp +application/vnd.truedoc +application/vnd.tve-trigger +application/vnd.ufdl +application/vnd.uplanet.alert +application/vnd.uplanet.alert-wbxml +application/vnd.uplanet.bearer-choice +application/vnd.uplanet.bearer-choice-wbxml +application/vnd.uplanet.cacheop +application/vnd.uplanet.cacheop-wbxml +application/vnd.uplanet.channel +application/vnd.uplanet.channel-wbxml +application/vnd.uplanet.list +application/vnd.uplanet.list-wbxml +application/vnd.uplanet.listcmd +application/vnd.uplanet.listcmd-wbxml +application/vnd.uplanet.signal +application/vnd.vcx +application/vnd.vectorworks +application/vnd.vidsoft.vidconference +application/vnd.visio vsd +application/vnd.vividence.scriptfile +application/vnd.wap.sic +application/vnd.wap.slc +application/vnd.wap.wbxml wbxml +application/vnd.wap.wmlc wmlc +application/vnd.wap.wmlscriptc wmlsc +application/vnd.webturbo +application/vnd.wrq-hp3000-labelled +application/vnd.wt.stf +application/vnd.xara +application/vnd.xfdl +application/vnd.yellowriver-custom-menu +application/x-123 wk +application/x-apple-diskimage dmg +application/x-bcpio bcpio +application/x-bittorrent torrent +application/x-cdf cdf +application/x-cdlink vcd +application/x-chess-pgn pgn +application/x-core +application/x-cpio cpio +application/x-csh csh +application/x-debian-package deb +application/x-director dcr dir dxr +application/x-dms dms +application/x-doom wad +application/x-dvi dvi +application/x-executable +application/x-flac flac +application/x-font pfa pfb gsf pcf pcf.Z +application/x-futuresplash spl +application/x-gnumeric gnumeric +application/x-go-sgf sgf +application/x-graphing-calculator gcf +application/x-gtar gtar tgz taz +application/x-hdf hdf +application/x-httpd-php phtml pht php +application/x-httpd-php-source phps +application/x-httpd-php3 php3 +application/x-httpd-php3-preprocessed php3p +application/x-httpd-php4 php4 +application/x-ica ica +application/x-internet-signup ins isp +application/x-iphone iii +application/x-iso9660-image iso +application/x-java-applet +application/x-java-archive jar +application/x-java-bean +application/x-java-jnlp-file jnlp +application/x-java-serialized-object ser +application/x-java-vm class +application/x-javascript js +application/x-jmol jmz +application/x-kchart chrt +application/x-kdelnk +application/x-killustrator kil +application/x-koan skp skd skt skm +application/x-kpresenter kpr kpt +application/x-kspread ksp +application/x-kword kwd kwt +application/x-latex latex +application/x-lha lha +application/x-lzh lzh +application/x-lzx lzx +application/x-maker frm maker frame fm fb book fbdoc +application/x-mif mif +application/x-ms-wmd wmd +application/x-ms-wmz wmz +application/x-msdos-program com exe bat dll +application/x-msi msi +application/x-netcdf nc +application/x-ns-proxy-autoconfig pac +application/x-nwc nwc +application/x-object o +application/x-oz-application oza +application/x-pkcs7-certreqresp p7r +application/x-pkcs7-crl crl +application/x-python-code pyc pyo +application/x-quicktimeplayer qtl +application/x-redhat-package-manager rpm +application/x-rx +application/x-sh sh +application/x-shar shar +application/x-shellscript +application/x-shockwave-flash swf swfl +application/x-stuffit sit +application/x-sv4cpio sv4cpio +application/x-sv4crc sv4crc +application/x-tar tar +application/x-tcl tcl +application/x-tex-gf gf +application/x-tex-pk pk +application/x-texinfo texinfo texi +application/x-trash ~ % bak old sik +application/x-troff t tr roff +application/x-troff-man man +application/x-troff-me me +application/x-troff-ms ms +application/x-ustar ustar +application/x-videolan +application/x-wais-source src +application/x-wingz wz +application/x-x509-ca-cert crt +application/x-xcf xcf +application/x-xfig fig + +audio/32kadpcm +audio/basic au snd +audio/g.722.1 +audio/l16 +audio/midi mid midi kar +audio/mp4a-latm +audio/mpa-robust +audio/mpeg mpga mpega mp2 mp3 m4a +audio/mpegurl m3u +audio/parityfec +audio/prs.sid sid +audio/telephone-event +audio/tone +audio/vnd.cisco.nse +audio/vnd.cns.anp1 +audio/vnd.cns.inf1 +audio/vnd.digital-winds +audio/vnd.everad.plj +audio/vnd.lucent.voice +audio/vnd.nortel.vbk +audio/vnd.nuera.ecelp4800 +audio/vnd.nuera.ecelp7470 +audio/vnd.nuera.ecelp9600 +audio/vnd.octel.sbc +audio/vnd.qcelp +audio/vnd.rhetorex.32kadpcm +audio/vnd.vmx.cvsd +audio/x-aiff aif aiff aifc +audio/x-gsm gsm +audio/x-mpegurl m3u +audio/x-ms-wma wma +audio/x-ms-wax wax +audio/x-pn-realaudio-plugin +audio/x-pn-realaudio ra rm ram +audio/x-realaudio ra +audio/x-scpls pls +audio/x-sd2 sd2 +audio/x-wav wav + +chemical/x-alchemy alc +chemical/x-cache cac cache +chemical/x-cache-csf csf +chemical/x-cactvs-binary cbin cascii ctab +chemical/x-cdx cdx +chemical/x-cerius cer +chemical/x-chem3d c3d +chemical/x-chemdraw chm +chemical/x-cif cif +chemical/x-cmdf cmdf +chemical/x-cml cml +chemical/x-compass cpa +chemical/x-crossfire bsd +chemical/x-csml csml csm +chemical/x-ctx ctx +chemical/x-cxf cxf cef +#chemical/x-daylight-smiles smi +chemical/x-embl-dl-nucleotide emb embl +chemical/x-galactic-spc spc +chemical/x-gamess-input inp gam gamin +chemical/x-gaussian-checkpoint fch fchk +chemical/x-gaussian-cube cub +chemical/x-gaussian-input gau gjc gjf +chemical/x-gaussian-log gal +chemical/x-gcg8-sequence gcg +chemical/x-genbank gen +chemical/x-hin hin +chemical/x-isostar istr ist +chemical/x-jcamp-dx jdx dx +chemical/x-kinemage kin +chemical/x-macmolecule mcm +chemical/x-macromodel-input mmd mmod +chemical/x-mdl-molfile mol +chemical/x-mdl-rdfile rd +chemical/x-mdl-rxnfile rxn +chemical/x-mdl-sdfile sd sdf +chemical/x-mdl-tgf tgf +#chemical/x-mif mif +chemical/x-mmcif mcif +chemical/x-mol2 mol2 +chemical/x-molconn-Z b +chemical/x-mopac-graph gpt +chemical/x-mopac-input mop mopcrt mpc dat zmt +chemical/x-mopac-out moo +chemical/x-mopac-vib mvb +chemical/x-ncbi-asn1 asn +chemical/x-ncbi-asn1-ascii prt ent +chemical/x-ncbi-asn1-binary val aso +chemical/x-ncbi-asn1-spec asn +chemical/x-pdb pdb ent +chemical/x-rosdal ros +chemical/x-swissprot sw +chemical/x-vamas-iso14976 vms +chemical/x-vmd vmd +chemical/x-xtel xtel +chemical/x-xyz xyz + +image/cgm +image/g3fax +image/gif gif +image/ief ief +image/jpeg jpeg jpg jpe +image/naplps +image/pcx pcx +image/png png +image/prs.btif +image/prs.pti +image/svg+xml svg svgz +image/tiff tiff tif +image/vnd.cns.inf2 +image/vnd.djvu djvu djv +image/vnd.dwg +image/vnd.dxf +image/vnd.fastbidsheet +image/vnd.fpx +image/vnd.fst +image/vnd.fujixerox.edmics-mmr +image/vnd.fujixerox.edmics-rlc +image/vnd.mix +image/vnd.net-fpx +image/vnd.svf +image/vnd.wap.wbmp wbmp +image/vnd.xiff +image/x-cmu-raster ras +image/x-coreldraw cdr +image/x-coreldrawpattern pat +image/x-coreldrawtemplate cdt +image/x-corelphotopaint cpt +image/x-icon ico +image/x-jg art +image/x-jng jng +image/x-ms-bmp bmp +image/x-photoshop psd +image/x-portable-anymap pnm +image/x-portable-bitmap pbm +image/x-portable-graymap pgm +image/x-portable-pixmap ppm +image/x-rgb rgb +image/x-xbitmap xbm +image/x-xpixmap xpm +image/x-xwindowdump xwd + +inode/chardevice +inode/blockdevice +inode/directory-locked +inode/directory +inode/fifo +inode/socket + +message/delivery-status +message/disposition-notification +message/external-body +message/http +message/s-http +message/news +message/partial +message/rfc822 + +model/iges igs iges +model/mesh msh mesh silo +model/vnd.dwf +model/vnd.flatland.3dml +model/vnd.gdl +model/vnd.gs-gdl +model/vnd.gtw +model/vnd.mts +model/vnd.vtu +model/vrml wrl vrml + +multipart/alternative +multipart/appledouble +multipart/byteranges +multipart/digest +multipart/encrypted +multipart/form-data +multipart/header-set +multipart/mixed +multipart/parallel +multipart/related +multipart/report +multipart/signed +multipart/voice-message + +text/calendar ics icz +text/comma-separated-values csv +text/css css +text/directory +text/english +text/enriched +text/h323 323 +text/html html htm shtml +text/iuls uls +text/mathml mml +text/parityfec +text/plain asc txt text diff pot +text/prs.lines.tag +text/rfc822-headers +text/richtext rtx +text/rtf rtf +text/scriptlet sct wsc +text/t140 +text/texmacs tm ts +text/tab-separated-values tsv +text/uri-list +text/vnd.abc +text/vnd.curl +text/vnd.DMClientScript +text/vnd.flatland.3dml +text/vnd.fly +text/vnd.fmi.flexstor +text/vnd.in3d.3dml +text/vnd.in3d.spot +text/vnd.IPTC.NewsML +text/vnd.IPTC.NITF +text/vnd.latex-z +text/vnd.motorola.reflex +text/vnd.ms-mediapackage +text/vnd.sun.j2me.app-descriptor jad +text/vnd.wap.si +text/vnd.wap.sl +text/vnd.wap.wml wml +text/vnd.wap.wmlscript wmls +text/x-c++hdr h++ hpp hxx hh +text/x-c++src c++ cpp cxx cc +text/x-chdr h +text/x-crontab +text/x-csh csh +text/x-csrc c +text/x-java java +text/x-makefile +text/x-moc moc +text/x-pascal p pas +text/x-pcs-gcd gcd +text/x-perl pl pm +text/x-python py +text/x-server-parsed-html +text/x-setext etx +text/x-sh sh +text/x-tcl tcl tk +text/x-tex tex ltx sty cls +text/x-vcalendar vcs +text/x-vcard vcf + +video/dl dl +video/fli fli +video/gl gl +video/mpeg mpeg mpg mpe m4v +video/mp4 mp4 +video/quicktime qt mov +video/mp4v-es +video/parityfec +video/pointer +video/vnd.fvt +video/vnd.motorola.video +video/vnd.motorola.videop +video/vnd.mpegurl mxu +video/vnd.mts +video/vnd.nokia.interleaved-multimedia +video/vnd.vivo +video/x-dv dif dv +video/x-la-asf lsf lsx +video/x-mng mng +video/x-ms-asf asf asx +video/x-ms-wm wm +video/x-ms-wmv wmv +video/x-ms-wmx wmx +video/x-ms-wvx wvx +video/x-msvideo avi +video/x-sgi-movie movie + +x-conference/x-cooltalk ice + +x-world/x-vrml vrm vrml wrl Added: trunk/forge/portal-extensions/shotoku/shotoku-files/src/java/org/jboss/shotoku/files/FileDirectory.java =================================================================== --- trunk/forge/portal-extensions/shotoku/shotoku-files/src/java/org/jboss/shotoku/files/FileDirectory.java 2006-01-24 22:18:44 UTC (rev 2192) +++ trunk/forge/portal-extensions/shotoku/shotoku-files/src/java/org/jboss/shotoku/files/FileDirectory.java 2006-01-24 22:55:11 UTC (rev 2193) @@ -0,0 +1,230 @@ +/* + * JBoss, Home of Professional Open Source + * Copyright 2005, JBoss Inc., and individual contributors as indicated + * by the @authors tag. See the copyright.txt in the distribution for a + * full listing of individual contributors. + * + * This is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation; either version 2.1 of + * the License, or (at your option) any later version. + * + * This software 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this software; if not, write to the Free + * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA, or see the FSF site: http://www.fsf.org. + */ +package org.jboss.shotoku.files; + +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +import org.jboss.shotoku.Directory; +import org.jboss.shotoku.Node; +import org.jboss.shotoku.NodeList; +import org.jboss.shotoku.exceptions.CopyException; +import org.jboss.shotoku.exceptions.DeleteException; +import org.jboss.shotoku.exceptions.MoveException; +import org.jboss.shotoku.exceptions.RepositoryException; +import org.jboss.shotoku.exceptions.ResourceAlreadyExists; +import org.jboss.shotoku.exceptions.ResourceDoesNotExist; +import org.jboss.shotoku.exceptions.SaveException; + +public class FileDirectory implements Directory { + + private File directory; + + /** + * + */ + private static final long serialVersionUID = 1L; + + public FileDirectory(String directory) throws RepositoryException { + File dir = new File(directory); + + if (!dir.isDirectory()) { + throw new RepositoryException(directory + " is not a directory"); + } + + this.directory = dir; + } + + public FileDirectory(File directory) throws RepositoryException { + if (directory.isDirectory()) { + this.directory = directory; + } else { + throw new RepositoryException(directory.getAbsolutePath() + + " is not a directory."); + } + } + + public NodeList getNodes() throws RepositoryException { + List<Node> list = new ArrayList<Node>(); + + File[] children = directory.listFiles(); + + // get all children + for (File file : children) { + if (file.isFile()) { + list.add(new FileNode(file)); + } + } + + return new NodeList(list); + } + + public List<Directory> getDirectories() throws RepositoryException { + List<Directory> list = new ArrayList<Directory>(); + + File[] children = directory.listFiles(); + + // get all children + for (File directory : children) { + if (directory.isDirectory()) { + list.add(new FileDirectory(directory)); + } + } + + return list; + } + + public Node getNode(String name) throws RepositoryException, + ResourceDoesNotExist { + File file = new File(this.directory.getAbsolutePath() + name); + + if (!file.exists()) { + throw new RepositoryException("File " + file.getAbsolutePath() + + " doesn't exists"); + } + return new FileNode(name); + } + + public Directory getDirectory(String name) throws RepositoryException, + ResourceDoesNotExist { + File dir = new File(this.directory.getAbsolutePath() + name); + + if (!dir.exists()) { + throw new RepositoryException("Directory " + dir.getAbsolutePath() + + " doesn't exists"); + } + + return new FileDirectory(dir); + } + + public Node newNode(String name) throws ResourceAlreadyExists, + RepositoryException { + File file = new File(this.directory.getAbsolutePath() + name); + + if (file.exists()) { + throw new ResourceAlreadyExists("File " + file.getAbsolutePath() + + " already exists"); + } else { + try { + if (!file.createNewFile()) { + throw new RepositoryException("Couldn't create new file: " + + file.getAbsolutePath()); + } + } catch (IOException e) { + throw new RepositoryException(e); + } + } + + return new FileNode(file); + } + + public Directory newDirectory(String name) throws ResourceAlreadyExists, + RepositoryException { + File dir = new File(this.directory.getAbsolutePath() + name); + + if (dir.exists()) { + throw new ResourceAlreadyExists("Directory " + + dir.getAbsolutePath() + " already exists"); + } else { + if (!dir.mkdirs()) { + throw new RepositoryException("Couldn't create new directory: " + + dir.getAbsolutePath()); + } + } + + return new FileDirectory(dir); + } + + public boolean hasIndex(String arg0) throws RepositoryException { + // TODO Auto-generated method stub + return false; + } + + public void setIndex(String arg0, boolean arg1) throws RepositoryException { + // TODO Auto-generated method stub + + } + + public void copyTo(Directory arg0, String arg1, String arg2) + throws CopyException { + // TODO Auto-generated method stub + + } + + public void moveTo(Directory arg0, String arg1) throws MoveException { + // TODO Auto-generated method stub + + } + + public Map<String, String> getProperties() throws RepositoryException { + // TODO Auto-generated method stub + return null; + } + + public String getProperty(String arg0) throws RepositoryException { + // TODO Auto-generated method stub + return null; + } + + public void deleteProperty(String arg0) throws RepositoryException { + // TODO Auto-generated method stub + + } + + public void setProperty(String arg0, String arg1) { + // TODO Auto-generated method stub + + } + + public void save(String arg0) throws SaveException, RepositoryException { + // TODO Auto-generated method stub + + } + + public String getLogMessage() throws RepositoryException { + // TODO Auto-generated method stub + return null; + } + + public String getFullName() { + // TODO Auto-generated method stub + return null; + } + + public Directory getParent() throws RepositoryException { + return new FileDirectory(directory.getParentFile()); + } + + public void delete() throws DeleteException, RepositoryException { + // TODO Auto-generated method stub + + } + + public String getName() { + // TODO Auto-generated method stub + return null; + } + +} Added: trunk/forge/portal-extensions/shotoku/shotoku-files/src/java/org/jboss/shotoku/files/FileNode.java =================================================================== --- trunk/forge/portal-extensions/shotoku/shotoku-files/src/java/org/jboss/shotoku/files/FileNode.java 2006-01-24 22:18:44 UTC (rev 2192) +++ trunk/forge/portal-extensions/shotoku/shotoku-files/src/java/org/jboss/shotoku/files/FileNode.java 2006-01-24 22:55:11 UTC (rev 2193) @@ -0,0 +1,381 @@ +/* + * JBoss, Home of Professional Open Source + * Copyright 2005, JBoss Inc., and individual contributors as indicated + * by the @authors tag. See the copyright.txt in the distribution for a + * full listing of individual contributors. + * + * This is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation; either version 2.1 of + * the License, or (at your option) any later version. + * + * This software 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this software; if not, write to the Free + * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA, or see the FSF site: http://www.fsf.org. + */ +package org.jboss.shotoku.files; + +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; +import java.util.Date; +import java.util.Map; + +import org.jboss.shotoku.Directory; +import org.jboss.shotoku.History; +import org.jboss.shotoku.Node; +import org.jboss.shotoku.exceptions.CopyException; +import org.jboss.shotoku.exceptions.DeleteException; +import org.jboss.shotoku.exceptions.MoveException; +import org.jboss.shotoku.exceptions.RepositoryException; +import org.jboss.shotoku.exceptions.SaveException; + +public class FileNode implements Node { + + private File file; + + /** + * + */ + private static final long serialVersionUID = 1L; + + public FileNode(String file) throws RepositoryException { + File fil = new File(file); + + if (!fil.isFile()) { + throw new RepositoryException(file + " is not a file"); + } + + this.file = fil; + } + + public FileNode(File file) throws RepositoryException { + if (file.isFile()) { + this.file = file; + } + else { + throw new RepositoryException(file.getAbsolutePath()+" is not a file."); + } + } + + public String getContent() throws RepositoryException { + StringBuffer buffer = new StringBuffer(); + + try { + InputStream is = new FileInputStream(file); + + char chr; + + while ((chr = (char)is.read()) != -1) { + buffer.append(chr); + } + + is.close(); + } catch (FileNotFoundException e) { + new RepositoryException(e); + } catch (IOException e) { + new RepositoryException(e); + } + + + return buffer.toString(); + } + + public void setContent(String content) { + try { + OutputStream os = new FileOutputStream(file); + + for (int i = 0; i < content.length(); i++) { + os.write(content.charAt(i)); + } + + os.close(); + } catch (FileNotFoundException e) { + new RepositoryException(e); + } catch (IOException e) { + new RepositoryException(e); + } + } + + public void setContent(InputStream is) { + try { + OutputStream os = new FileOutputStream(file); + + int i; + + while ((i = is.read()) != -1) { + os.write(i); + } + + os.close(); + } catch (FileNotFoundException e) { + new RepositoryException(e); + } catch (IOException e) { + new RepositoryException(e); + } + } + + public void setContent(byte[] b) { + try { + OutputStream os = new FileOutputStream(file); + + os.write(b); + + os.close(); + } catch (FileNotFoundException e) { + new RepositoryException(e); + } catch (IOException e) { + new RepositoryException(e); + } + } + + public OutputStream getOutputStream() { + try { + return new FileOutputStream(file); + } catch (FileNotFoundException e) { + e.printStackTrace(); + return null; + } + } + + public History getHistory() throws RepositoryException { + // TODO Auto-generated method stub + return null; + } + + public int getRevisionNumber() throws RepositoryException { + // TODO Auto-generated method stub + return 0; + } + + public void copyToFile(String fileName) throws RepositoryException { + try { + OutputStream os = new FileOutputStream(new File(fileName)); + InputStream is = getContentInputStream(); + + int b; + while ((b = is.read()) != -1) + os.write(b); + + os.close(); is.close(); + + } catch (FileNotFoundException e) { + new RepositoryException(e); + } catch (IOException e) { + new RepositoryException(e); + } + + } + + public InputStream getContentInputStream() throws RepositoryException { + try { + return new FileInputStream(file); + } catch (FileNotFoundException e) { + throw new RepositoryException(e); + } + } + + public byte[] getContentByteArray() throws RepositoryException { + InputStream is = getContentInputStream(); + + byte[] b = new byte[(int)getLength()]; + + try { + is.read(b); + + is.close(); + + return b; + } catch (IOException e) { + throw new RepositoryException(e); + } + } + + public long getLength() throws RepositoryException { + return file.length(); + } + + public long getLastModification() throws RepositoryException { + return file.lastModified(); + } + + public Date getLastModificationDate() throws RepositoryException { + return new Date(getLastModification()); + } + + public String getMimeType() { + // TODO Auto-generated method stub + return null; + } + + /** + * Copies this resource to the given directory. This can't be called if + * this resource is new and not yet saved. + * + * @param dir + * Directory to copy this resource to. This can't be a new and + * not saved directory. + * @param newName + * New name of this resource (in directory dir after copying). + * @param logMessage + * Log message associated with this resource copy. + * @throws CopyException + */ + public void copyTo(Directory dir, String newName, + String logMessage) throws CopyException{ + //TODO + } + + /** + * Moves this resource to the given directory. This can't be called if + * this resource is new and not yet saved. This resource should not be + * used after performing this operation. + * + * @param dir + * Directory to move this resource to. This can't be a new and + * not saved directory. + * @param logMessage + * Log message associated with this resource move. + * @throws MoveException + */ + public void moveTo(Directory dir, String logMessage) throws MoveException{ + //TODO + } + + /** + * Gets a map of all properties associated with this resource. + * + * @return A map of properties associated with this resource. + * @throws RepositoryException + */ + public Map<String, String> getProperties() throws RepositoryException{ + //TODO + return null; + } + + /** + * Gets the value of the given property. + * + * @param propertyName + * Name of the property to get. + * @return Value of the given property. + * @throws RepositoryException + */ + public String getProperty(String propertyName) throws RepositoryException{ + //TODO + return null; + } + + /** + * Deletes the the given property. + * + * @param propertyName + * Name of the property to delete. + * @throws RepositoryException + */ + public void deleteProperty(String propertyName) throws RepositoryException{ + //TODO + } + + /** + * Sets the value of the given property. Only after saving this change will be + * persisted. + * + * @param propertyName + * Name of the property to set. It must begin with a character, + * and cannot contain any special characters (so the regexp to which + * a property name must match would be [a-z][a-z0-9]*). + * @param propertyValue + * Value of the property to set. + */ + public void setProperty(String propertyName, String propertyValue){ + //TODO + } + + /** + * Gets a directory to which this node/ directory belongs. + * + * @return A directory to which this node/ directory belongs. Null if this + * directory is already the root directory. + */ + public Directory getParent() throws RepositoryException{ + return new FileDirectory(file.getParentFile()); + } + + /** + * Saves modified properties and possibly content (in case of nodes). + * + * @param logMessage + * Log message for saving this node/ directory. + * @throws SaveException + * @throws RepositoryException + */ + public void save(String logMessage) throws SaveException, RepositoryException{ + //TODO + + } + + /** + * Gets a log message with which this node/ directory was saved. + * + * @return Log message with which this node/ directory was saved. Null, if + * the resource is not yet saved or contains modifications. + * @throws RepositoryException + */ + public String getLogMessage() throws RepositoryException{ + //TODO + return null; + + } + + /** + * Deletes this node or directory (immediately, no <code>save()</code> is + * needed). This resource should not be used after performing this + * operation. + * + * @throws DeleteException + * @throws RepositoryException + */ + public void delete() throws DeleteException, RepositoryException{ + try { + if (!file.delete()) { + throw new DeleteException("Couldn't delete file "+file.getAbsolutePath()); + } + } catch (SecurityException e) { + throw new RepositoryException(e); + } + } + + /** + * Gets the name of this resource (node/ directory). + * + * @return Name of this resource (node/ directory). An empty string, if this + * is the root directory. + */ + public String getName() { + //TODO + return null; + } + + /** + * Gets the full name of this resource, that is, path to this resource + * relative to the content manager this node was read from. + * + * @return Full name of this resource. + */ + public String getFullName(){ + //TODO + return null; + } + +} Added: trunk/forge/portal-extensions/shotoku/shotoku-files/src/java/org/jboss/shotoku/files/FilesContentManager.java =================================================================== --- trunk/forge/portal-extensions/shotoku/shotoku-files/src/java/org/jboss/shotoku/files/FilesContentManager.java 2006-01-24 22:18:44 UTC (rev 2192) +++ trunk/forge/portal-extensions/shotoku/shotoku-files/src/java/org/jboss/shotoku/files/FilesContentManager.java 2006-01-24 22:55:11 UTC (rev 2193) @@ -0,0 +1,76 @@ +/* + * JBoss, Home of Professional Open Source + * Copyright 2005, JBoss Inc., and individual contributors as indicated + * by the @authors tag. See the copyright.txt in the distribution for a + * full listing of individual contributors. + * + * This is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation; either version 2.1 of + * the License, or (at your option) any later version. + * + * This software 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this software; if not, write to the Free + * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA, or see the FSF site: http://www.fsf.org. + */ +package org.jboss.shotoku.files; + +import java.util.Collection; + +import org.jboss.shotoku.ContentManager; +import org.jboss.shotoku.Directory; +import org.jboss.shotoku.Node; +import org.jboss.shotoku.Resource; +import org.jboss.shotoku.exceptions.DeleteException; +import org.jboss.shotoku.exceptions.RepositoryException; +import org.jboss.shotoku.exceptions.ResourceDoesNotExist; +import org.jboss.shotoku.exceptions.SaveException; + +public class FilesContentManager extends ContentManager { + + public FilesContentManager(String arg0, String arg1) throws RepositoryException { + super(arg0, arg1); + // TODO Auto-generated constructor stub + } + + @Override + public Directory getRootDirectory() throws RepositoryException { + // TODO Auto-generated method stub + return null; + } + + @Override + public Node getNode(String arg0) throws ResourceDoesNotExist, + RepositoryException { + // TODO Auto-generated method stub + return null; + } + + @Override + public Directory getDirectory(String arg0) throws ResourceDoesNotExist, + RepositoryException { + // TODO Auto-generated method stub + return null; + } + + @Override + public void save(Collection<Resource> arg0, String arg1) + throws SaveException, RepositoryException { + // TODO Auto-generated method stub + + } + + @Override + public void delete(Collection<Resource> arg0) throws DeleteException, + RepositoryException { + // TODO Auto-generated method stub + + } + +} |