if (subscriberUri.indexOf('@') != -1)
domain = subscriberUri.substring(subscriberUri.indexOf('@') + 1);
for (int i = 0; i < ruleset.getRuleArray().length; i++)
{
RuleType rule = ruleset.getRuleArray(i);
if (match(rule.getConditions(), subscriberUri, domain))
{
SubHandling subHandling = getSubHandling(rule.getActions());
if (best == null || subHandling.getValue() > best.getValue())
best = subHandling;
}
}
if (best == null)
{
for (int i = 0; i < ruleset.getRuleArray().length; i++)
{
RuleType rule = ruleset.getRuleArray(i);
if (matchOma(rule.getConditions(), subscriberUri))
{
SubHandling subHandling = getSubHandling(rule.getActions());
if (best == null || subHandling.getValue() > best.getValue())
best = subHandling;
}
}
}
if (best == null)
{
for (int i = 0; i < ruleset.getRuleArray().length; i++)
{
RuleType rule = ruleset.getRuleArray(i);
if (matchOmaOtherIdentity(rule.getConditions()))
{
SubHandling subHandling = getSubHandling(rule.getActions());
if (best == null || subHandling.getValue() > best.getValue())
best = subHandling;
}
}
}