Class MultiTableMapCache

java.lang.Object
org.opendaylight.lispflowmapping.mapcache.MultiTableMapCache
All Implemented Interfaces:
org.opendaylight.lispflowmapping.interfaces.mapcache.IMapCache

public class MultiTableMapCache extends Object implements org.opendaylight.lispflowmapping.interfaces.mapcache.IMapCache
Multi table map-cache that works with 'simple' and SourceDest LCAF addresses (see lisp-proto.yang). It can do longest prefix matching for IP and SourceDest LCAF addresses. In case of the latter, it uses two tables, one for dst and another for source, queried and populated in this exact order.
Author:
Florin Coras
  • Constructor Summary

    Constructors
    Constructor
    Description
    MultiTableMapCache(org.opendaylight.lispflowmapping.interfaces.dao.ILispDAO dao)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addData(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid, String subKey, Object data)
     
    void
    addMapping(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid key, Object value)
     
    getData(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid, String subKey)
     
    getMapping(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid srcEid, org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid dstEid)
     
    Set<org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid>
    getSubtree(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid key)
     
    org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid
    getWidestNegativeMapping(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid key)
     
     
     
    void
    removeData(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid, String subKey)
     
    void
    removeMapping(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • MultiTableMapCache

      public MultiTableMapCache(org.opendaylight.lispflowmapping.interfaces.dao.ILispDAO dao)
  • Method Details

    • addMapping

      public void addMapping(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid key, Object value)
      Specified by:
      addMapping in interface org.opendaylight.lispflowmapping.interfaces.mapcache.IMapCache
    • getMapping

      public Object getMapping(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid srcEid, org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid dstEid)
      Specified by:
      getMapping in interface org.opendaylight.lispflowmapping.interfaces.mapcache.IMapCache
    • getWidestNegativeMapping

      public org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid getWidestNegativeMapping(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid key)
      Specified by:
      getWidestNegativeMapping in interface org.opendaylight.lispflowmapping.interfaces.mapcache.IMapCache
    • getSubtree

      public Set<org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid> getSubtree(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid key)
      Specified by:
      getSubtree in interface org.opendaylight.lispflowmapping.interfaces.mapcache.IMapCache
    • removeMapping

      public void removeMapping(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid)
      Specified by:
      removeMapping in interface org.opendaylight.lispflowmapping.interfaces.mapcache.IMapCache
    • addData

      public void addData(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid, String subKey, Object data)
      Specified by:
      addData in interface org.opendaylight.lispflowmapping.interfaces.mapcache.IMapCache
    • getData

      public Object getData(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid, String subKey)
      Specified by:
      getData in interface org.opendaylight.lispflowmapping.interfaces.mapcache.IMapCache
    • removeData

      public void removeData(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid, String subKey)
      Specified by:
      removeData in interface org.opendaylight.lispflowmapping.interfaces.mapcache.IMapCache
    • printMappings

      public String printMappings()
      Specified by:
      printMappings in interface org.opendaylight.lispflowmapping.interfaces.mapcache.IMapCache
    • prettyPrintMappings

      public String prettyPrintMappings()
      Specified by:
      prettyPrintMappings in interface org.opendaylight.lispflowmapping.interfaces.mapcache.IMapCache