文件服务实例工厂实现方案

╄→尐↘猪︶ㄣ 提交于 2020-01-15 07:05:57
//    todo 代码可以优化,根据配置文件来.1.3版本中优化
//    @Bean
//    @ConditionalOnProperty(value = "ossclient.active",havingValue = "dfs")
//    public IOssService  dfs() {
//        return xxx;
//    }

获取活跃的文件服务实例


    /**
     * 得到活跃的Dfs
     *
     * @return {@link com.mamcharge.techc.ossclient.service.IOssService}
     */
    public IOssService getActiveDfs() {
        //双重锁校验,缓存当前使用的dfs服务下次直接返回
        if (iOssService == null) {
            synchronized (IOssService.class) {
                if (iOssService == null) {
                    if (ActiveOssStatusEnum.FAST_DFS.getCode().equals(active)) {
                        this.iOssService = ossClientService.getFdfsService();
                    } else {
                        this.iOssService = ossClientService.getAliossService();
                    }
                }
            }
        }
        return iOssService;
    }

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!