Skip to content

Commit

Permalink
FORGE-2642: Fixed CCE in Security: Add Constraint
Browse files Browse the repository at this point in the history
  • Loading branch information
gastaldi committed Apr 25, 2016
1 parent 55913e7 commit 2ea2745
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,10 @@
import org.jboss.forge.addon.ui.context.UIBuilder;
import org.jboss.forge.addon.ui.context.UIContext;
import org.jboss.forge.addon.ui.context.UIExecutionContext;
import org.jboss.forge.addon.ui.hints.InputType;
import org.jboss.forge.addon.ui.input.UIInput;
import org.jboss.forge.addon.ui.input.UIInputMany;
import org.jboss.forge.addon.ui.input.UISelectOne;
import org.jboss.forge.addon.ui.metadata.UICommandMetadata;
import org.jboss.forge.addon.ui.metadata.WithAttributes;
import org.jboss.forge.addon.ui.result.Result;
Expand Down Expand Up @@ -59,8 +61,8 @@ public class AddSecurityConstraintCommand extends AbstractJavaEECommand
private UIInput<Boolean> enableUserDataConstraint;

@Inject
@WithAttributes(label = "Transport guarantee", shortName = 't', description = "The type of requirement for used data constraint")
private UIInput<TransportGuarantee> transportGuarantee;
@WithAttributes(label = "Transport guarantee", shortName = 't', description = "The type of requirement for used data constraint", type = InputType.DROPDOWN)
private UISelectOne<TransportGuarantee> transportGuarantee;

@Override
public void initializeUI(UIBuilder builder) throws Exception
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -215,8 +215,21 @@ public void addSecurityConstraint(String displayName, String webResourceName, St
DESCRIPTOR webXml = getConfig();

SecurityConstraintCommonType securityConstraint = webXml.createSecurityConstraint();
List<String> httpMethodsList = Lists.toList(httpMethods);
List<String> urlPatternsList = Lists.toList(urlPatterns);
List<String> httpMethodsList = new ArrayList<>();
if (httpMethods != null)
{
httpMethodsList.addAll(Lists.toList(httpMethods));
}
List<String> urlPatternsList = new ArrayList<>();
if (urlPatterns != null)
{
urlPatternsList.addAll(Lists.toList(urlPatterns));
}
List<String> securityRolesList = new ArrayList<>();
if (securityRoles != null)
{
securityRolesList.addAll(Lists.toList(securityRoles));
}
if (displayName != null)
{
securityConstraint.displayName(displayName);
Expand All @@ -240,13 +253,11 @@ public void addSecurityConstraint(String displayName, String webResourceName, St
resourceCollection.urlPattern(urlPatternsList.toArray(new String[urlPatternsList.size()]));
}

List<String> securityRolesList = Lists.toList(securityRoles);
if (securityRolesList != null)
if (!securityRolesList.isEmpty())
{
AuthConstraintCommonType authConstraint = securityConstraint.getOrCreateAuthConstraint();
authConstraint.roleName(securityRolesList.toArray(new String[securityRolesList.size()]));
}

if (transportGuarantee != null)
{
UserDataConstraintCommonType userDataConstraint = securityConstraint.getOrCreateUserDataConstraint();
Expand Down

0 comments on commit 2ea2745

Please sign in to comment.