    public void listAttributeDefNames(Properties parameters, Locale locale, OutputStream os)
        throws WTException, Exception, RemoteException
    {
        inWildfire = ProEClientUtilities.isAgentWildfire(getState());
        String allAttrs = parameters.getProperty("allAttrs");
        AttributeOrgNodeView aonv[] = null;
        TypeDefinitionDefaultView tddv = null;
        AttributeIdentifier ati[] = null;
        TypeDefinitionDefaultView masterTddv = null;
        AttributeIdentifier masterAti[] = null;
        if(allAttrs != null)
            allAttrs = allAttrs.trim();
        if(allAttrs != null && allAttrs.equals("true"))
        {
            aonv = IBADefinitionHelper.service.getAttributeOrganizerRoots();
        } else
        {
            tddv = EPMSoftTypeServerUtilities.getDefaultTypeDefinition(wt.epm.EPMDocument.class);
            ati = tddv.getAttributeIdentifiers();
            masterTddv = EPMSoftTypeServerUtilities.getDefaultTypeDefinition(wt.epm.EPMDocumentMaster.class);
            masterAti = masterTddv.getAttributeIdentifiers();
        }
        String boolList = "var boolValues = new Array(";
        String attrDefInfoBuffer = AttributeDefInfoJS.initAttributeDefInfoBuffer();
        Properties props = getQueryData();
        String currentUnits = props.getProperty("unit");
        if(currentUnits == null)
            currentUnits = MEASUREMENT_SYSTEM;
        MeasurementSystemCache.setCurrentMeasurementSystem(currentUnits);
        String newCADName = props.getProperty("cadName");
        SessionContext sessionContext = SessionContext.getContext();
        Object obj = getContextObj();
        if(!(obj instanceof EPMWorkspace) && !(obj instanceof Master))
            if(newCADName == null)
            {
                boolean isNew = false;
                if(!WorkInProgressHelper.isCheckedOut((Workable)obj) && WorkInProgressUtilities.isNewDocument((EPMDocument)obj))
                    isNew = true;
                sessionContext.put("NEW_OBJECT", new Boolean(isNew));
            } else
            {
                sessionContext.put("NEW_OBJECT", new Boolean(true));
            }
        if(allAttrs != null && allAttrs.equals("true"))
        {
            for(int j = 0; j < aonv.length; j++)
                attrDefInfoBuffer = getAttributesRow(aonv[j], attrDefInfoBuffer, newCADName, currentUnits, locale);

        } else
        {
            if(masterAti != null)
            {
                for(int j = 0; j < masterAti.length; j++)
                    if(masterAti[j] instanceof InstanceBasedAttributeIdentifier)
                    {
                        String extHID = ((InstanceBasedAttributeTypeIdentifier)masterAti[j].getDefinitionIdentifier()).getExtHID();
                        AttributeDefDefaultView addv = null;
                        try
                        {
                            addv = IBADefinitionObjectsFactory.newAttributeDefDefaultView(IBAModel.getIBADefinitionByHid(extHID));
                        }
                        catch(WTException e) { }
                        attrDefInfoBuffer = getAttributeRow(addv, attrDefInfoBuffer, newCADName, currentUnits, locale);
                    } else
                    {
                        System.out.println("<<<<CJR >>>> Not a InstanceBasedAttributeIdentifier");
                    }

            }
            if(ati != null)
            {
                for(int j = 0; j < ati.length; j++)
                    if(ati[j] instanceof InstanceBasedAttributeIdentifier)
                    {
                        String extHID = ((InstanceBasedAttributeTypeIdentifier)ati[j].getDefinitionIdentifier()).getExtHID();
                        AttributeDefDefaultView addv = null;
                        try
                        {
                            addv = IBADefinitionObjectsFactory.newAttributeDefDefaultView(IBAModel.getIBADefinitionByHid(extHID));
                        }
                        catch(WTException e)
                        {
                            e.printStackTrace();
                        }
                        attrDefInfoBuffer = getAttributeRow(addv, attrDefInfoBuffer, newCADName, currentUnits, locale);
                    } else
                    {
                        System.out.println("<<<<CJR >>>> Not a InstanceBasedAttributeIdentifier");
                    }

            }
        }
        if(softTypeAttribMap != null)
            softTypeAttribMap = null;
        PrintWriter out = getPrintWriter(os, locale);
        out.println("\n<script>");
        String trueValue = WTMessage.getLocalizedMessage("wt.iba.value.litevalue.litevalueResource", "lv91", null);
        String falseValue = WTMessage.getLocalizedMessage("wt.iba.value.litevalue.litevalueResource", "lv92", null);
        boolList = boolList + "'" + EncodingConverter.unicodeToAscii(trueValue) + "'" + "," + "'" + EncodingConverter.unicodeToAscii(falseValue) + "'" + ");";
        out.println("\t" + boolList);
        out.println("</script>\n");
        attrDefInfoBuffer = AttributeDefInfoJS.finalizeAttributeDefInfoBuffer(attrDefInfoBuffer);
        out.println(attrDefInfoBuffer);
        out.flush();
    }
    