< prev index next >

src/java.base/share/classes/com/sun/java/util/jar/pack/Package.java

Print this page
rev 52881 : 8214971: Replace use of string.equals("") with isEmpty()
Reviewed-by: jlaskey, prappo, lancea, dfuchs, redestad


 668             maybeChooseFileName();
 669         }
 670 
 671         public void initFile(File file) {
 672             assert(this.file == null);  // set-once
 673             if (file == null) {
 674                 // Build a trivial stub.
 675                 file = newStub(canonicalFileName());
 676             }
 677             this.file = file;
 678             assert(file.isClassStub());
 679             file.stubClass = this;
 680             maybeChooseFileName();
 681         }
 682 
 683         public void maybeChooseFileName() {
 684             if (thisClass == null) {
 685                 return;  // do not choose yet
 686             }
 687             String canonName = canonicalFileName();
 688             if (file.nameString.equals("")) {
 689                 file.nameString = canonName;
 690             }
 691             if (file.nameString.equals(canonName)) {
 692                 // The file name is predictable.  Transmit "".
 693                 file.name = getRefString("");
 694                 return;
 695             }
 696             // If name has not yet been looked up, find it now.
 697             if (file.name == null) {
 698                 file.name = getRefString(file.nameString);
 699             }
 700         }
 701 
 702         public String canonicalFileName() {
 703             if (thisClass == null)  return null;
 704             return thisClass.stringValue() + ".class";
 705         }
 706 
 707         public java.io.File getFileName(java.io.File parent) {
 708             String name = file.name.stringValue();
 709             if (name.equals(""))
 710                 name = canonicalFileName();
 711             String fname = name.replace('/', java.io.File.separatorChar);
 712             return new java.io.File(parent, fname);
 713         }
 714         public java.io.File getFileName() {
 715             return getFileName(null);
 716         }
 717 
 718         public String toString() {
 719             return thisClass.stringValue();
 720         }
 721     }
 722 
 723     void addClass(Class c) {
 724         assert(c.getPackage() == this);
 725         boolean added = classes.add(c);
 726         assert(added);
 727         // Make sure the class is represented in the total file order:
 728         if (c.file == null)  c.initFile(null);
 729         addFile(c.file);


 762         File(String nameString) {
 763             nameString = fixupFileName(nameString);
 764             this.name = getRefString(nameString);
 765             this.nameString = name.stringValue();
 766         }
 767 
 768         public boolean isDirectory() {
 769             // JAR directory.  Useless.
 770             return nameString.endsWith("/");
 771         }
 772         public boolean isClassStub() {
 773             return (options & FO_IS_CLASS_STUB) != 0;
 774         }
 775         public Class getStubClass() {
 776             assert(isClassStub());
 777             assert(stubClass != null);
 778             return stubClass;
 779         }
 780         public boolean isTrivialClassStub() {
 781             return isClassStub()
 782                 && name.stringValue().equals("")
 783                 && (modtime == NO_MODTIME || modtime == default_modtime)
 784                 && (options &~ FO_IS_CLASS_STUB) == 0;
 785         }
 786 
 787         // The nameString is the key.  Ignore other things.
 788         // (Note:  The name might be "", in the case of a trivial class stub.)
 789         public boolean equals(Object o) {
 790             if (o == null || (o.getClass() != File.class))
 791                 return false;
 792             File that = (File)o;
 793             return that.nameString.equals(this.nameString);
 794         }
 795         public int hashCode() {
 796             return nameString.hashCode();
 797         }
 798         // Simple alphabetic sort.  PackageWriter uses a better comparator.
 799         public int compareTo(File that) {
 800             return this.nameString.compareTo(that.nameString);
 801         }
 802         public String toString() {




 668             maybeChooseFileName();
 669         }
 670 
 671         public void initFile(File file) {
 672             assert(this.file == null);  // set-once
 673             if (file == null) {
 674                 // Build a trivial stub.
 675                 file = newStub(canonicalFileName());
 676             }
 677             this.file = file;
 678             assert(file.isClassStub());
 679             file.stubClass = this;
 680             maybeChooseFileName();
 681         }
 682 
 683         public void maybeChooseFileName() {
 684             if (thisClass == null) {
 685                 return;  // do not choose yet
 686             }
 687             String canonName = canonicalFileName();
 688             if (file.nameString.isEmpty()) {
 689                 file.nameString = canonName;
 690             }
 691             if (file.nameString.equals(canonName)) {
 692                 // The file name is predictable.  Transmit "".
 693                 file.name = getRefString("");
 694                 return;
 695             }
 696             // If name has not yet been looked up, find it now.
 697             if (file.name == null) {
 698                 file.name = getRefString(file.nameString);
 699             }
 700         }
 701 
 702         public String canonicalFileName() {
 703             if (thisClass == null)  return null;
 704             return thisClass.stringValue() + ".class";
 705         }
 706 
 707         public java.io.File getFileName(java.io.File parent) {
 708             String name = file.name.stringValue();
 709             if (name.isEmpty())
 710                 name = canonicalFileName();
 711             String fname = name.replace('/', java.io.File.separatorChar);
 712             return new java.io.File(parent, fname);
 713         }
 714         public java.io.File getFileName() {
 715             return getFileName(null);
 716         }
 717 
 718         public String toString() {
 719             return thisClass.stringValue();
 720         }
 721     }
 722 
 723     void addClass(Class c) {
 724         assert(c.getPackage() == this);
 725         boolean added = classes.add(c);
 726         assert(added);
 727         // Make sure the class is represented in the total file order:
 728         if (c.file == null)  c.initFile(null);
 729         addFile(c.file);


 762         File(String nameString) {
 763             nameString = fixupFileName(nameString);
 764             this.name = getRefString(nameString);
 765             this.nameString = name.stringValue();
 766         }
 767 
 768         public boolean isDirectory() {
 769             // JAR directory.  Useless.
 770             return nameString.endsWith("/");
 771         }
 772         public boolean isClassStub() {
 773             return (options & FO_IS_CLASS_STUB) != 0;
 774         }
 775         public Class getStubClass() {
 776             assert(isClassStub());
 777             assert(stubClass != null);
 778             return stubClass;
 779         }
 780         public boolean isTrivialClassStub() {
 781             return isClassStub()
 782                 && name.stringValue().isEmpty()
 783                 && (modtime == NO_MODTIME || modtime == default_modtime)
 784                 && (options &~ FO_IS_CLASS_STUB) == 0;
 785         }
 786 
 787         // The nameString is the key.  Ignore other things.
 788         // (Note:  The name might be "", in the case of a trivial class stub.)
 789         public boolean equals(Object o) {
 790             if (o == null || (o.getClass() != File.class))
 791                 return false;
 792             File that = (File)o;
 793             return that.nameString.equals(this.nameString);
 794         }
 795         public int hashCode() {
 796             return nameString.hashCode();
 797         }
 798         // Simple alphabetic sort.  PackageWriter uses a better comparator.
 799         public int compareTo(File that) {
 800             return this.nameString.compareTo(that.nameString);
 801         }
 802         public String toString() {


< prev index next >