List Info

Thread: Re: VCS interfaces draft




Re: VCS interfaces draft
country flaguser name
Ukraine
2007-03-22 15:49:36
On Thursday 22 March 2007 10:53, dukju ahn wrote:
> I ported VCS extention interfaces from KDev3. This is
mainly mere
> port of KDev3, except
>
> class VCSFileInfoMap's key value is changed.
> Removed VCSFileInfoProvider. IVersionControl will
provide fileinfo
> to external world.
I'd add some more minor modifications.
- rename VCSFileInfo to VcsFileInfo to match the new Qt4-ish
naming scheme
- use KUrl type for VcsFileInfo::fileName and other things
that need 
  filenames, directory names, etc.
- use accessor methods and d-pointers for VcsFileInfo
- instead of
virtual const VCSFileInfoMap *statusSync(const QString
&dirPath, bool 
recursive ) = 0;
I'd prefer to not return a pointer, but rather a reference
virtual const VCSFileInfoMap &statusSync(const QString
&dirPath, bool 
recursive ) = 0;

- statusASync look wrong, it also needs to have a reference
passed, not void*
virtual bool statusASync( const QString &dirPath, bool
recursive, 
VCSFileInfoMap &status ) = 0;

> One question is that I don't know to which directory
this file should
> go. Other than that, everything seems to be
straightforward.
I'd say lib/interfaces

>From more major modifications, I'd say that the
interface is not enough.
What if we have more methods in IVersionControl? Something
along these lines:

bool commit(KUrl::List &);
bool add(KUrl::List &);
bool remove(KUrl::List &);
....
etc.


Speaking about version control,  what is the future of
KDevVCSIntegrator's
that were used by appwizard in kdev3 to create projects in
repositories?

_______________________________________________
KDevelop-devel mailing list
KDevelop-develkdevelop.org
https://barney.cs.uni-potsdam.de/mailman/listinf
o/kdevelop-devel

Re: VCS interfaces draft
user name
2007-03-22 17:45:02
On 22.03.07 22:49:36, Alexander Dymo wrote:
> On Thursday 22 March 2007 10:53, dukju ahn wrote:
> > I ported VCS extention interfaces from KDev3. This
is mainly mere
> > port of KDev3, except
> >
> > class VCSFileInfoMap's key value is changed.
> > Removed VCSFileInfoProvider. IVersionControl will
provide fileinfo
> > to external world.
> I'd add some more minor modifications.
> - rename VCSFileInfo to VcsFileInfo to match the new
Qt4-ish naming scheme
> - use KUrl type for VcsFileInfo::fileName and other
things that need 
>   filenames, directory names, etc.
> - use accessor methods and d-pointers for VcsFileInfo
> - instead of
> virtual const VCSFileInfoMap *statusSync(const QString
&dirPath, bool 
> recursive ) = 0;
> I'd prefer to not return a pointer, but rather a
reference
> virtual const VCSFileInfoMap &statusSync(const
QString &dirPath, bool 
> recursive ) = 0;
> 
> - statusASync look wrong, it also needs to have a
reference passed, not void*
> virtual bool statusASync( const QString &dirPath,
bool recursive, 
> VCSFileInfoMap &status ) = 0;

Just a little addition which not only applies to vcs stuff:
We should
avoid bools and use enums instead. I'm planning to look
through lib and
qmake stuff next week or at the upcoming weekend and fix
this.

> > One question is that I don't know to which
directory this file should
> > go. Other than that, everything seems to be
straightforward.
> I'd say lib/interfaces

Uhm, you sure? Until now it doesn't contain any extension
interfaces, so
I guess its rather plugins/vcs/interfaces (and later have
vcs/cvs and
vcs/svn with the 2 default implementations).

> Speaking about version control,  what is the future of
KDevVCSIntegrator's
> that were used by appwizard in kdev3 to create projects
in repositories?

I think it should use the extensions interfaces to get a
list of plugins
for vcs ext iface and then use their import method. So some
vcsintegrator class that encapsulates is not needed, we have
extension
interfaces for that.

Andreas

-- 
You can do very well in speculation where land or anything
to do with dirt
is concerned.

_______________________________________________
KDevelop-devel mailing list
KDevelop-develkdevelop.org
https://barney.cs.uni-potsdam.de/mailman/listinf
o/kdevelop-devel

[1-2]

about | contact  Other archives ( Real Estate discussion Medical topics )