Class 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

      All Methods Instance Methods Concrete Methods 
      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)  
      Object getData​(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid, String subKey)  
      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)  
      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)  
      String prettyPrintMappings()  
      String printMappings()  
      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)  
    • Constructor Detail

      • MultiTableMapCache

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

      • 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