public BasedOnInfo(ArchiveSession session)
 {
     id               = session.Id;
     name             = session.Name;
     created          = session.Created;
     archive_filename = session.GetArchiveFilename();
 }
 public ArchiveSessionWriter(ZipFile file, ArchiveSession session)
 {
     _zipFile    = file;
     _id         = session.Id;
     RootName    = _id.ToString();
     JsonCreated = !session.IsSaved;
 }
        public static ArchiveSession Create(Archive archive, string name, ArchiveSession basedOnSession)
        {
            var basedOn = new List <BasedOnInfo>();

            if (basedOnSession != null)
            {
                basedOn.Add(new BasedOnInfo(basedOnSession));
            }

            return(Create(archive, name, basedOn));
        }
 public void AddBasedOnSession(ArchiveSession basedOnSession)
 {
     _basedOn.Add(new BasedOnInfo(basedOnSession));  // TODO check for session duplicates
     Meta["based_on"] = JToken.FromObject(_basedOn); // Refresh metadata
 }