core/MetacelloPackageSpecResolutionError.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Mon, 10 Sep 2012 20:55:47 +0000
changeset 10 fd87600067b8
parent 1 MetacelloPackageSpecResolutionError.st@9e312de5f694
child 11 d354ac2af7ec
permissions -rw-r--r--
Metacello package refactoring - phase 1

"{ Package: 'stx:goodies/metacello' }"

Error subclass:#MetacelloPackageSpecResolutionError
	instanceVariableNames:'packageSpec repositories repositoryError'
	classVariableNames:''
	poolDictionaries:''
	category:'Metacello-Core-Exceptions-Errors'
!


!MetacelloPackageSpecResolutionError methodsFor:'accessing'!

description
    "Return a textual description of the exception."

    ^ 'Could not resolve: ' , packageSpec name , ' [' , packageSpec file , ']' , ' in' , self repositoryString
        ,
            (repositoryError == nil
                ifTrue: [ '' ]
                ifFalse: [ 
                    "report repository error to user here, since failure here is likely to be due to earlier repository error"
                    ' ERROR: ' , repositoryError description printString ])
!

packageSpec
	^ packageSpec
!

packageSpec: anObject
	packageSpec := anObject
!

repositories
	^ repositories
!

repositories: anObject
	repositories := anObject
!

repositoryError
	^ repositoryError
!

repositoryError: anObject
	repositoryError := anObject
! !

!MetacelloPackageSpecResolutionError methodsFor:'private'!

repositoryString
    | repositoryString |
    repositoryString := ''.
    self repositories do: [ :repo | repositoryString := repositoryString , ' ' , repo description ].
    ^ repositoryString
! !

!MetacelloPackageSpecResolutionError class methodsFor:'documentation'!

version_SVN
    ^ '$Id::                                                                                                                        $'
! !