I want to change it to public to use it in e.g. the
AnnotationProcessor as parameter type - such stuff should be possible

to implement Natures I understand that the BaseNature must be used

Joachim

2008/8/5 Werner Guttmann <[EMAIL PROTECTED]>:
>
>
> Joachim Grüneis wrote:
>> Thx for the explanation - that's exactly what I meant asking why it is
>> protected?
>>
>> I would like to have the interface public - because a marker is rather
>> useless if It cannot be referenced. I wanted to use it in an interface
>> as argument but I had to use the class instead - which I think is not
>> ok when I just want to specify the expected interface.
>>
>> I think it is ok to offer a class to extend for easy living... but
>> 'hiding' the interface and forcing to extend a class is not ok.
>>
>> Is it ok if I change it to public?
> Not 100% sure. As mentioned by Lukas briefly, there's a few things we
> want to happen when somebody implements a nature. And that has been
> achieved by making BaseNature availabe, which forces you to do a few
> things (e.g. define a constructur that takes a PropertyHolder).
>
> If there's a feature to be added (that we have missed in the original
> implementation), we could (and should?) alternatively add it to the
> BaseNature class.
>
> Werner
>>
>> 2008/8/5 Lukas Lang <[EMAIL PROTECTED]>:
>>> Hello folks,
>>>
>>> according to Sun's guide to classes and objects [1],
>>> classes or interfaces, having no keyword as "public",
>>> "private" or "protected" prefixed offer default visibility.
>>>
>>> As the guide propagates, an interface providing default visibility
>>> is not visible from other packages, which would represent a problem for one,
>>> who wants to derive from the Nature interface in various other packages.
>>>
>>> The main intention to do so, was that we offered a base class (BaseNature)
>>> to do easy property handling (prefixing) and a "health check" in the
>>> constructor,
>>> which is visible to all packages.
>>>
>>> You can see the Nature interface itself as a kind of marker
>>> to have a common superclass.
>>>
>>> I think, I got some documentation (UML) on the Nature architecture.
>>> So if you want, I can provide this to you.
>>>
>>> Regards,
>>> Lukas
>>>
>>> [1] http://java.sun.com/docs/books/tutorial/java/javaOO/accesscontrol.html
>>>
>>> Werner Guttmann schrieb:
>>>> Joachim,
>>>>
>>>> sorry, but the keyword 'protected' is not used in the interface
>>>> declaration anywhere. As such, it definitely is not protected.
>>>>
>>>> Let me ask you something else: what problem are you having (if at all)
>>>> with the way the interface is declared ?
>>>>
>>>> Regards
>>>> Werner
>>>>
>>>> Joachim Grüneis wrote:
>>>>> When an interface is declared as:
>>>>>
>>>>> /*
>>>>>  * Copyright 2008 Lukas Lang
>>>>>  *
>>>>>  * Licensed under the Apache License, Version 2.0 (the "License");
>>>>>  * you may not use this file except in compliance with the License.
>>>>>  * You may obtain a copy of the License at
>>>>>  *
>>>>>  * http://www.apache.org/licenses/LICENSE-2.0
>>>>>  *
>>>>>  * Unless required by applicable law or agreed to in writing, software
>>>>>  * distributed under the License is distributed on an "AS IS" BASIS,
>>>>>  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
>>>>> implied.
>>>>>  * See the License for the specific language governing permissions and
>>>>>  * limitations under the License.
>>>>>  *
>>>>>  */
>>>>> package org.castor.core.nature;
>>>>>
>>>>> /**
>>>>>  * A Nature defines a perception of any arbitrary Class.
>>>>>  *
>>>>>  * @author Lukas Lang
>>>>>  * @since 1.2.1
>>>>>  *
>>>>>  */
>>>>> interface Nature {
>>>>>    /**
>>>>>     * Returns the fully qualified name of the Nature.
>>>>>     * @return qualified name of the nature.
>>>>>     */
>>>>>    String getId();
>>>>> }
>>>>>
>>>>> it is protected.
>>>>>
>>>>> 2008/7/31 Werner Guttmann <[EMAIL PROTECTED]>:
>>>>>> Joachim,
>>>>>>
>>>>>> in what sense 'protected' ?
>>>>>>
>>>>>> Werner
>>>>>>
>>>>>> Joachim Grüneis wrote:
>>>>>>> Why is interface org.castor.core.nature.Nature protected?
>>>>>>>
>>>>>>> Regards
>>>>>>> Joachim
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>> To unsubscribe from this list, please visit:
>>>>>>>
>>>>>>>    http://xircles.codehaus.org/manage_email
>>>>>>>
>>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe from this list, please visit:
>>>>>>
>>>>>>   http://xircles.codehaus.org/manage_email
>>>>>>
>>>>>>
>>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe from this list, please visit:
>>>>>
>>>>>    http://xircles.codehaus.org/manage_email
>>>>>
>>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe from this list, please visit:
>>>>
>>>>    http://xircles.codehaus.org/manage_email
>>>>
>>>>
>>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe from this list, please visit:
>>>
>>>   http://xircles.codehaus.org/manage_email
>>>
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe from this list, please visit:
>>
>>     http://xircles.codehaus.org/manage_email
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe from this list, please visit:
>
>    http://xircles.codehaus.org/manage_email
>
>
>

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to