Subclassing EsLogManager

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Subclassing EsLogManager

Hermann Ottens
Hi group,

we're using VA Smalltalk 8.5.2 and lately we discovered, that it's not very easy to subclass EsLogManager (app: EsLoggingFrameworkApp).
EsLogManager implements the class method info: which is called during the creation of the new subclass.
Class creation fails during

Class>>initializeExtraInstanceVariables
...
    self info: self informationClass new.
...
    self info privateStatus:
        (self superclass isNil
            ifTrue: [false]
            ifFalse: [self superclass isPrivate]).

which results in 'UndefinedObject does not understand privateStatus:'.

Solution is to temporarily delete EsLogManager class>>info: then create the subclass and reload EsLogManager class>>info: afterwards.

Perrhaps someone of Instantiations is reading this, i think that any class implementing Xxx class>>info: is concerned.

Cheers,
Hermann

--
You received this message because you are subscribed to the Google Groups "VA Smalltalk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To post to this group, send email to [hidden email].
Visit this group at http://groups.google.com/group/va-smalltalk.
For more options, visit https://groups.google.com/groups/opt_out.
 
 
Reply | Threaded
Open this post in threaded view
|

Re: Subclassing EsLogManager

Ben van Dijk
Hi Hermann,

We had the same problem and renamed the info: method to logInfo: to fix this.
Hopefully Instantiations can provide a permanent fix

greetz, Ben

Op donderdag 27 juni 2013 12:59:22 UTC+2 schreef Hermann Ottens het volgende:
Hi group,

we're using VA Smalltalk 8.5.2 and lately we discovered, that it's not very easy to subclass EsLogManager (app: EsLoggingFrameworkApp).
EsLogManager implements the class method info: which is called during the creation of the new subclass.
Class creation fails during

Class>>initializeExtraInstanceVariables
...
    self info: self informationClass new.
...
    self info privateStatus:
        (self superclass isNil
            ifTrue: [false]
            ifFalse: [self superclass isPrivate]).

which results in 'UndefinedObject does not understand privateStatus:'.

Solution is to temporarily delete EsLogManager class>>info: then create the subclass and reload EsLogManager class>>info: afterwards.

Perrhaps someone of Instantiations is reading this, i think that any class implementing Xxx class>>info: is concerned.

Cheers,
Hermann

--
You received this message because you are subscribed to the Google Groups "VA Smalltalk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To post to this group, send email to [hidden email].
Visit this group at http://groups.google.com/group/va-smalltalk.
For more options, visit https://groups.google.com/groups/opt_out.
 
 
Reply | Threaded
Open this post in threaded view
|

Re: Subclassing EsLogManager

dmacq
This is fixed in the upcoming 8.6 release in just the way you suggest.

Donald [|]

On Saturday, June 29, 2013 3:28:15 PM UTC-4, Ben van Dijk wrote:
Hi Hermann,

We had the same problem and renamed the info: method to logInfo: to fix this.
Hopefully Instantiations can provide a permanent fix

greetz, Ben

Op donderdag 27 juni 2013 12:59:22 UTC+2 schreef Hermann Ottens het volgende:
Hi group,

we're using VA Smalltalk 8.5.2 and lately we discovered, that it's not very easy to subclass EsLogManager (app: EsLoggingFrameworkApp).
EsLogManager implements the class method info: which is called during the creation of the new subclass.
Class creation fails during

Class>>initializeExtraInstanceVariables
...
    self info: self informationClass new.
...
    self info privateStatus:
        (self superclass isNil
            ifTrue: [false]
            ifFalse: [self superclass isPrivate]).

which results in 'UndefinedObject does not understand privateStatus:'.

Solution is to temporarily delete EsLogManager class>>info: then create the subclass and reload EsLogManager class>>info: afterwards.

Perrhaps someone of Instantiations is reading this, i think that any class implementing Xxx class>>info: is concerned.

Cheers,
Hermann

--
You received this message because you are subscribed to the Google Groups "VA Smalltalk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To post to this group, send email to [hidden email].
Visit this group at http://groups.google.com/group/va-smalltalk.
For more options, visit https://groups.google.com/groups/opt_out.
 
 
Reply | Threaded
Open this post in threaded view
|

Re: Subclassing EsLogManager

Hermann Ottens
Hi Donald,

good news.
(BTW: we solved it the same way that Ben v.D. did.
I think it's not a grave problem, but i was considering to restore our repository backup, before i thought again and debugged a bit deeper. We had never encountered a problem with subclassing, but several network errors, therefore our first thought was, that an inconsistency existed in our repository.)

Cheers,
Hermann

Am Samstag, 29. Juni 2013 22:31:28 UTC+2 schrieb Donald MacQueen:
This is fixed in the upcoming 8.6 release in just the way you suggest.

Donald [|]

On Saturday, June 29, 2013 3:28:15 PM UTC-4, Ben van Dijk wrote:
Hi Hermann,

We had the same problem and renamed the info: method to logInfo: to fix this.
Hopefully Instantiations can provide a permanent fix

greetz, Ben

Op donderdag 27 juni 2013 12:59:22 UTC+2 schreef Hermann Ottens het volgende:
Hi group,

we're using VA Smalltalk 8.5.2 and lately we discovered, that it's not very easy to subclass EsLogManager (app: EsLoggingFrameworkApp).
EsLogManager implements the class method info: which is called during the creation of the new subclass.
Class creation fails during

Class>>initializeExtraInstanceVariables
...
    self info: self informationClass new.
...
    self info privateStatus:
        (self superclass isNil
            ifTrue: [false]
            ifFalse: [self superclass isPrivate]).

which results in 'UndefinedObject does not understand privateStatus:'.

Solution is to temporarily delete EsLogManager class>>info: then create the subclass and reload EsLogManager class>>info: afterwards.

Perrhaps someone of Instantiations is reading this, i think that any class implementing Xxx class>>info: is concerned.

Cheers,
Hermann

--
You received this message because you are subscribed to the Google Groups "VA Smalltalk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To post to this group, send email to [hidden email].
Visit this group at http://groups.google.com/group/va-smalltalk.
For more options, visit https://groups.google.com/groups/opt_out.