1 /*
   2  * Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.
   8  *
   9  * This code is distributed in the hope that it will be useful, but WITHOUT
  10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12  * version 2 for more details (a copy is included in the LICENSE file that
  13  * accompanied this code).
  14  *
  15  * You should have received a copy of the GNU General Public License version
  16  * 2 along with this work; if not, write to the Free Software Foundation,
  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  */
  23 
  24 // These classes are not referenced in the JDK but we can't
  25 // remove them for compatibility reason.  Define this module
  26 // first so that other modules don't need to exclude these clases
  27 module private-legacy {
  28     include sun.misc.Cache*,
  29             sun.misc.ClassLoaderUtil,
  30             sun.misc.Compare,
  31             sun.misc.ConditionLock,
  32             sun.misc.CRC16,
  33             sun.misc.Lock,
  34             sun.misc.Regexp,
  35             sun.misc.RequestProcessor,
  36             sun.misc.Sort,
  37             sun.misc.Request,
  38             sun.misc.Timeable,
  39             sun.misc.Timer,
  40             sun.misc.TimerThread,
  41             sun.misc.TimerTickThread,
  42             sun.misc.UCDecoder,
  43             sun.misc.UCEncoder,
  44             sun.misc.UUDecoder,
  45             sun.misc.UUEncoder,
  46             com.sun.net.ssl.SSLContext,
  47             sun.net.NetworkServer,
  48             sun.net.URLCanonicalizer,
  49             sun.reflect.misc.ConstructorUtil,
  50             sun.reflect.FieldInfo,
  51             sun.reflect.SignatureIterator,
  52             sun.reflect.generics.reflectiveObjects.NotImplementedException,
  53             sunw.io.Serializable,
  54             sunw.util.EventListener,
  55             sunw.util.EventObject;
  56 }
  57 
  58 // Deprecated classes that aren't referenced/used go here.
  59 module deprecated {
  60     // add deprecated security classes once b78 is promoted
  61 }
  62 
  63 /**************************************************************************/
  64 
  65 module base {
  66     // core classes
  67     include java.lang.*,
  68             java.lang.annotation.*,
  69             java.lang.ref.*,
  70             java.lang.reflect.*,
  71             java.math.*,
  72             java.net.*,
  73             java.util.*,
  74             java.util.concurrent.**,
  75             java.util.jar.*,
  76             java.util.regex.*,
  77             java.util.spi.*,
  78             java.util.zip.*,
  79             java.text.**;
  80 
  81     exclude java.util.jar.Pack200*,
  82             java.util.XMLUtils,
  83             java.text.Bidi;
  84 
  85     include java.io.*, java.nio.*, java.nio.charset.**;
  86     exclude java.io.TempFileHelper, java.nio.BufferPoolMXBean;
  87 
  88     // security APIs
  89     // javax.crypto and javax.security.auth are included to avoid inconsistent
  90     // spliting of JCA and JAAS. This adds about 85k. Also note that some deprecated
  91     // classes must be included for now (see 6876158, 6876170)
  92     include java.security.*,
  93             java.security.cert.*,
  94             java.security.interfaces.*,
  95             java.security.spec.*,
  96             javax.security.auth.**,
  97             javax.crypto.**;
  98 
  99     // Sun and RSA security providers (except LDAP CertStore)
 100     // roots sun.security.provider.* sun.security.provider.certpath.* sun.security.rsa.*
 101     include com.sun.security.auth.PrincipalComparator,
 102             com.sun.security.auth.SubjectCodeSource,
 103             com.sun.security.auth.login.**,
 104             com.sun.security.auth.Policy*,
 105             sun.security.action.*,
 106             sun.security.ec.*,
 107             sun.security.jca.*,
 108             sun.security.pkcs.*,
 109             sun.security.provider.*,
 110             sun.security.provider.certpath.*,
 111             sun.security.rsa.*,
 112             sun.security.util.*,
 113             sun.security.validator.*,
 114             sun.security.x509.*,
 115             sun.security.timestamp.*;
 116 
 117     // this list is based on the classlist generated from the rootset
 118     // need investigation
 119     exclude sun.security.ec.ECD*,
 120             sun.security.ec.ECKeyPairGenerator,
 121             sun.security.ec.SunEC*,
 122             sun.security.pkcs.PKCS10*,
 123             sun.security.pkcs.EncodingException,
 124             sun.security.util.AuthResources_*,
 125             sun.security.util.Resources_*,
 126             sun.security.util.BigInt,
 127             sun.security.util.HostnameChecker,
 128             sun.security.x509.CertAndKeyGen,
 129             sun.security.util.PathList;
 130 
 131     // Kerberos not needed
 132     exclude javax.security.auth.kerberos.**,
 133             sun.security.jgss.**,
 134             sun.security.krb5.**,
 135             sun.security.ssl.Kerberos*,
 136             org.ietf.jgss.**;
 137 
 138    // property events and annotations
 139    include java.beans.ChangeListenerMap,
 140            java.beans.IndexedPropertyChangeEvent,
 141            java.beans.PropertyChange*,
 142            java.beans.PropertyVetoException,
 143            java.beans.VetoableChange*,
 144            java.beans.ConstructorProperties;
 145 
 146     // mandatory charsets
 147     include sun.nio.cs.*;
 148 
 149     exclude sun.nio.cs.AbstractCharsetProvider,
 150             sun.nio.cs.CharsetMapping,
 151             sun.nio.cs.IBM*,
 152             sun.nio.cs.ISO*,
 153             sun.nio.cs.KOI8_*,
 154             sun.nio.cs.MS125*,
 155             sun.nio.cs.UTF_32*,
 156             sun.nio.cs.SingleByteDecoder,
 157             sun.nio.cs.SingleByteEncoder;
 158 
 159     allow   sun.nio.cs.ISO_8859_1,
 160             sun.nio.cs.ISO_8859_15,
 161             sun.nio.cs.MS1252;
 162 
 163     include sun.text.*,
 164             sun.text.normalizer.*;
 165 
 166     // resource files
 167     include sun/text/resources/*.icu;
 168 
 169     exclude sun.text.bidi.*,
 170             sun.text.CharArrayCodePointIterator,
 171             sun.text.CharSequenceCodePointIterator,
 172             sun.text.CharacterIteratorCodePointIterator,
 173             sun.text.CodePointIterator;
 174 
 175     include sun.util.*,
 176             sun.util.calendar.*,
 177             sun.util.logging.*,
 178             sun.util.resources.LocaleData,
 179             sun.util.resources.LocaleNamesBundle,
 180             sun.util.resources.OpenListResourceBundle;
 181 
 182     // US_en locale
 183     include sun.text.resources.BreakIteratorInfo,
 184             sun.text.resources.FormatData,
 185             sun.text.resources.FormatData_en_US,
 186             sun.util.resources.CalendarData,
 187             sun.util.resources.CalendarData_en,
 188             sun.util.resources.TimeZoneNames,
 189             sun.util.resources.TimeZoneNames_en,
 190             sun.util.resources.TimeZoneNamesBundle,
 191             sun.util.resources.LocaleNames,
 192             sun.util.resources.LocaleNames_en,
 193             sun.util.resources.LocalenamesBundles,
 194             sun.util.resources.CurrencyNames,
 195             sun.util.resources.CurrencyNames_en_US,
 196             sun.util.EmptyListResourceBundle;
 197 
 198     // resources file needed by
 199     // - sun.misc.ExtensionInfo
 200     // - sun.security.provider.PolicyFile
 201     // - com.sun.security.auth.PolicyFile
 202     include sun.misc.resources.Messages,
 203             sun.security.util.Resources,
 204             sun.security.util.AuthResources;
 205 
 206     // java.nio.channels and java.nio.file not in base
 207     include sun.nio.ch.Interruptible,
 208             sun.nio.ch.DirectBuffer,
 209             sun.nio.ByteBuffered;
 210 
 211     include sun.reflect.**;
 212 
 213     // protocol handlers
 214     include sun.net.www.protocol.file.*,
 215             sun.net.www.protocol.jar.*,
 216             sun.net.www.protocol.http.*;
 217 
 218     include sun.net.*,
 219             sun.net.spi.*,
 220             sun.net.idn.*,
 221             sun.net.util.*,
 222             sun.net.www.*,
 223             sun.net.www.http.*,
 224             sun.net.spi.nameservice.*;
 225 
 226     // resource file for sun.net.idn
 227     include sun/net/idn/*;
 228 
 229     // classes in net-compat
 230     exclude sun.net.Telnet*, sun.net.TransferProtocolClient;
 231 
 232     // classes in deploy
 233     exclude sun.net.www.protocol.http.AuthCacheBridge;
 234 
 235     // classes in security-jsse
 236     exclude java.net.SecureCacheResponse;
 237 
 238     // launcher
 239     include sun.launcher.LauncherHelper, sun.launcher.resources.launcher;
 240 
 241     include sun.misc.*;
 242     exclude sun.misc.FIFOQueueEnumerator,
 243             sun.misc.LIFOQueueEnumerator,
 244             sun.misc.GC,
 245             sun.misc.PerformanceLogger,
 246             sun.misc.Queue,
 247             sun.misc.QueueElement,
 248             sun.misc.Ref,
 249             sun.misc.VMSupport;
 250 
 251     // On Windows, OSEnvironment dependency
 252     include sun.io.Win32ErrorMode;
 253 }
 254 
 255 /**************************************************************************/
 256 
 257 module charsets {
 258     include sun.nio.cs.ext.**;
 259 
 260     include sun.nio.cs.AbstractCharsetProvider,
 261             sun.nio.cs.CharsetMapping,
 262             sun.nio.cs.IBM*,
 263             sun.nio.cs.ISO*,
 264             sun.nio.cs.KOI8_*,
 265             sun.nio.cs.MS125*,
 266             sun.nio.cs.SingleByte*,
 267             sun.nio.cs.UTF_32*;
 268 
 269     exclude sun.nio.cs.ISO_8859_1,
 270             sun.nio.cs.MS1252;
 271 
 272     // legacy sun.io converters
 273     include sun.io.*;
 274 }
 275 
 276 /**************************************************************************/
 277 
 278 // For now, retains the current JRE extensions where localedata.jar in jre/lib/ext 
 279 module localedata {
 280     include sun.util.resources.*_ar,
 281             sun.util.resources.*_ar_*,
 282             sun.util.resources.*_hi,
 283             sun.util.resources.*_hi_*,
 284             sun.util.resources.*_iw,
 285             sun.util.resources.*_iw_*,
 286             sun.util.resources.*_ja,
 287             sun.util.resources.*_ja_*,
 288             sun.util.resources.*_ko,
 289             sun.util.resources.*_ko_*,
 290             sun.util.resources.*_th,
 291             sun.util.resources.*_th_*,
 292             sun.util.resources.*_vi,
 293             sun.util.resources.*_vi_*,
 294             sun.util.resources.*_zh,
 295             sun.util.resources.*_zh_*;
 296     include sun.text.resources.*_ar,
 297             sun.text.resources.*_ar_*,
 298             sun.text.resources.*_hi,
 299             sun.text.resources.*_hi_*,
 300             sun.text.resources.*_iw,
 301             sun.text.resources.*_iw_*,
 302             sun.text.resources.*_ja,
 303             sun.text.resources.*_ja_*,
 304             sun.text.resources.*_ko,
 305             sun.text.resources.*_ko_*,
 306             sun.text.resources.*_th,
 307             sun.text.resources.*_th_*,
 308             sun.text.resources.*_vi,
 309             sun.text.resources.*_vi_*,
 310             sun.text.resources.*_zh,
 311             sun.text.resources.*_zh_*;
 312 }
 313 
 314 module resources {
 315     include sun.text.resources.*, sun.util.resources.*, sun.misc.resources.*;
 316 }
 317 
 318 /**************************************************************************/
 319 
 320 module nio {
 321     include java.nio.channels.**, java.nio.file.**, com.sun.nio.file.**;
 322 
 323     // this is excluded from base
 324     include java.io.TempFileHelper;
 325 
 326     // provider implementations and their dependencies
 327     include sun.nio.ch.*, sun.nio.fs.**;
 328     exclude sun.nio.ch.Sctp*;
 329 }
 330 
 331 /**************************************************************************/
 332 
 333 module pack200 {
 334     include java.util.jar.Pack200*, com.sun.java.util.jar.pack.**;
 335 }
 336 
 337 /**************************************************************************/
 338 
 339 module logging {
 340     include java.util.logging.*, sun.util.logging.**;
 341     exclude java.util.logging.PlatformLoggingMXBean;
 342 
 343     // Formatter for HTTP messages
 344     include sun.net.www.protocol.http.logging.*;
 345 }
 346 
 347 /**************************************************************************/
 348 
 349 module management-snmp {
 350     include com.sun.jmx.snmp.**, sun.management.snmp.**;
 351 }
 352 
 353 module management-iiop {
 354     include com.sun.jmx.remote.protocol.iiop.*;
 355 
 356     // stubs and ties
 357     include javax.management.remote.rmi._*,
 358             org.omg.stub.javax.management.remote.rmi.**;
 359 }
 360 
 361 module management {
 362     include java.lang.management.*, com.sun.management.**, sun.management.**;
 363     include javax.management.**, com.sun.jmx.**;
 364 
 365     // other management interfaces
 366     include java.nio.BufferPoolMXBean;
 367     include java.util.logging.PlatformLoggingMXBean;
 368 
 369     // supporting classes in sun.misc
 370     include sun.misc.VMSupport;
 371 }
 372 
 373 /**************************************************************************/
 374 
 375 module tracing {
 376     // tracing
 377     include com.sun.tracing.**, sun.tracing.**;
 378 }
 379 
 380 module instrument {
 381     // java.lang.instrument
 382     include java.lang.instrument.*, sun.instrument.*;
 383 
 384     // HPROF support
 385     include com.sun.demo.jvmti.hprof.*;
 386 
 387     include tracing;
 388 }
 389 
 390 /**************************************************************************/
 391 
 392 module rmi-activation {
 393     include java.rmi.activation.**,
 394             sun.rmi.server.Act*,
 395             sun.rmi.server.InactiveGroupException;
 396 }
 397 
 398 module rmic {
 399     // rmic is included in tools
 400     include sun.rmi.rmic.**;
 401 }
 402 
 403 module rmi {
 404     include java.rmi.**, sun.rmi.**, com.sun.rmi.**;
 405 
 406     // SSL factories are in rmi
 407     include javax.rmi.ssl.**;
 408 
 409     // supporting classes in sun.misc and dependencies
 410     include sun.misc.GC;
 411 }
 412 
 413 /**************************************************************************/
 414 
 415 module prefs {
 416     include java.util.prefs.*;
 417 }
 418 
 419 /**************************************************************************/
 420 
 421 module security-jsse {
 422     include javax.net.**,
 423             javax.security.cert.*,
 424             java.net.SecureCacheResponse,
 425             com.sun.net.ssl.**,
 426             com.sun.security.cert.internal.x509.*,
 427             sun.security.ssl.*,
 428             sun.net.www.protocol.https.**,
 429             sun.security.internal.interfaces.Tls*,
 430             sun.security.internal.spec.Tls*,
 431             sun.security.util.HostnameChecker;
 432 }
 433 
 434 module security-sunpkcs11 {
 435     include sun.security.pkcs11.**;
 436 }
 437 
 438 module security-sunjce {
 439     include com.sun.crypto.provider.*;
 440 }
 441 
 442 module security-sunec {
 443     include sun.security.ec.*;
 444 }
 445 
 446 module security-sunmscapi {
 447     include sun.security.mscapi.*;
 448 }
 449 
 450 module security-kerberos {
 451     include javax.security.auth.kerberos.*,
 452             com.sun.security.jgss.**,
 453             com.sun.security.auth.module.Krb5LoginModule,
 454             com.sun.security.sasl.gsskerb.**,             // GSSAPI SASL mechanism
 455             sun.security.jgss.**,
 456             sun.security.ssl.krb5.**,
 457             sun.security.krb5.**,
 458             org.ietf.jgss.**,
 459             sun.net.www.protocol.http.spnego.*;
 460 }
 461 
 462 module security-sasl {
 463     include javax.security.sasl.**,
 464             com.sun.security.sasl.**;
 465 }
 466 
 467 module security-xmldsig {
 468     include javax.xml.crypto.**,
 469             org.jcp.xml.dsig.**,
 470             com.sun.org.apache.xml.internal.security.**;
 471 }
 472 
 473 module security-smartcardio {
 474     include javax.smartcardio.**, sun.security.smartcardio.**;
 475 }
 476 
 477 module security-auth {
 478     include com.sun.security.auth.**, sun.security.util.AuthResources_*;
 479 }
 480 
 481 module security-misc {
 482     include security-auth;
 483 
 484     include sun.security.pkcs.*,
 485             sun.security.pkcs12.*;
 486 
 487     // this class is a candidate to be removed.
 488     include sun.security.util.BigInt;
 489 }
 490 
 491 module security-resources {
 492     include sun.security.util.Resources_*;
 493 }
 494 
 495 module security-compat {
 496     include java.security.acl.*, sun.security.acl.*;
 497 }
 498 
 499 /**************************************************************************/
 500 
 501 module jndi-ldap {
 502     include javax.naming.ldap.**,
 503             com.sun.jndi.ldap.**,
 504             com.sun.jndi.url.ldap.*,
 505             com.sun.jndi.url.ldaps.*,
 506             sun.security.provider.certpath.ldap.**;
 507 }
 508 
 509 module jndi-rmiregistry {
 510     include com.sun.jndi.rmi.**, com.sun.jndi.url.rmi.**;
 511 }
 512 
 513 module jndi-dns {
 514     include net-dns;
 515     include com.sun.jndi.dns.**, com.sun.jndi.url.dns.**;
 516 }
 517 
 518 module jndi-cosnaming {
 519     include com.sun.jndi.cosnaming.**,
 520             com.sun.jndi.toolkit.corba.**,
 521             com.sun.jndi.url.corbaname.**,
 522             com.sun.jndi.url.iiop.**,
 523             com.sun.jndi.url.iiopname.**;
 524 }
 525 
 526 // framework/API and classes used by providers
 527 module jndi {
 528     include javax.naming.**,
 529             com.sun.naming.**,
 530             com.sun.jndi.toolkit.ctx.**,
 531             com.sun.jndi.toolkit.dir.**,
 532             com.sun.jndi.toolkit.url.**;
 533 }
 534 
 535 /**************************************************************************/
 536 
 537 module jdbc-base {
 538     include java.sql.**, javax.sql.*;
 539     exclude javax.sql.XA*;
 540 }
 541 
 542 module jdbc-enterprise {
 543     include javax.sql.**, com.sun.rowset.**;
 544 }
 545 
 546 module jdbc-odbc {
 547     include sun.jdbc.odbc.**;
 548 }
 549 
 550 /**************************************************************************/
 551 
 552 module scripting {
 553     include javax.script.**;
 554 
 555     // supporting classes for scripting engines
 556     include com.sun.script.util.**;
 557 }
 558 
 559 module scripting-rhino {
 560     include com.sun.script.javascript.**, sun.org.mozilla.javascript.**;
 561 }
 562 
 563 /**************************************************************************/
 564 
 565 module httpserver {
 566     include com.sun.net.httpserver.**, sun.net.httpserver.**;
 567 }
 568 
 569 /**************************************************************************/
 570 
 571 module sctp {
 572     // API and dependencies
 573     include com.sun.nio.sctp.**, sun.nio.ch.Sctp*;
 574 }
 575 
 576 /**************************************************************************/
 577 
 578 module langtools {
 579     include javax.tools.**, javax.lang.model.**, javax.annotation.processing.**;
 580 
 581     // include mirror API for now
 582     include com.sun.mirror.**;
 583 
 584     // include the JSR292 APIs for now
 585     include java.dyn.**, sun.dyn.**;
 586 }
 587 
 588 /**************************************************************************/
 589 
 590 module beans {
 591     include java.beans.**, com.sun.beans.**, sun.beans.**;
 592 }
 593 
 594 /**************************************************************************/
 595 
 596 module jaxp-parsers-api {
 597     include javax.xml.*, javax.xml.parsers.**,
 598             org.w3c.dom.**, org.w3c.sax.**, org.xml.sax.**;
 599 }
 600 
 601 module jaxp-api {
 602     include javax.xml.**;
 603     exclude javax.xml.crypto.**,   // XML-DSIG
 604             javax.xml.bind.**,     // JAX-WS
 605             javax.xml.soap.**,
 606             javax.xml.ws.**;
 607 }
 608 
 609 module jaxp-xerces-impl {
 610     include com.sun.org.apache.xerces.internal.**;
 611 
 612     // include in xerces-impl due to circular dependencies
 613     include com.sun.org.apache.xml.internal.serialize.**,
 614             com.sun.xml.internal.stream.**;
 615     exclude com.sun.xml.internal.stream.buffer.**;  // JAX-WS
 616 }
 617 
 618 // required by Xerces and JAX-WS
 619 module jaxp-xerces-resolver {
 620     include com.sun.org.apache.xml.internal.resolver.**;
 621 }
 622 
 623 module jaxp-xalan {
 624     include com.sun.org.apache.xalan.internal.**,
 625             com.sun.org.apache.xpath.internal.**,
 626             com.sun.org.apache.xml.internal.dtm.**,
 627             com.sun.org.apache.xml.internal.res.**,
 628             com.sun.org.apache.xml.internal.serializer.**,
 629             com.sun.org.apache.xml.internal.utils.**,
 630             com.sun.org.apache.bcel.internal.**,
 631             com.sun.org.apache.regexp.internal.**,
 632             com.sun.java_cup.internal.**;
 633 }
 634 
 635 /**************************************************************************/
 636 
 637 module jaxws-tools {
 638     include com.sun.codemodel.**,
 639             com.sun.xml.internal.dtdparser.**,
 640             com.sun.xml.internal.rngom.**,
 641             com.sun.xml.internal.xsom.**,
 642             com.sun.istack.internal.tools.**,
 643             com.sun.istack.internal.ws.**,
 644             com.sun.tools.internal.xjc.**,
 645             com.sun.tools.internal.ws.**,
 646             com.sun.tools.internal.jxc.**,
 647             org.relaxng.datatype.**;
 648 }
 649 
 650 module jaxws {
 651     include javax.jws.**,
 652             javax.xml.bind.**,
 653             javax.xml.soap.**,
 654             javax.xml.ws.**,
 655             org.relaxng.**,
 656             com.sun.istack.internal.*,
 657             com.sun.istack.internal.localization.*,
 658             com.sun.xml.internal.**;
 659 
 660     // include JAF in this module
 661     include javax.activation.**, com.sun.activation.**;
 662 
 663     include META-INF/mailcap.default,
 664             META-INF/mimetypes.default;
 665 }
 666 
 667 /**************************************************************************/
 668 module enterprise-base {
 669     include javax.transaction.**,  // JTA
 670             javax.annotation.*;    // Common annotations (JSR-250)
 671 }
 672 
 673 /**************************************************************************/
 674 module corba {
 675     include javax.activity.**,
 676             javax.rmi.*,
 677             javax.rmi.CORBA.*,
 678             javax.transaction.**,
 679             com.sun.corba.**,
 680             com.sun.org.omg.**,
 681             org.omg.**,
 682             sun.corba.**;
 683 
 684     // JMX remote API
 685     exclude org.omg.stub.javax.management.**;
 686 }
 687 
 688 /**************************************************************************/
 689 
 690 module applet {
 691     include java.applet.**,
 692             sun.applet.**;
 693 }
 694 
 695 module awt {
 696     include java.awt.**,
 697             sun.awt.**,
 698             com.sun.awt.**;
 699 }
 700 
 701 module font {
 702     include sun.font.**;
 703 }
 704 
 705 module imageio {
 706     include javax.imageio.**,
 707             com.sun.imageio.**;
 708 }
 709 
 710 module java2d {
 711     include sun.dc.**,
 712             sun.java2d.**,
 713             com.sun.image.**;
 714 }
 715 
 716 module media {
 717     include com.sun.media.**;
 718 }
 719 
 720 module print {
 721     include javax.print.**,
 722             sun.print.**;
 723 }
 724 
 725 module sound {
 726     include javax.sound.**;
 727 }
 728 
 729 module swing {
 730     include javax.swing.**,
 731             sun.swing.**,
 732             // sajdi also contains classes in subpackages of com.sun.java.swing;
 733             // so use '*' instead of '**' 
 734             com.sun.java.swing.*,
 735             com.sun.java.swing.plaf.**,
 736             com.sun.swing.**;
 737 }
 738 
 739 module client {
 740     include applet,
 741             awt,
 742             font,
 743             imageio,
 744             java2d,
 745             media,
 746             print,
 747             sound,
 748             swing;
 749 
 750     include javax.accessibility.*,
 751             sun.audio.**,
 752             com.sun.accessibility.**;
 753 
 754     // Bidi class in client module for now
 755     include java.text.Bidi, sun.text.bidi.*;
 756 
 757     // PerformanceLogger and dependencies
 758     include sun.misc.Ref, sun.misc.PerformanceLogger;
 759 
 760     // misc. dependencies that we need to examine
 761     include sun.text.CodePointIterator,
 762             sun.text.Char*,
 763             sun.misc.Queue*,
 764             sun.misc.FIFOQueueEnumerator,
 765             sun.misc.LIFOQueueEnumerator;
 766 
 767     // content handlers
 768     include sun.net.www.content.audio.**,
 769             sun.net.www.content.image.**;
 770 }
 771 
 772 /**************************************************************************/
 773 
 774 module jkernel {
 775     include sun.jkernel.*;
 776 }
 777 
 778 module deploy {
 779     include jkernel;
 780 
 781     // For now, all plugin and JNLP
 782     include com.sun.java.browser.**,
 783             netscape.**,
 784             sun.plugin.**,
 785             sun.plugin2.**,,
 786             com.sun.deploy.**,
 787             com.sun.javaws.**,
 788             javax.jnlp.*,
 789             com.sun.jnlp.*;
 790 
 791     // Hook for http authentication
 792     include sun.net.www.protocol.http.AuthCacheBridge;
 793 }
 794 
 795 /**************************************************************************/
 796 
 797 module net-dns {
 798     include sun.net.dns.**;                 // to access DNS config.
 799     include sun.net.spi.nameservice.dns.**; // for DNS-only name service.
 800 }
 801 
 802 module net-compat {
 803     // NTLM authentication support
 804     include sun.net.www.protocol.http.ntlm.*;
 805 
 806     // ftp and mail clients
 807     include sun.net.ftp.**, sun.net.smtp.**;
 808 
 809     // Legacy protocol handlers
 810     include sun.net.www.protocol.**;
 811 
 812     // Legacy content handlers
 813     include sun.net.www.content.**;
 814 
 815     include sun.net.Telnet*,
 816             sun.net.TransferProtocolClient;
 817 }
 818 
 819 /**************************************************************************/
 820 
 821 // jar-tool and security-tools are JRE tools
 822 module jar-tool {
 823     include sun.tools.jar.**;
 824 }
 825 
 826 module policytool {
 827     include sun.security.tools.policytool.*;
 828 }
 829 
 830 module security-tools {
 831     include sun.security.tools.**;
 832 
 833     // Used by security tools
 834     include sun.security.util.PathList, sun.security.x509.CertAndKeyGen;
 835 
 836     exclude sun.security.tools.JarBASE64Encoder,
 837             sun.security.tools.JarSigner,
 838             sun.security.tools.JarSignerParameters,
 839             sun.security.tools.JarSignerResources*,
 840             sun.security.tools.SignatureFile,
 841             sun.security.tools.TimestampedSigner;
 842 }
 843 
 844 module jconsole {
 845     include sun.tools.jconsole.**,
 846             com.sun.tools.jconsole.*;
 847 }
 848 
 849 module serialver {
 850     include sun.tools.serialver.**;
 851 }
 852 
 853 module gui-tools {
 854     include jconsole,
 855             serialver;
 856 
 857     include com.sun.tools.example.debug.bdi.**,
 858             com.sun.tools.example.debug.gui.**,
 859             com.sun.tools.internal.xjc.**;
 860 }
 861 
 862 module attach {
 863     include com.sun.tools.attach.**,
 864             sun.tools.attach.**;
 865 }
 866 
 867 module debugging {
 868     include com.sun.jdi.**, com.sun.tools.jdi.**;
 869 }
 870 
 871 module jdb {
 872     include com.sun.tools.example.debug.**;
 873 }
 874 
 875 module sajdi {
 876     include sun.jvm.hotspot.**,
 877             com.sun.java.swing.ui.**,
 878             com.sun.java.swing.action.**;
 879 
 880     include toolbarButtonGraphics/**;
 881     include sa.properties;
 882 }
 883 
 884 module tools {
 885     include attach,
 886             debugging,
 887             jaxws-tools,
 888             jdb,
 889             rmic,
 890             sajdi;
 891 
 892     // include gui-tools in tools module unless the tool binaries
 893     // are modified to load the new gui-tools.jar
 894     include gui-tools;
 895 
 896     include com.sun.tools.**, sun.tools.**, sun.security.tools.**,
 897             com.sun.jarsigner.**,
 898             com.sun.javac.**,
 899             com.sun.javadoc.**, com.sun.source.**,
 900             sun.jvmstat.**;
 901 }
 902 
 903 /**************************************************************************/
 904 
 905 module servicetag {
 906     include com.sun.servicetag.**;
 907 }
 908 
 909 /**************************************************************************/
 910 
 911 // these classes will be removed from JRE - see 6909002
 912 module inputmethods-ext {
 913     include com.sun.inputmethods.internal.**;
 914 }
 915 
 916 /**************************************************************************/
 917 
 918 // Workaround for US export and local policy files 
 919 // They are currently in signed jars under the jre/lib/security directory
 920 module US_export_policy {
 921     include default_US_export.policy;
 922 }
 923 
 924 module local_policy {
 925     include default_local.policy,
 926             exempt_local.policy;
 927 }
 928 
 929 /**************************************************************************/
 930 
 931 module other {
 932     include **;
 933 }