Class SimpleMapCache

  • All Implemented Interfaces:
    org.opendaylight.lispflowmapping.interfaces.mapcache.ILispMapCache, org.opendaylight.lispflowmapping.interfaces.mapcache.IMapCache

    public class SimpleMapCache
    extends Object
    implements org.opendaylight.lispflowmapping.interfaces.mapcache.ILispMapCache
    Simple map-cache that works with 'simple' addresses (see lisp-proto.yang). It can do longest prefix matching for IP addresses.
    Author:
    Florin Coras, Lorand Jakab
    • Constructor Summary

      Constructors 
      Constructor Description
      SimpleMapCache​(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)  
      void addMapping​(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid key, Object value, Set<org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.inet.binary.types.rev160303.IpAddressBinary> sourceRlocs)  
      void addMapping​(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.XtrId xtrId, Object value)  
      List<Object> getAllXtrIdMappings​(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid)  
      org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid getCoveringLessSpecific​(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid)  
      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)  
      Object getMapping​(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid, org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.XtrId xtrId)  
      org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid getParentPrefix​(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid)  
      org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid getSiblingPrefix​(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid)  
      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 eid)  
      org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid getVirtualParentSiblingPrefix​(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid)  
      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 eid)  
      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)  
      void removeMapping​(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid, org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.XtrId xtrId)  
      void removeXtrIdMappings​(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid, List<org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.XtrId> xtrIds)  
    • Constructor Detail

      • SimpleMapCache

        public SimpleMapCache​(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
      • addMapping

        public void addMapping​(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid key,
                               Object value,
                               Set<org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.inet.binary.types.rev160303.IpAddressBinary> sourceRlocs)
        Specified by:
        addMapping in interface org.opendaylight.lispflowmapping.interfaces.mapcache.ILispMapCache
      • addMapping

        public void addMapping​(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.XtrId xtrId,
                               Object value)
        Specified by:
        addMapping in interface org.opendaylight.lispflowmapping.interfaces.mapcache.ILispMapCache
      • 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
      • getMapping

        public Object getMapping​(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid,
                                 org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.XtrId xtrId)
        Specified by:
        getMapping in interface org.opendaylight.lispflowmapping.interfaces.mapcache.ILispMapCache
      • getAllXtrIdMappings

        public List<Object> getAllXtrIdMappings​(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid)
        Specified by:
        getAllXtrIdMappings in interface org.opendaylight.lispflowmapping.interfaces.mapcache.ILispMapCache
      • 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 eid)
        Specified by:
        getWidestNegativeMapping in interface org.opendaylight.lispflowmapping.interfaces.mapcache.IMapCache
      • getCoveringLessSpecific

        public org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid getCoveringLessSpecific​(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid)
        Specified by:
        getCoveringLessSpecific in interface org.opendaylight.lispflowmapping.interfaces.mapcache.ILispMapCache
      • getParentPrefix

        public org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid getParentPrefix​(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid)
        Specified by:
        getParentPrefix in interface org.opendaylight.lispflowmapping.interfaces.mapcache.ILispMapCache
      • getSiblingPrefix

        public org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid getSiblingPrefix​(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid)
        Specified by:
        getSiblingPrefix in interface org.opendaylight.lispflowmapping.interfaces.mapcache.ILispMapCache
      • getVirtualParentSiblingPrefix

        public org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid getVirtualParentSiblingPrefix​(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid)
        Specified by:
        getVirtualParentSiblingPrefix in interface org.opendaylight.lispflowmapping.interfaces.mapcache.ILispMapCache
      • 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 eid)
        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
      • removeMapping

        public void removeMapping​(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid,
                                  org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.XtrId xtrId)
        Specified by:
        removeMapping in interface org.opendaylight.lispflowmapping.interfaces.mapcache.ILispMapCache
      • removeXtrIdMappings

        public void removeXtrIdMappings​(org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid eid,
                                        List<org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.XtrId> xtrIds)
        Specified by:
        removeXtrIdMappings in interface org.opendaylight.lispflowmapping.interfaces.mapcache.ILispMapCache
      • 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