jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Felix Meschberger" <fmesc...@gmail.com>
Subject Re: Main Entry Point for Backup Tool
Date Tue, 27 Jun 2006 05:52:22 GMT
Hi,

I agree with Toby, that the name is misleading. I suggest that you
follow the pattern "SpecializationBase"  where "Repository" is the
specialization of the "Backup". This way you would get
"RepositoryBackup", "WorkspaceBackup", "AllWorkspaceBackup", which is
far more understandable.

Regards
Felix

On 6/26/06, Nicolas Toper <ntoper@gmail.com> wrote:
> BackupRepository (let's call it like this for now) is a subclass of Backup.
> The naming I have used is BackupResourceNAme, I have for instance
> BackupWorkspace, BackupAllWorkspaces, and so on.
>
> Besides, BackupRepository backup only one repository.
>
> I find this clear.
>
> Do you really think I should call it another name? Jukka?
>
> Nicolas
>
> On 6/26/06, Tobias Bocanegra <tobias.bocanegra@day.com> wrote:
> >
> > > 1/ I have added a method called getBackupRepository(BackupConfig conf)
> > in
> > > RepositoryImpl.
> >
> > i find BackupRepository a misleading name. it sounds as if it's a
> > seperate, backup repository. preferable names are BackupTool, or
> > BackupManager, or something like this.
> >
> > > 2/ OK for backup and restore for naming those methods in
> > BackupRepository
> > > and in all others Backup subclasses.
> >
> > regards, toby
> >
> > >
> > > Nicolas
> > >
> > > On 6/26/06, Tobias Bocanegra <tobias.bocanegra@day.com > wrote:
> > > >
> > > > you lost me.... :-)
> > > >
> > > > On 6/26/06, Nicolas Toper < ntoper@gmail.com> wrote:
> > > > > Fine for me. However if we put only a getBackupRepository() in
> > > > > RepositoryImpl() (  I agree on this, the class is working this way
> > > > already)
> > > > > , I would use instead backup and restore (BackupRepository extend
> > the
> > > > Backup
> > > > > abstract class and I need to have a consistant naming on this side
> > too
> > > > > please see
> > > > >
> > http://www.deviant-abstraction.net/wp-content/uploads/2006/06/classdiagram.gif
> > > >
> > > > > ).
> > > > >
> > > > > Nicolas
> > > > >
> > > > > On 6/26/06, Stefan Guggisberg <stefan.guggisberg@gmail.com>
wrote:
> > > > > >
> > > > > > On 6/26/06, Nicolas Toper < ntoper@gmail.com> wrote:
> > > > > > > Hi,
> > > > > > >
> > > > > > > About the names of the methods, which ones would you propose?
> > > > > >
> > > > > > off the top of my head, how about:
> > > > > >
> > > > > > backupRepository
> > > > > > restoreRepository
> > > > > >
> > > > > > cheers
> > > > > > stefan
> > > > > >
> > > > > > >
> > > > > > > About the exceptions: some other exceptions can be raised
and
> > they
> > > > will
> > > > > > all
> > > > > > > be propagated to this method. I need some specific exception
to
> > > > > > encapsulate
> > > > > > > them all, unless of course, you fill it is better to let
them as
> > > > they
> > > > > > are?
> > > > > > >
> > > > > > > The user/password are in the BackupConfig class already.
OK on
> > the
> > > > > > thrown
> > > > > > > exception.
> > > > > > >
> > > > > > >
> > > > > > > On 6/26/06, Stefan Guggisberg < stefan.guggisberg@gmail.com>
> > wrote:
> > > > > > > >
> > > > > > > > hi nicolas,
> > > > > > > >
> > > > > > > > i share tobi's concern regarding the naming of the
methods.
> > > > > > > > save and restore are used in other contexts and may
cause
> > > > > > > > confusion.
> > > > > > > >
> > > > > > > > some comments regarding the proposed signatures:
> > > > > > > > - i suggest both methods throw IOException and
> > > > RepositoryException.
> > > > > > > >   there's no need for specific SavingException and
> > > > RestoreException
> > > > > > > >   as the context is already clear.
> > > > > > > > - if the methods are goping to be on Repository we'll
also
> > need
> > > > some
> > > > > > > >   sort of authentication/authorization. a Credentials
> > parameter
> > > > would
> > > > > > > >   IMO be fine. both methods should also throw
> > > > AccessDeniedExcpetion.
> > > > > > > >
> > > > > > > > cheers
> > > > > > > > stefan
> > > > > > > >
> > > > > > > > On 6/25/06, Nicolas Toper <ntoper@gmail.com>
wrote:
> > > > > > > > > Hi,
> > > > > > > > >
> > > > > > > > > I am updating the RepositoryImpl class. Here
is what it
> > looks
> > > > like
> > > > > > > > (below).
> > > > > > > > >
> > > > > > > > > We have agreed on using In/OutputStream. However,
now that I
> > > > have
> > > > > > > > advanced a
> > > > > > > > > little bit in the code, it raises a problem:
I cannot use
> > nio
> > > > and
> > > > > > since
> > > > > > > > it
> > > > > > > > > is huge dataset, I would prefer to use it for
performance
> > issue.
> > > >
> > > > > > What do
> > > > > > > > you
> > > > > > > > > think?
> > > > > > > > >
> > > > > > > > > Nicolas
> > > > > > > > > my blog! http://www.deviant-abstraction.net !!
> > > > > > > > >     /**
> > > > > > > > >      *
> > > > > > > > >      * This method restores data from an InputStream.
> > > > > > > > >      *
> > > > > > > > >      * @param InputStream savedData: InputStream
containing
> > the
> > > > > > backup
> > > > > > > > (and
> > > > > > > > > its parameters).
> > > > > > > > >      * @param File workingFolder: the folder
used to unzip
> > all
> > > > data.
> > > > > > > > >      *
> > > > > > > > >      * @throws RestoreException. Generic exception
during
> > > > restore
> > > > > > > > operation.
> > > > > > > > >      *
> > > > > > > > >      * @author: Nicolas Toper < ntoper@gmail.com>
> > > > > > > > >      *
> > > > > > > > >      */
> > > > > > > > >     public void restore(InputStream savedData,
File
> > > > workingFolder)
> > > > > > > > throws
> > > > > > > > > RestoreException {
> > > > > > > > >
> > > > > > > > >         BackupRepository saveRepo = new
> > BackupRepository(this,
> > > > > > > > savedData,
> > > > > > > > > workingFolder);
> > > > > > > > >         saveRepo.restore();
> > > > > > > > >     }
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >     /**
> > > > > > > > >      *
> > > > > > > > >      * This method saves from this repository
to an
> > > > OutputStream.
> > > > > > > > >      *
> > > > > > > > >      * @param outputStream out: Outputstream
where the
> > backup
> > > > should
> > > > > > be.
> > > > > > > > >      * @param BackupConfig conf: BackupConfig
object
> > containing
> > > > all
> > > > > > the
> > > > > > > > > parameters.
> > > > > > > > >      *
> > > > > > > > >      * @throws SavingException. Generic exception
during
> > saving
> > > > > > > > operation.
> > > > > > > > >      *
> > > > > > > > >      * @author: Nicolas Toper <ntoper@gmail.com>
> > > > > > > > >      *
> > > > > > > > >      */
> > > > > > > > >     public void save(OutputStream out, BackupConfig
conf)
> > throws
> > > > > > > > > SavingException{
> > > > > > > > >
> > > > > > > > >         conf.init(this);
> > > > > > > > >         BackupRepository saveRepo = (BackupRepository)
> > > > > > conf.getBackup();
> > > > > > > > >         saveRepo.save(out, conf);
> > > > > > > > >     }
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > --
> > > > > > > a+
> > > > > > > Nico
> > > > > > > my blog! http://www.deviant-abstraction.net !!
> > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > > >
> > > > >
> > > > > --
> > > > > a+
> > > > > Nico
> > > > > my blog! http://www.deviant-abstraction.net !!
> > > > >
> > > > >
> > > >
> > > >
> > > > --
> > > > -----------------------------------------< tobias.bocanegra@day.com>---
> > > > Tobias Bocanegra, Day Management AG, Barfuesserplatz 6, CH - 4001
> > Basel
> > > > T +41 61 226 98 98, F +41 61 226 98 97
> > > > -----------------------------------------------< http://www.day.com>---
> > > >
> > >
> > >
> > >
> > > --
> > > a+
> > > Nico
> > > my blog! http://www.deviant-abstraction.net !!
> > >
> > >
> >
> >
> > --
> > -----------------------------------------< tobias.bocanegra@day.com >---
> > Tobias Bocanegra, Day Management AG, Barfuesserplatz 6, CH - 4001 Basel
> > T +41 61 226 98 98, F +41 61 226 98 97
> > -----------------------------------------------< http://www.day.com >---
> >
>
>
>
> --
> a+
> Nico
> my blog! http://www.deviant-abstraction.net !!
>
>

Mime
View raw message