001package org.vishia.guiBzr; 002 003import java.io.File; 004import java.util.List; 005import java.util.Map; 006import java.util.TreeMap; 007 008/**This class contains all data from the Source-Archive of one component. 009 * @author Hartmut Schorrig 010 * 011 */ 012public class DataCmpn 013{ 014 015 static class Revision{ 016 /**The version number String. */ 017 String nr; 018 019 /**The timestamp of the version. */ 020 long date; 021 } 022 023 /**Name of the component. It is the directory name of the directory 024 * where the archive is contained in. */ 025 final String sNameCmpn; 026 027 /**Directory where the .bzr of the working tree is contained. */ 028 final File dirWorkingtree; 029 030 /**Directory where the .bzr of the archive (without working tree) is contained. */ 031 final File dirArchive; 032 033 /**Directory where the .bzr of any remote .bzr is contained. */ 034 final File dirRemoteArchive; 035 036 /**The version number form the last commit or revert in this sandbox 037 * and the top version number in the branch. If the branch was updated in another Sandbox, 038 * it may have a higher number. If the sandbox isn't actual, it may be a older number. 039 * <ul> 040 * <li>The sandbox version is stored either in the file _BzrVersion.txt, which is the output 041 * from a invocation "bzr log -l 1" after last commit or revert. 042 * <li>Or the sandbox version is stored in the bzr data file of the project. 043 * </ul> 044 */ 045 final Revision revisionSbox = new Revision(), revisionWorkingTreeTop = new Revision(), revisionArchive = new Revision(), revisionRemoteArchive = new Revision(); 046 047 /**Output of bzr status invocation of the working box. */ 048 StringBuilder uBzrStatusOutput = new StringBuilder(); 049 /**Output of bzr log -l 1 to get the last version number. */ 050 StringBuilder uBzrLastVersion = new StringBuilder(); 051 /**General error output of all commands. */ 052 StringBuilder uBzrError = new StringBuilder(); 053 054 List<DataFile> listModifiedFiles; 055 056 List<DataFile> listRemovedFiles; 057 058 List<DataFile> listNewFiles; 059 060 List<DataFile> listAddFiles; 061 062 List<DataFile> listRenamedFiles; 063 064 final Map<String, DataFile> indexFiles = new TreeMap<String, DataFile>(); 065 066 public File getBzrLocationDir(){ return dirWorkingtree; } 067 068 069 DataCmpn(File dirComponent, File dirArchive, File dirRemoteArchive) 070 { 071 this.dirWorkingtree = dirComponent; 072 this.dirArchive = dirArchive; 073 this.dirRemoteArchive = dirRemoteArchive; 074 this.sNameCmpn = dirComponent.getName(); 075 076 } 077 078}