Skip to content

Commit

Permalink
MID-7815 mail/sms transport missing fields panels
Browse files Browse the repository at this point in the history
  • Loading branch information
1azyman committed Sep 19, 2022
1 parent b1ba303 commit 25f818d
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 24 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@
import com.evolveum.midpoint.web.component.prism.InputPanel;
import com.evolveum.midpoint.web.page.admin.configuration.component.EmptyOnBlurAjaxFormUpdatingBehaviour;

import org.apache.wicket.model.StringResourceModel;

/**
* Created by Viliam Repan (lazyman).
*/
Expand All @@ -35,7 +37,7 @@ public IModel<T> getModel() {
return model;
}

protected MarkupContainer add(Component child, boolean addUpdatingBehaviour) {
protected MarkupContainer add(Component child, boolean addUpdatingBehaviour, String label) {
if (addUpdatingBehaviour) {
FormComponent fc = null;
if (child instanceof FormComponent) {
Expand All @@ -49,10 +51,19 @@ protected MarkupContainer add(Component child, boolean addUpdatingBehaviour) {
}
}

if (label != null && child instanceof InputPanel) {
FormComponent fc = ((InputPanel) child).getBaseFormComponent();
fc.setLabel(new StringResourceModel(label));
}

return super.add(child);
}

protected MarkupContainer add(Component child, String label) {
return add(child, true, label);
}

protected MarkupContainer add(Component child) {
return add(child, true);
return add(child, true, null);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -43,22 +43,21 @@ public MailServerPanel(String id, IModel<MailServerConfigurationType> model) {
}

private void initLayout() {
add(new TextPanel<>(ID_HOST, createEmbeddedModel(c -> c.getHost(), (c, o) -> c.setHost(o))), false);
add(new TextPanel<>(ID_HOST, createEmbeddedModel(c -> c.getHost(), (c, o) -> c.setHost(o))), false, "MailServerPanel.host");

TextPanel port = new TextPanel<>(ID_PORT, createEmbeddedModel(c -> c.getPort(), (c, o) -> c.setPort(o)));
FormComponent portFC = port.getBaseFormComponent();
portFC.setType(Integer.class);
portFC.add(new RangeValidator(0, 2 ^ 16 - 1)); // 65535
add(port);
portFC.add(new RangeValidator(0, 65535));
add(port, "MailServerPanel.port");

TextPanel username = new TextPanel<>(ID_USERNAME, createEmbeddedModel(c -> c.getUsername(), (c, o) -> c.setUsername(o)));
add(username);
add(new TextPanel<>(ID_USERNAME, createEmbeddedModel(c -> c.getUsername(), (c, o) -> c.setUsername(o))), "MailServerPanel.username");

add(new PasswordPanel(ID_PASSWORD, createEmbeddedModel(c -> c.getPassword(), (c, o) -> c.setPassword(o))), false);
add(new PasswordPanel(ID_PASSWORD, createEmbeddedModel(c -> c.getPassword(), (c, o) -> c.setPassword(o))), false, "MailServerPanel.password");

DropDownChoicePanel transportSecurity = WebComponentUtil.createEnumPanel(MailTransportSecurityType.class, ID_TRANSPORT_SECURITY,
createEmbeddedModel(c -> c.getTransportSecurity(), (c, o) -> c.setTransportSecurity(o)), this);
add(transportSecurity);
add(transportSecurity, "MailServerPanel.transportSecurity");
}

private <T extends Serializable> IModel<T> createEmbeddedModel(SerializableFunction<MailServerConfigurationType, T> get, SerializableBiConsumer<MailServerConfigurationType, T> set) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,29 +65,29 @@ protected void onInitialize() {
}

private void initLayout() {
add(new TextPanel<>(ID_NAME, createEmbeddedModel(o -> o.getName(), (o, v) -> o.setName(v))), false);
add(WebComponentUtil.createEnumPanel(HttpMethodType.class, ID_METHOD, createEmbeddedModel(o -> o.getMethod(), (o, v) -> o.setMethod(v)), this));
add(new TextPanel<>(ID_NAME, createEmbeddedModel(o -> o.getName(), (o, v) -> o.setName(v))), false, "SmsGatewayPanel.name");
add(WebComponentUtil.createEnumPanel(HttpMethodType.class, ID_METHOD, createEmbeddedModel(o -> o.getMethod(), (o, v) -> o.setMethod(v)), this), "SmsGatewayPanel.method");
add(new AceEditorPanel(ID_URL_EXPRESSION, null,
createExpressionModel(createEmbeddedModel(o -> o.getUrlExpression(), (o, v) -> o.setUrlExpression(v))), 10));
createExpressionModel(createEmbeddedModel(o -> o.getUrlExpression(), (o, v) -> o.setUrlExpression(v))), 10), "SmsGatewayPanel.urlExpression");
add(new AceEditorPanel(ID_HEADERS_EXPRESSION, null,
createExpressionModel(createEmbeddedModel(o -> o.getHeadersExpression(), (o, v) -> o.setHeadersExpression(v))), 10));
createExpressionModel(createEmbeddedModel(o -> o.getHeadersExpression(), (o, v) -> o.setHeadersExpression(v))), 10), "SmsGatewayPanel.headersExpression");
add(new AceEditorPanel(ID_BODY_EXPRESSION, null,
createExpressionModel(createEmbeddedModel(o -> o.getBodyExpression(), (o, v) -> o.setBodyExpression(v))), 10));
add(new TextPanel<>(ID_BODY_ENCODING, createEmbeddedModel(o -> o.getBodyEncoding(), (o, v) -> o.setBodyEncoding(v))));
add(new TextPanel<>(ID_USERNAME, createEmbeddedModel(o -> o.getUsername(), (o, v) -> o.setUsername(v))));
add(new PasswordPanel(ID_PASSWORD, createEmbeddedModel(o -> o.getPassword(), (o, v) -> o.setPassword(v))), false);
add(new TextPanel<>(ID_PROXY_HOST, createEmbeddedModel(o -> o.getProxyHost(), (o, v) -> o.setProxyHost(v))));
createExpressionModel(createEmbeddedModel(o -> o.getBodyExpression(), (o, v) -> o.setBodyExpression(v))), 10), "SmsGatewayPanel.bodyExpression");
add(new TextPanel<>(ID_BODY_ENCODING, createEmbeddedModel(o -> o.getBodyEncoding(), (o, v) -> o.setBodyEncoding(v))), "SmsGatewayPanel.bodyEncoding");
add(new TextPanel<>(ID_USERNAME, createEmbeddedModel(o -> o.getUsername(), (o, v) -> o.setUsername(v))), "SmsGatewayPanel.username");
add(new PasswordPanel(ID_PASSWORD, createEmbeddedModel(o -> o.getPassword(), (o, v) -> o.setPassword(v))), false, "SmsGatewayPanel.password");
add(new TextPanel<>(ID_PROXY_HOST, createEmbeddedModel(o -> o.getProxyHost(), (o, v) -> o.setProxyHost(v))), "SmsGatewayPanel.proxyHost");

