fun updateTemplate()

in src/main/kotlin/jetbrains/buildServer/server/querylang/autocompl/CompletionManager.kt [367:415]


    fun updateTemplate(temp: BuildTypeTemplate) {
        lock.readLock().lock()
        try {
            templateIdFinder.addString(temp.externalId)
            templateNameFinder.addString(temp.name)
            temp.buildTriggersCollection.forEach { trig ->
                triggerTypeFinder.addString(trig.type, trig.buildTriggerService.displayName)
                trig.parameters.forEach {name, value ->
                    triggerParamValueFinder.addParam(name, value)
                }
            }
            temp.buildRunners.forEach {step ->
                stepTypeFinder.addString(step.type, step.runType.displayName)
                step.parameters.forEach {name, value ->
                    stepParamValueFinder.addParam(name, value)
                }
            }
            temp.buildFeatures.forEach { feat ->
                featureTypeFinder.addString(feat.type, feat.buildFeature.displayName)
                feat.parameters.forEach {name, value ->
                    featureParamValueFinder.addParam(name, value)
                }
            }

            temp.dependencies.forEach { dep ->
                DefaultOptions(dep).getOptions().forEach { opt ->
                    snapshotOptionFinder.addParam(opt.first, opt.second)
                }
            }

            temp.artifactDependencies.forEach { art ->
                artifactRulesFinder.addString(art.sourcePaths)
                artifactRevRuleFinder.addString(art.revisionRule.name)
            }

            DefaultOptions(temp).getOptions().forEach { opt ->
                templateOptionFinder.addParam(opt.first, opt.second)
            }

            temp.ownParametersCollection.forEach {
                val par = WParam(it)
                if (par.value != "") {
                    templateParamFinder.addParam(par.name, par.value)
                }
            }
        } finally {
            lock.readLock().unlock()
        }
    }