litesoft
@ HEAD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 |
// This Source Code is in the Public Domain per: http://unlicense.org package org.litesoft.ui.def.nonpublic.support; import org.litesoft.commonfoundation.base.*; import org.litesoft.core.util.*; import org.litesoft.ui.support.*; @SuppressWarnings("EqualsAndHashcode") public abstract class AbstractFormUsage implements Comparable, ToStringBuilder { // Basic Base Form abstract public boolean isHot(); abstract public String getRootType(); // Basic Sub Form abstract public String getRelAttributeRef(); // Shared abstract public Integer getUniqueID(); abstract public IntendedUse getIntendedUse(); abstract public LabelUsage[] getLabels(); abstract public ActionUsage[] getActions(); abstract public AttributeUsage[] getAttributes(); abstract public FormUsage[] getRelSubForms(); public boolean isBaseForm() { return (getRootType() != null); } public final int compareTo( AbstractFormUsage pThem ) { Compare zCompare; if ( isBaseForm() ) { zCompare = Compare.first( this.getRootType(), pThem.getRootType() ); zCompare = zCompare.then( this.isHot(), pThem.isHot() ); } else { zCompare = Compare.first( this.getRelAttributeRef(), pThem.getRelAttributeRef() ); } zCompare = zCompare.then( this.getUniqueID(), pThem.getUniqueID() ); zCompare = zCompare.then( this.getIntendedUse(), pThem.getIntendedUse() ); return zCompare.result(); } @Override public final int compareTo( Object pObject ) { return compareTo( (AbstractFormUsage) pObject ); } protected final boolean LLequals( AbstractFormUsage pThem ) { return (pThem != null) && // Currently.areEqual( this.getRelAttributeRef(), pThem.getRelAttributeRef() ) && // Currently.areEqual( this.getRootType(), pThem.getRootType() ) && // Currently.areEqual( this.isHot(), pThem.isHot() ) && // Currently.areEqual( this.getIntendedUse(), pThem.getIntendedUse() ) && // Currently.areEqual( this.getUniqueID(), pThem.getUniqueID() ); } public final int hashCode() { return getRootOrRel().hashCode(); } protected final String getRootOrRel() { return isBaseForm() ? getRootType() : getRelAttributeRef(); } @Override public final StringBuilder toStringBuilder( StringBuilder pSB, int pDepth ) { pSB.append( getIntendedUse() ).append( ',' ).append( getRootOrRel() ); if ( isHot() ) { pSB.append( " (-HOT-)" ); } if ( anyChildren() ) { pSB.append( ":" ); int subDepth = pDepth + 1; addPreChildren( pSB, subDepth ); add( pSB, subDepth, "Labels", getLabels() ); add( pSB, subDepth, "Actions", getActions() ); add( pSB, subDepth, "Attributes", getAttributes() ); add( pSB, subDepth, "RelSubForms", getRelSubForms() ); addPostChildren( pSB, subDepth ); } return pSB; } protected void addPreChildren( StringBuilder pSB, int pDepth ) { } protected void addPostChildren( StringBuilder pSB, int pDepth ) { } abstract protected boolean anyChildren(); protected static void add( StringBuilder pSB, int pDepth, String pWhat, ToStringBuilder[] pBuilders ) { if ( pBuilders.length != 0 ) { LineIndentUtil.newLine( pSB, pDepth++ ).append( pWhat ).append( ':' ); for ( ToStringBuilder pBuilder : pBuilders ) { pBuilder.toStringBuilder( LineIndentUtil.newLine( pSB, pDepth ), pDepth ); } } } protected static String required( String pWhat, String pSource ) { return Confirm.significant( pWhat, pSource ); } } |
Commits for litesoft/trunk/Java/core/jvm1.4/src/org/litesoft/ui/def/nonpublic/support/AbstractFormUsage.java
Revision | Author | Commited | Message |
---|---|---|---|
950 Diff | GeorgeS | Thu 19 Jun, 2014 17:57:04 +0000 | New Lines |
948 Diff | GeorgeS | Sat 07 Jun, 2014 23:42:39 +0000 | Jusefuls Formatter Updated to New Code Format |
947 Diff | GeorgeS | Fri 06 Jun, 2014 23:36:56 +0000 | Correct Spelling of package! |
939 Diff | GeorgeS | Mon 02 Jun, 2014 21:30:31 +0000 | Extracting commonfoundation |
821 Diff | GeorgeS | Sun 19 Aug, 2012 00:08:41 +0000 | |
819 Diff | GeorgeS | Sat 18 Aug, 2012 18:09:40 +0000 | |
804 Diff | GeorgeS | Wed 15 Aug, 2012 12:48:51 +0000 | |
49 Diff | GeorgeS | Mon 12 Apr, 2010 02:59:10 +0000 | License Text |
2 | GeorgeS | Sun 07 Feb, 2010 12:50:58 +0000 |