TextPanel port = new TextPanel<>(ID_PROXY_PORT, createEmbeddedModel(o -> o.getProxyPort(), (o, v) -> o.setProxyPort(v)));
FormComponent portFC = port.getBaseFormComponent();
portFC.setType(Integer.class);
portFC.add(new RangeValidator(0, 2 ^ 16 - 1)); // 65535
add(port);
portFC.add(new RangeValidator(0, 65535));
add(port, "SmsGatewayPanel.proxyPort");

add(new TextPanel<>(ID_PROXY_USERNAME, createEmbeddedModel(o -> o.getProxyUsername(), (o, v) -> o.setProxyUsername(v))));
add(new PasswordPanel(ID_PROXY_PASSWORD, createEmbeddedModel(o -> o.getProxyPassword(), (o, v) -> o.setProxyPassword(v))), false);
add(new TextPanel<>(ID_REDIRECT_TO_FILE, createEmbeddedModel(o -> o.getRedirectToFile(), (o, v) -> o.setRedirectToFile(v))));
add(new TextPanel<>(ID_LOG_TO_FILE, createEmbeddedModel(o -> o.getLogToFile(), (o, v) -> o.setLogToFile(v))));
add(new TextPanel<>(ID_PROXY_USERNAME, createEmbeddedModel(o -> o.getProxyUsername(), (o, v) -> o.setProxyUsername(v))), "SmsGatewayPanel.proxyUsername");
add(new PasswordPanel(ID_PROXY_PASSWORD, createEmbeddedModel(o -> o.getProxyPassword(), (o, v) -> o.setProxyPassword(v))), false, "SmsGatewayPanel.proxyPassword");
add(new TextPanel<>(ID_REDIRECT_TO_FILE, createEmbeddedModel(o -> o.getRedirectToFile(), (o, v) -> o.setRedirectToFile(v))), "SmsGatewayPanel.redirectToFile");
add(new TextPanel<>(ID_LOG_TO_FILE, createEmbeddedModel(o -> o.getLogToFile(), (o, v) -> o.setLogToFile(v))), "SmsGatewayPanel.logToFile");
}

private IModel<String> createExpressionModel(IModel<ExpressionType> model) {
Expand Down

0 comments on commit 25f818d

Please sign in to comment.