X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=pcep%2Fimpl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fprotocol%2Fpcep%2Fimpl%2FBasePCEPSessionProposalFactory.java;h=fcad92b22ab44a33afd37f2ee17c79a630f3dd11;hb=9c40c9c560a5417c59fa67f6e7aafda7281af4db;hp=4efe496dab4f202166713e2cbe41276ef5ac8b3b;hpb=9493d7c4014ddf47f9ae044b1a51583f03885ec9;p=bgpcep.git diff --git a/pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/BasePCEPSessionProposalFactory.java b/pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/BasePCEPSessionProposalFactory.java index 4efe496dab..fcad92b22a 100644 --- a/pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/BasePCEPSessionProposalFactory.java +++ b/pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/BasePCEPSessionProposalFactory.java @@ -7,6 +7,7 @@ */ package org.opendaylight.protocol.pcep.impl; +import com.google.common.base.Preconditions; import java.net.InetSocketAddress; import java.util.List; import org.opendaylight.protocol.pcep.PCEPCapability; @@ -15,13 +16,24 @@ import org.opendaylight.protocol.pcep.PCEPSessionProposalFactory; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.open.object.Open; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.open.object.OpenBuilder; import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.open.object.open.TlvsBuilder; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; public final class BasePCEPSessionProposalFactory implements PCEPSessionProposalFactory { + private static final Logger LOG = LoggerFactory.getLogger(BasePCEPSessionProposalFactory.class); + private static final int KA_TO_DEADTIMER_RATIO = 4; private final int keepAlive, deadTimer; private final List capabilities; public BasePCEPSessionProposalFactory(final int deadTimer, final int keepAlive, final List capabilities) { + if(keepAlive != 0) { + Preconditions.checkArgument(keepAlive >= 1, "Minimum value for keep-alive-timer-value is 1"); + if(deadTimer != 0 && (deadTimer / keepAlive != KA_TO_DEADTIMER_RATIO)) { + LOG.warn("dead-timer-value should be {} times greater than keep-alive-timer-value", KA_TO_DEADTIMER_RATIO); + } + } + this.deadTimer = deadTimer; this.keepAlive = keepAlive; this.capabilities = capabilities; @@ -33,11 +45,6 @@ public final class BasePCEPSessionProposalFactory implements PCEPSessionProposal } } - @Override - public Open getSessionProposal(final InetSocketAddress address, final int sessionId) { - return getSessionProposal(address, sessionId, null); - } - @Override public Open getSessionProposal(final InetSocketAddress address, final int sessionId, final PCEPPeerProposal peerProposal) { @@ -59,12 +66,8 @@ public final class BasePCEPSessionProposalFactory implements PCEPSessionProposal return oBuilder.setTlvs(builder.build()).build(); } - public int getKeepAlive() { - return this.keepAlive; - } - - public int getDeadTimer() { - return this.deadTimer; + @Override + public List getCapabilities() { + return this.capabilities; } - }