public FieldDescriptor[] getNonPkFields()
    {
        if (m_nonPkFieldDescriptors == null)
        {
            // 1. collect all Primary Key fields from Field list
            Vector vec = new Vector();
            for (int i = 0; i < m_FieldDescriptions.length; i++)
            {
                FieldDescriptor fd = m_FieldDescriptions[i];
                if (!fd.isPrimaryKey())
                {
                    vec.add(fd);
                }
            }
            // 2. Sort fields according to their getOrder() Property
            Collections.sort(vec, FieldDescriptor.getComparator());
            m_nonPkFieldDescriptors =
                (FieldDescriptor[]) vec.toArray(new FieldDescriptor[vec.size()]);
        }
        return m_nonPkFieldDescriptors;
    }
public FieldDescriptor [ ] getNonPkFields ( ) { if ( m_nonPkFieldDescriptors == null ) { Vector vec = new Vector ( ) ; for ( int i = 0 ; i < m_FieldDescriptions . length ; i ++ ) { FieldDescriptor fd = m_FieldDescriptions [ i ] ; if ( ! fd . isPrimaryKey ( ) ) { vec . add ( fd ) ; } } Collections . sort ( vec , FieldDescriptor . getComparator ( ) ) ; m_nonPkFieldDescriptors = ( FieldDescriptor [ ] ) vec . toArray ( new FieldDescriptor [ vec . size ( ) ] ) ; } return m_nonPkFieldDescriptors ; }
return an array of NONPK-FieldDescription sorted ascending
according to the field-descriptions getOrder() property