[英]Want to parse multiple key=value string to Map and then serialize it but map to string serialization fails
我正在轉換鍵=值字符串 Groovy Map。然后在進行一些更改后,返回序列化 object。示例字符串 --> dlpxDcTags = "OWNER=test,PROJECT=test2,COSTCENTER=1234,TEAM=devops"
parseDcenterTags(dlpxDcTags){
Map tags = [:]
tags += dlpxDcTags.replaceAll('\\[|\\]', '').split(',').collectEntries { entry ->
def pair = entry.split('=')
[(pair.first().trim()): pair.last().trim()]
return tags
}
}
def createDcenterTags(dlpxDcTags=null) {
// Values passed from the environment of the user takes precedence
tags = parseDcenterTags(dlpxDcTags)
if (tags) {
if (!(tags.get('PROJECT'))) {
tags['PROJECT'] = env.JOB_NAME
}
if (!tags.get('OWNER')) {
// not supplied via dlpxDcTags
tags['OWNER'] = env.BUILD_USER_EMAIL
}
}
else {
tags['PROJECT'] = env.JOB_NAME
tags['OWNER'] = env.BUILD_USER_EMAIL
}
return serializeDcenterTags(tags)
}
def serializeDcenterTags(tags){
dlpxDcTags = {
tags.collect { /$tags.key="$tags.value"/ } join ","
}
return dlpxDcTags
}
面臨的問題:
在大量閱讀和嘗試不同的方法之后,對我有用的非常簡單的事情是用相同的方法進行序列化,而不是從另一個方法定義和調用它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.