summaryrefslogtreecommitdiff
path: root/libjava/scripts
diff options
context:
space:
mode:
authorgreen <green@138bc75d-0d04-0410-961f-82ee72b054a4>2000-02-21 05:54:29 +0000
committergreen <green@138bc75d-0d04-0410-961f-82ee72b054a4>2000-02-21 05:54:29 +0000
commit3dbf502938fed9a9aa14d36c9c7b2bcb19f29b4b (patch)
tree5348c0d2f6947295be47163fd566b9b5264a8749 /libjava/scripts
parent9a069e71d21fdcc5f0bb618c28257b9ff7d9cbe7 (diff)
downloadgcc-3dbf502938fed9a9aa14d36c9c7b2bcb19f29b4b.tar.gz
* Makefile.in: Rebuilt.
* Makefile.am (ordinary_java_source_files): Add gnu/gcj/io/DefaultMimeTypes.java and gnu/gcj/io/MimeTypes.java * scripts/MakeDefaultMimeTypes.java: New file. * scripts/mime.types: New file. * scripts/classes.pl: Moved from top level. * classes.pl: Moved to scripts directory. * java/net/URLConnection.java: Implement guessContentTypeFromName. * gnu/gcj/io/MimeTypes.java: New file. * gnu/gcj/io/DefaultMimeTypes.java: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@32086 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/scripts')
-rw-r--r--libjava/scripts/MakeDefaultMimeTypes.java93
-rw-r--r--libjava/scripts/classes.pl104
-rw-r--r--libjava/scripts/mime.types276
3 files changed, 473 insertions, 0 deletions
diff --git a/libjava/scripts/MakeDefaultMimeTypes.java b/libjava/scripts/MakeDefaultMimeTypes.java
new file mode 100644
index 00000000000..a84c4a4deba
--- /dev/null
+++ b/libjava/scripts/MakeDefaultMimeTypes.java
@@ -0,0 +1,93 @@
+/* Copyright (C) 2000 Red Hat, Inc.
+
+ This file is part of libgcj.
+
+This software is copyrighted work licensed under the terms of the
+Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
+details. */
+
+import gnu.gcj.io.MimeTypes;
+import java.io.IOException;
+import java.io.FileNotFoundException;
+import java.util.Hashtable;
+import java.util.Enumeration;
+import java.util.NoSuchElementException;
+
+public class MakeDefaultMimeTypes
+{
+ private static void fatal (String message)
+ {
+ System.err.println ("MakeDefaultMimeTypes Error: " + message);
+ System.exit (-1);
+ }
+
+ public static void main (String[] args)
+ {
+ Hashtable mime_table = new Hashtable ();
+
+ if (args.length != 1)
+ fatal ("missing mime type filename");
+
+ try {
+ MimeTypes.fillFromFile (mime_table, args[0]);
+ } catch (FileNotFoundException ex) {
+ fatal ("can't open " + args[0]);
+ } catch (IOException ex) {
+ fatal ("error reading " + args[0]);
+ }
+
+ System.out.println ("// Do not edit this file! Create a new version with MakeDefaultMimeTypes.\
+\
+/* Copyright (C) 2000 Red Hat, Inc.\
+\
+ This file is part of libgcj.\
+\
+This software is copyrighted work licensed under the terms of the\
+Libgcj License. Please consult the file \"LIBGCJ_LICENSE\" for\
+details. */\
+\
+package gnu.gcj.io; \
+\
+public class DefaultMimeTypes\
+{\
+ public static final String[] types = {");
+
+ Enumeration keys = mime_table.keys();
+ Enumeration values = mime_table.elements();
+
+ // Prepend first element with open bracket
+ StringBuffer result = new StringBuffer("");
+
+ try
+ {
+ result.append(" \""
+ + keys.nextElement().toString()
+ + "\",\t\""
+ + values.nextElement().toString()
+ + "\"\n");
+ }
+ catch (NoSuchElementException ex)
+ {
+ }
+
+ // Prepend subsequent elements with ", "
+ try
+ {
+ while (true)
+ result.append(" , \""
+ + keys.nextElement().toString()
+ + "\",\t\""
+ + values.nextElement().toString()
+ + "\"\n");
+ }
+ catch (NoSuchElementException ex)
+ {
+ }
+
+ // Append last element with closing bracket
+ result.append(" };\
+}\
+");
+ System.out.println(result);
+ }
+}
diff --git a/libjava/scripts/classes.pl b/libjava/scripts/classes.pl
new file mode 100644
index 00000000000..05f9133af2b
--- /dev/null
+++ b/libjava/scripts/classes.pl
@@ -0,0 +1,104 @@
+# classes.pl - A perl program to generate most of the contents of
+# javaprims.h automatically.
+
+# Copyright (C) 1998, 1999 Red Hat, Inc.
+#
+# This file is part of libjava.
+#
+# This software is copyrighted work licensed under the terms of the
+# Libjava License. Please consult the file "LIBJAVA_LICENSE" for
+# details.
+
+# Usage: cd <top-srcdir> ; perl classes.pl.
+# Can also be run from the `gcj' directory; this lets us
+# more easily insert the output into javaprims.h (which is where it goes).
+
+use DirHandle;
+
+if (-d 'java')
+{
+ # Ok here.
+}
+elsif (-d '../java')
+{
+ chdir ('..');
+}
+else
+{
+ die "couldn't find java directory\n";
+}
+
+&scan ('java', 2);
+
+exit 0;
+
+sub scan
+{
+ local ($dir, $indent) = @_;
+ local (@subdirs) = ();
+ local (%classes) = ();
+
+ local ($d) = new DirHandle $dir;
+ local (*JFILE);
+ local ($name);
+ if (defined $d)
+ {
+ while (defined ($name = $d->read))
+ {
+ next if $name eq 'CVS';
+ next if $name eq '.';
+ next if $name eq '..';
+ if ($dir eq 'java'
+ && $name ne 'lang'
+ && $name ne 'util'
+ && $name ne 'io')
+ {
+ # We only generate decls for java.lang, java.io, and
+ # java.util.
+ next;
+ }
+ if (-d ($dir . '/' . $name))
+ {
+ push (@subdirs, $name);
+ next;
+ }
+ next unless $name =~ /\.java$/;
+
+ open (FILE, "< $dir/$name");
+ while (<FILE>)
+ {
+ # NOTE: we don't skip `/*' comments.
+ s,//.*$,,;
+ # For now assume that class names start with upper
+ # case letter.
+ next unless /(class|interface) ([A-Z][A-Za-z0-9]+)/;
+ $classes{$2} = 1;
+ }
+ close (FILE);
+ }
+
+ undef $d;
+ }
+
+ local ($spaces) = ' ' x $indent;
+ local ($classname);
+ ($classname = $dir) =~ s/^.*\///;
+ print $spaces, "namespace ", $classname, "\n";
+ print $spaces, "{\n";
+
+ foreach (sort keys %classes)
+ {
+ print $spaces, " class ", $_, ";\n";
+ }
+ print "\n" if scalar @classes > 0 && scalar @subdirs > 0;
+
+ local ($first) = 1;
+ foreach (sort @subdirs)
+ {
+ print "\n" unless $first;
+ $first = 0;
+ &scan ("$dir/$_", $indent + 2);
+ }
+
+ print $spaces, "}\n";
+}
diff --git a/libjava/scripts/mime.types b/libjava/scripts/mime.types
new file mode 100644
index 00000000000..d6819023e83
--- /dev/null
+++ b/libjava/scripts/mime.types
@@ -0,0 +1,276 @@
+# This is the default mime.types file from the Apache web server distribution
+
+# This file controls what Internet media types are sent to the client for
+# given file extension(s). Sending the correct media type to the client
+# is important so they know how to handle the content of the file.
+# Extra types can either be added here or by using an AddType directive
+# in your config files. For more information about Internet media types,
+# please read RFC 2045, 2046, 2047, 2048, and 2077. The Internet media type
+# registry is at <ftp://ftp.iana.org/in-notes/iana/assignments/media-types/>.
+
+# MIME type Extension
+application/EDI-Consent
+application/EDI-X12
+application/EDIFACT
+application/activemessage
+application/andrew-inset ez
+application/applefile
+application/atomicmail
+application/cals-1840
+application/commonground
+application/cybercash
+application/dca-rft
+application/dec-dx
+application/eshop
+application/hyperstudio
+application/iges
+application/mac-binhex40 hqx
+application/mac-compactpro cpt
+application/macwriteii
+application/marc
+application/mathematica
+application/msword doc
+application/news-message-id
+application/news-transmission
+application/octet-stream bin dms lha lzh exe class
+application/oda oda
+application/pdf pdf
+application/pgp-encrypted
+application/pgp-keys
+application/pgp-signature
+application/pkcs10
+application/pkcs7-mime
+application/pkcs7-signature
+application/postscript ai eps ps
+application/prs.alvestrand.titrax-sheet
+application/prs.cww
+application/prs.nprend
+application/remote-printing
+application/riscos
+application/rtf rtf
+application/set-payment
+application/set-payment-initiation
+application/set-registration
+application/set-registration-initiation
+application/sgml
+application/sgml-open-catalog
+application/slate
+application/smil smi smil
+application/vemmi
+application/vnd.3M.Post-it-Notes
+application/vnd.FloGraphIt
+application/vnd.acucobol
+application/vnd.anser-web-certificate-issue-initiation
+application/vnd.anser-web-funds-transfer-initiation
+application/vnd.audiograph
+application/vnd.businessobjects
+application/vnd.claymore
+application/vnd.comsocaller
+application/vnd.dna
+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.salt
+application/vnd.fdf
+application/vnd.ffsns
+application/vnd.framemaker
+application/vnd.fujitsu.oasys
+application/vnd.fujitsu.oasys2
+application/vnd.fujitsu.oasys3
+application/vnd.fujitsu.oasysgp
+application/vnd.fujitsu.oasysprs
+application/vnd.fujixerox.docuworks
+application/vnd.hp-HPGL
+application/vnd.hp-PCL
+application/vnd.hp-PCLXL
+application/vnd.hp-hps
+application/vnd.ibm.MiniPay
+application/vnd.ibm.modcap
+application/vnd.intercon.formnet
+application/vnd.intertrust.digibox
+application/vnd.intertrust.nncp
+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-organizer
+application/vnd.lotus-screencam
+application/vnd.lotus-wordpro
+application/vnd.meridian-slingshot
+application/vnd.mif mif
+application/vnd.minisoft-hp3000-save
+application/vnd.mitsubishi.misty-guard.trustweb
+application/vnd.ms-artgalry
+application/vnd.ms-asf
+application/vnd.ms-excel
+application/vnd.ms-powerpoint ppt
+application/vnd.ms-project
+application/vnd.ms-tnef
+application/vnd.ms-works
+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.osa.netdeploy
+application/vnd.powerbuilder6
+application/vnd.powerbuilder6-s
+application/vnd.rapid
+application/vnd.seemail
+application/vnd.shana.informed.formtemplate
+application/vnd.shana.informed.interchange
+application/vnd.shana.informed.package
+application/vnd.street-stream
+application/vnd.svd
+application/vnd.swiftview-ics
+application/vnd.truedoc
+application/vnd.visio
+application/vnd.webturbo
+application/vnd.wrq-hp3000-labelled
+application/vnd.wt.stf
+application/vnd.xara
+application/vnd.yellowriver-custom-menu
+application/wita
+application/wordperfect5.1
+application/x-bcpio bcpio
+application/x-cdlink vcd
+application/x-chess-pgn pgn
+application/x-compress
+application/x-cpio cpio
+application/x-csh csh
+application/x-director dcr dir dxr
+application/x-dvi dvi
+application/x-futuresplash spl
+application/x-gtar gtar
+application/x-gzip
+application/x-hdf hdf
+application/x-javascript js
+application/x-koan skp skd skt skm
+application/x-latex latex
+application/x-netcdf nc cdf
+# The standard is that rpm is audio/x-pn-realaudio-plugin... oh well...
+application/x-rpm rpm
+application/x-sh sh
+application/x-shar shar
+application/x-shockwave-flash swf
+application/x-stuffit sit
+application/x-sv4cpio sv4cpio
+application/x-sv4crc sv4crc
+application/x-tar tar
+application/x-tcl tcl
+application/x-tex tex
+application/x-texinfo texinfo texi
+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-wais-source src
+application/x400-bp
+application/xml
+application/zip zip
+audio/32kadpcm
+audio/basic au snd
+audio/midi mid midi kar
+audio/mpeg mpga mp2 mp3
+audio/vnd.qcelp
+audio/x-aiff aif aiff aifc
+audio/x-pn-realaudio ram rm
+audio/x-realaudio ra
+audio/x-wav wav
+chemical/x-pdb pdb xyz
+image/cgm
+image/g3fax
+image/gif gif
+image/ief ief
+image/jpeg jpeg jpg jpe
+image/naplps
+image/png png
+image/prs.btif
+image/tiff tiff tif
+image/vnd.dwg
+image/vnd.dxf
+image/vnd.fpx
+image/vnd.net-fpx
+image/vnd.svf
+image/vnd.xiff
+image/x-cmu-raster ras
+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
+message/delivery-status
+message/disposition-notification
+message/external-body
+message/http
+message/news
+message/partial
+message/rfc822
+model/iges igs iges
+model/mesh msh mesh silo
+model/vnd.dwf
+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/css css
+text/directory
+text/enriched
+text/html html htm
+text/plain asc txt
+text/prs.lines.tag
+text/rfc822-headers
+text/richtext rtx
+text/rtf rtf
+text/sgml sgml sgm
+text/tab-separated-values tsv
+text/uri-list
+text/vnd.abc
+text/vnd.flatland.3dml
+text/vnd.fmi.flexstor
+text/vnd.in3d.3dml
+text/vnd.in3d.spot
+text/vnd.latex-z
+text/x-setext etx
+text/xml xml
+video/mpeg mpeg mpg mpe
+video/quicktime qt mov
+video/vnd.motorola.video
+video/vnd.motorola.videop
+video/vnd.vivo
+video/x-msvideo avi
+video/x-sgi-movie movie
+x-conference/x-cooltalk ice