//注： 从CC 1.x升级到CC 2.x的用户，用此文件替换原来的cc-settings.gradle的同时，需要在根目录build.gradle中将插件地址按照如下方式更换一下：
// classpath 'com.billy.android:autoregister:x.x.x' -> classpath 'com.billy.android:cc-register:x.x.x'
//cc-register extension:
// 功能介绍：
//  完成组件、拦截器及跨进程json解释器等CC库自身需要的自动注册功能
//  支持新增自定义的其它自动注册功能，参考AutoRegister，用法参考cc-settings-demo.gradle
project.apply plugin: 'cc-register'
project.dependencies.add('api', project(':cc')) //用最新版
//project.dependencies.add('api', "com.billy.android:cc:2.1.6") //用最新版


dependencies {
    switch (project.name){
        case 'library-base':
            api project(':library-fragmentation_core')
            api project(':library-qm-qmui')
            api project(':library-qm-arch')
            api project(':library-qm-skin-maker')
            break
        case 'library-common':
            api project(':library-base')
            api project(':library-database')
            break
        case 'library-order':
            api project(':library-common')
            break
        case 'library-print':
            api project(':library-common')
            api project(':library-order')
            break
        case 'library-ui':
            api project(':library-common')
            api project(':library-order')
            break
        case 'library-updateApk':
            api project(':library-common')
            break
    }

    if(project.name.contains('component')){
        api project(':library-order')
        api project(':library-print')
        api project(':library-ui')
        api project(':library-updateApk')
    }


    implementation rootProject.ext.dependencies["retrofit-url-manager"]
    api rootProject.ext.dependencies["butterknife"]
    annotationProcessor rootProject.ext.dependencies["butterknife-compiler"]
//    annotationProcessor rootProject.ext.dependencies["dagger2-compiler"]//依赖插件
    implementation rootProject.ext.dependencies["multidex"]
    annotationProcessor rootProject.ext.dependencies["dagger2-compiler"]
    implementation rootProject.ext.dependencies["constraintlayout"]
    implementation 'org.jetbrains:annotations:15.0'
    //日誌管理
    implementation 'com.elvishew:xlog:1.6.1'
    //lombok
    implementation 'org.projectlombok:lombok:1.18.10'
    annotationProcessor 'org.projectlombok:lombok:1.18.10'
}

//此文件是作为组件化配置的公共gradle脚本文件，在每个组件中都apply此文件，下载到工程根目录后，可以在下方添加一些自己工程中通用的配置
// 可参考cc-settings-demo.gradle
// 例如：
//      1. 添加全局拦截器、下沉的公共类库等一些公共基础库的依赖；
//      2. 添加自定义的通过cc-register实现的自动注册配置
//      3. 开启app内部多进程支持
//      4. 其它公共配置信息

//开启app内部多进程组件调用时启用下面这行代码
//文档地址：https://luckybilly.github.io/CC-website/#/manual-multi-process
//ccregister.multiProcessEnabled = true

//开启app内部多进程组件调用时，可以启用下方的配置排除一些进程
//ccregister.excludeProcessNames = [':pushservice', ':processNameB']

//按照如下格式添加自定义注册项，可添加多个（也可每次add一个，add多次）
// 文档地址： https://luckybilly.github.io/CC-website/#/manual-IActionProcessor
//ccregister.registerInfo.add([
//        //在自动注册组件的基础上增加：自动注册组件B的processor
//        'scanInterface'             : 'com.billy.cc.demo.component.b.processor.IActionProcessor'
//        , 'codeInsertToClassName'   : 'com.billy.cc.demo.component.b.ComponentB'
//        , 'codeInsertToMethodName'  : 'initProcessors'
//        , 'registerMethodName'      : 'add'
//])

//开启app内部多进程组件调用
ccregister.multiProcessEnabled = true