{
for ( String possibleMatchingRule : possibleMatchingRules.keySet() )
{
if ( possibleMatchingRule.toUpperCase().startsWith( matchingRule.toUpperCase() ) )
{
MatchingRuleDescription description = schema.getMatchingRuleDescription( possibleMatchingRule );
String replacementString = possibleMatchingRule;
if ( equalsColonToken == null )
{
replacementString += ":";
}
if ( equalsToken == null )
{
replacementString += "=";
}
String displayString = possibleMatchingRule;
if ( displayString.equals( description.getNumericOID() ) )
{
displayString += " (" + description.toString() + ")";
}
else
{
displayString += " (" + description.getNumericOID() + ")";
}
ICompletionProposal proposal = new CompletionProposal( replacementString, offset, matchingRule
.length(), replacementString.length(), getMatchingRuleImage(), displayString, null, schema
.getMatchingRuleDescription( possibleMatchingRule ).getLine().getUnfoldedValue() );