← Back to team overview

dhis2-devs team mailing list archive

Re: Fwd: A Question about Copyright Law

 

Hi Bob,

On Mon, Oct 5, 2009 at 5:24 PM, Bob Jolliffe <bobjolliffe@xxxxxxxxx> wrote:

> Hi
>
> We are mixing two related but not the same issues.
>
> The issue of copyright relates to the bit where you copy the ABC class
> rather than who you put as @author.  Copyright is actually a bundle of
> rights, including amongst others the right to modify, copy, use etc.  By
> default the copyright holder has exclusive rights to this bundle.  Whether
> you are allowed to do any or all of the above things is determined by the
> copyright licence.  Different licences unbundle different rights and with
> different conditions.
>
> I don't think the case you describe is necessarily related to copyright.  I
> think we are assuming that you have the right to do what you need to do and
> it seems your question is more one of  attribution.  If you are copying a
> class over which you have not been granted licence that is a different
> issue.
>
> I think Lars' suggestion is absolutely the correct one.  If you want to use
> the class with its content absolutely unmodified then.

the preamble (the @author and @version tags) should be left as it is.
> Otherwise extending the class is almost always the best solution.  If you
> feel yourself doing much copying and pasting you should start to feel a
> little voice in your head saying that you are probably doing the wrong
> thing.
>

If i am not wrong, then i think up to this level of discussion, Lars has not
suggested any thing.
And another, if extending classes is the best solution then what about those
classes who have used non access modifier like 'final' and someone want to
modify it ? and i need suggestion if someone help me to find out specially
in some special class where class have used non access modifier 'final',
access modifier 'public' and its constructor is declared 'private' , and
here some one want to modify this class for there further use. Example of
such classes we can take like "public final class System extends Object".
And here what we need to do about this

@author

But i am sure and totally agree at some points like we should follow the
convention what we have here on our wiki.
http://208.76.222.114/confluence/display/DOC/Code+Conventions#CodeConventions-Authorandversioninformation
but at the same time we should also try to adopt new futures in
Conventions to make it more flexible if it require.
Because i think here on this above link, what we can see in conventions is
necessary for the application as well as community but does we should
be agree here also like "is it sufficient and final ?"

Brajesh


Regards
> Bob
>
> 2009/10/5 Brajesh Murari <brajesh2murari@xxxxxxxxx>
>
>>
>> I have just got a mall question about the issue of Copyright
>>>
>>> If someone created a class *ABC.java* and then I copied it to another
>>> one (*MYCLASS.java*) after that modifying anything without changing the
>>> structure and meaning of the original file.
>>>
>>> So, what should I do with in the copyright line ?
>>>
>>> *For example*:
>>>
>>> */**
>>>  * @author <SOMEONE NOT ME>
>>>  * @version $Id: ABC.java 2009-09-18 17:20:00Z hieuduy$
>>>  */
>>> public abstract class MYCLASS
>>>     implements Action
>>> {..........................}
>>> *
>>>
>>> Is it right, Lars ? Or I *must change like this:
>>>
>>> /**
>>>  * @author Dang Duy Hieu
>>>  * @version $Id: ABC.java 2009-09-18 17:20:00Z someone$
>>>  */
>>> public abstract class MYCLASS
>>>     implements Action
>>> {..........................}
>>>
>>>
>>> *Thank you so much !*
>>> *--
>>> Hieu.HISPVietnam
>>> Good Health !
>>>
>>>
>>>
>> I think it will be a better solution and good design pattern approach to
>> use OOPS concept ie. Inheritance, specially if we make a subclass
>> MYCLASS.java of class ABC.java rather then copying every thing from to
>> ABC.java to MYCLASS.java. And this way we can handle copyright issue like
>> this ...
>>
>> /**
>>  * @author Dang Duy Hieu
>>  * @version $Id: ABC.java 2009-09-18 17:20:00Z someone$
>>  */
>> public abstract class MYCLASS extends ABC
>>     implements Action
>> {..........................}
>>
>>
>> This is one way to solve the issue but if ABC.java is final then .....no
>> body can extend class ABC.java
>>
>> --
>> Brajesh
>>
>>
>>
>> _______________________________________________
>> Mailing list: https://launchpad.net/~dhis2-devs<https://launchpad.net/%7Edhis2-devs>
>> Post to     : dhis2-devs@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~dhis2-devs<https://launchpad.net/%7Edhis2-devs>
>> More help   : https://help.launchpad.net/ListHelp
>>
>>
>


-- 
Brajesh

Follow ups

References