class ACL implements IACLService, IFloodlightModule, IDeviceListener {

	@Override
	public boolean addRule(ACLRule rule) {
		rule.setId(lastRuleId++);
		if (checkRuleMatch(rule)) {
			lastRuleId--;
			return false;
		}
		aclRules.put(rule.getId(), rule);
		logger.info("ACL rule(id:{}) is added.", rule.getId());
		if (rule.getAction() != Action.ALLOW) {
			enforceAddedRule(rule);
		}
		return true;
	}

}