# HG changeset patch # User Claus Gittinger # Date 1574951883 -3600 # Node ID f5c862a086b3d7a7fcc9c392ab68dd5d35bdea5b # Parent 811b98a61c235ccc83ea83b483355283e475894f #FEATURE by cg class: SourceCodeManagerUtilitiesForContainerBasedManagers added: #tagExtensionsFromPackage:with: diff -r 811b98a61c23 -r f5c862a086b3 SourceCodeManagerUtilitiesForContainerBasedManagers.st --- a/SourceCodeManagerUtilitiesForContainerBasedManagers.st Thu Nov 28 15:37:42 2019 +0100 +++ b/SourceCodeManagerUtilitiesForContainerBasedManagers.st Thu Nov 28 15:38:03 2019 +0100 @@ -604,6 +604,36 @@ "Created: / 05-12-2017 / 20:03:19 / cg" "Modified: / 05-12-2017 / 23:15:52 / cg" "Modified: / 23-09-2018 / 04:18:14 / Claus Gittinger" +! + +tagExtensionsFromPackage:aPackageID with:tag + "checkin a projects extensions into the source repository. + If the argument, aLogInfoOrStringOrNil isNil, ask interactively for log-message." + + |logMessage checkinInfo mgr pri module directory containerFileName extensionsSource path| + + mgr := self sourceCodeManagerFor:aPackageID asPackageId projectDefinitionClass. + mgr isNil ifTrue:[ ^ false ]. + + module := aPackageID asPackageId module. + directory := aPackageID asPackageId directory. + containerFileName := self nameOfExtensionsContainer. + + (mgr checkForExistingContainer:containerFileName inModule:module directory:directory) ifFalse:[ + (self checkForExistingModule:module usingManager:mgr allowCreate:true) ifFalse:[^ false]. + LastModule := module. + + (self checkForExistingModule:module directory:directory usingManager:mgr allowCreate:true) ifFalse:[^ false]. + LastPackage := directory. + + (self checkForExistingModule:module directory:directory container:containerFileName usingManager:mgr allowCreate:true) ifFalse:[^ false]. + ]. + + self activityNotification:(resources string:'Tagging %1' with:containerFileName). + + path := (module, '/', directory, '/', containerFileName). + self tagPath:path as:tag usingManager:mgr. + ^ true ! ! !SourceCodeManagerUtilitiesForContainerBasedManagers class methodsFor:'documentation'!