addPort._convertToPort = function()

in broker-plugins/management-http/src/main/java/resources/js/qpid/management/addPort.js [156:263]


        addPort._convertToPort = function (formValues)
        {
            var newPort = {};
            newPort.name = dijit.byId("formAddPort.name").value;
            var id = dojo.byId("formAddPort.id").value;
            if (id)
            {
                newPort.id = id;
            }
            for (var propName in formValues)
            {
                if (formValues.hasOwnProperty(propName) && formValues[propName])
                {
                    if (propName == "needClientAuth" || propName == "wantClientAuth")
                    {
                        continue;
                    }
                    else if (propName === "protocols")
                    {
                        var val = formValues[propName];

                        if (val === "" || (lang.isArray(val) && val.length == 0))
                        {
                            continue;
                        }

                        if (!lang.isArray(val))
                        {
                            val = [val];
                        }
                        newPort[propName] = val;
                    }
                    else if (propName === "transports")
                    {
                        var val = formValues[propName];

                        if (val === "" || (lang.isArray(val) && val.length == 0))
                        {
                            continue;
                        }

                        if (!lang.isArray(val))
                        {
                            val = [val];
                        }
                        newPort[propName] = val;
                    }
                    else if (propName === "context")
                    {
                        var context = this.context.get("value");
                        if (context && (!this.initialData || !util.equals(context, this.initialData.context)))
                        {
                            newPort["context"] = context;
                        }
                    }
                    else if (formValues[propName] !== "")
                    {
                        newPort[propName] = formValues[propName];
                    }

                }
            }

            var type = dijit.byId("formAddPort.type").value;
            if (type == "AMQP" || type == "HTTP")
            {
                var transportWidget = registry.byId("formAddPort.transports");
                var needClientAuth = dijit.byId("formAddPort.needClientAuth");
                var wantClientAuth = dijit.byId("formAddPort.wantClientAuth");
                var trustStoreWidget = dijit.byId("formAddPort.trustStores");

                var initialTransport = transportWidget.initialValue;
                var currentTransport = transportWidget.value;
                if (addPort._isSecure(currentTransport))
                {
                    newPort.needClientAuth = needClientAuth.checked;
                    newPort.wantClientAuth = wantClientAuth.checked

                    var items = trustStoreWidget.selection.getSelected();
                    var trustStores = [];
                    if (items.length > 0)
                    {
                        for (var i in items)
                        {
                            var item = items[i];
                            trustStores.push(trustStoreWidget.store.getValue(item, "name"));
                        }
                        newPort.trustStores = trustStores;
                    }
                    else if (trustStoreWidget.initialValue && trustStoreWidget.initialValue.length > 0)
                    {
                        newPort.trustStores = null;
                    }

                    var clientCertRecorder = registry.byId("formAddPort.managedCertificateStores")
                    newPort.clientCertRecorder = clientCertRecorder.value ? clientCertRecorder.value : null;
                }
                else if (initialTransport && currentTransport != initialTransport)
                {
                    newPort.needClientAuth = false;
                    newPort.wantClientAuth = false;
                    newPort.trustStores = null;
                    newPort.clientCertRecorder = null;
                }
            }

            return newPort;
        };