/* * Copyright (c) 2015 Cisco Systems, Inc. and others. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ package org.opendaylight.groupbasedpolicy.api; import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.common.rev140421.ActionDefinitionId; import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.common.rev140421.ClassifierDefinitionId; import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.tenants.tenant.policy.subject.feature.instances.ActionInstance; import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.tenants.tenant.policy.subject.feature.instances.ClassifierInstance; public interface PolicyValidatorRegistry { /** * Registers validator of {@link ActionInstance} for {@link ActionDefinitionId}. * * @param actionDefinitionId cannot be {@code null} * @param validator cannot be {@code null} * @throws NullPointerException */ void register(ActionDefinitionId actionDefinitionId, Validator<ActionInstance> validator); /** * Unregisters validator of {@link ActionInstance} for {@link ActionDefinitionId}. * * @param actionDefinitionId cannot be {@code null} * @param validator cannot be {@code null} * @throws NullPointerException */ void unregister(ActionDefinitionId actionDefinitionId, Validator<ActionInstance> validator); /** * Registers validator of {@link ClassifierInstance} for {@link ClassifierDefinitionId}. * * @param classifierDefinitionId cannot be {@code null} * @param validator cannot be {@code null} * @throws NullPointerException */ void register(ClassifierDefinitionId classifierDefinitionId, Validator<ClassifierInstance> validator); /** * Unregisters validator of {@link ClassifierInstance} for {@link ClassifierDefinitionId}. * * @param classifierDefinitionId cannot be {@code null} * @param validator cannot be {@code null} * @throws NullPointerException */ void unregister(ClassifierDefinitionId classifierDefinitionId, Validator<ClassifierInstance> validator); }