类 LocalBinaryStore

所有已实现的接口:
URLStore, URLStreamHandlerFactory

public class LocalBinaryStore extends BasesLocalBinaryStore
二进制数据本地存储实现
作者:
guyadong
  • 字段详细资料

    • PROTOCOL

      public static final String PROTOCOL
      另请参阅:
    • SINGLETON

      public static final LocalBinaryStore SINGLETON
      分区名为'origin',存储级数为2的单实例
  • 构造器详细资料

    • LocalBinaryStore

      public LocalBinaryStore(File storeRoot, String partition, int level)
      参数:
      storeRoot - 存储根路径
      partition - 存储路径前缀(分区),为null或空则使用默认值'origin'
      level - 存储目录级数,小于0或大于4则使用默认值2
      另请参阅:
      • levelFolderOf(String, String)
    • LocalBinaryStore

      public LocalBinaryStore(String storeRoot, String partition, int level)
      另请参阅:
  • 方法详细资料

    • createStoreURL

      protected URL createStoreURL(File file)
      创建存储地址对象(将path中storeRoot路径剥离)
      参数:
      file -
      返回:
      存储地址URL
    • doFind

      protected URL doFind(String md5)
      从类复制的说明: BaseURLStore
      查找指定MD5的二进制数据
      指定者:
      doFind 在类中 BaseURLStore
      参数:
      md5 - MD5校验码
      返回:
      数据存储URL,找不到返回null
    • doStore

      protected URL doStore(byte[] binary, String md5, String extension, boolean overwrite, boolean makeURLOnly) throws IOException
      从类复制的说明: BaseURLStore
      存储图像数据
      指定者:
      doStore 在类中 BaseURLStore
      参数:
      binary - 二进制数据字节数组
      md5 - imageBytes的MD5校验码
      extension - 文件后缀,可为null
      overwrite - 文件存在时是否重写
      makeURLOnly - 为true时不存储数据只返回存储URL
      返回:
      存储URL
      抛出:
      IOException
    • asRelativePath

      public String asRelativePath(URL storedUrl, String prefix)
      返回存储URL相对路径
      参数:
      storedUrl -
      prefix - 需要替换的路径前缀, 为null直接返回URL的 path部分
    • asCanonicalURL

      public URL asCanonicalURL(URL storedUrl, String protocol, String host, Integer port, String prefix)
      将存储URL替换路径前缀,转为protocol,host,port指定的标准 URL
      参数:
      storedUrl -
      protocol - 为null则默认为http
      host -
      port - 为null为默认端口
      prefix -
      另请参阅:
    • asStoredURL

      public URL asStoredURL(URL canonicalUrl)
      将输入的URL转转为本地存储URL
      参数:
      canonicalUrl -
    • setStoreRoot

      public LocalBinaryStore setStoreRoot(File storeRoot)
    • getPartition

      public String getPartition()
    • relativeFilePath

      protected String relativeFilePath(String md5, String suffix)
    • localFolderOf

      protected File localFolderOf(String md5)
      根据MD5计算出对应的存储路径
    • matchRelativePath

      protected int matchRelativePath(String path)
      正则表达匹配判断是路径后部否为本地存储路径(), 如8b/ce/8bce0bb6de7e5c025a4a06e3d05edce7.tx 如果是则返回匹配的相对路径的起始位置,否则返回-1
    • hashCode

      public int hashCode()
      覆盖:
      hashCode 在类中 BasesLocalBinaryStore
    • equals

      public boolean equals(Object obj)
      覆盖:
      equals 在类中 BasesLocalBinaryStore
    • toString

      public String toString()
      覆盖:
      toString 在类中 BasesLocalBinaryStore