/*
- * Copyright (c) 2015 Ericsson India Global Services Pvt Ltd. and others. All rights reserved.
+ * Copyright (c) 2015 - 2016 Ericsson India Global Services Pvt Ltd. 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,
import org.opendaylight.yang.gen.v1.urn.opendaylight.packet.service.rev130709.PacketProcessingService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import org.opendaylight.vpnservice.mdsalutil.FlowEntity;
+import org.opendaylight.vpnservice.mdsalutil.GroupEntity;
public class MDSALUtilProvider implements BindingAwareConsumer, IMdsalApiManager, AutoCloseable {
private static final Logger s_logger = LoggerFactory.getLogger(MDSALUtilProvider.class);
private MDSALManager mdSalMgr;
+ private static final long FIXED_DELAY_IN_MILLISECONDS = 5000;
@Override
public void onSessionInitialized(ConsumerContext session) {
mdSalMgr.sendARPPacketOutWithActions(dpnId, payload, action_info);
}
+ @Override
+ public void syncRemoveFlow(FlowEntity flowEntity, long delayTime) {
+ mdSalMgr.syncSetUpFlow(flowEntity, delayTime, true);
+ }
+
+ @Override
+ public void syncInstallFlow(FlowEntity flowEntity, long delayTime) {
+ mdSalMgr.syncSetUpFlow(flowEntity, delayTime, false);
+ }
+
+ @Override
+ public void syncInstallGroup(GroupEntity groupEntity, long delayTime) {
+ mdSalMgr.syncSetUpGroup(groupEntity, delayTime, false);
+ }
+
+ @Override
+ public void syncRemoveGroup(GroupEntity groupEntity) {
+ mdSalMgr.syncSetUpGroup(groupEntity, FIXED_DELAY_IN_MILLISECONDS, true);
+ }
+
}