This commit is contained in:
Joao Moreno
2018-10-23 16:17:16 -07:00
parent 9a7fdb4ad5
commit 501241e5a9
3 changed files with 37 additions and 42 deletions

View File

@@ -17,23 +17,12 @@ class ApiInputBox implements InputBox {
export class ApiChange implements Change {
get uri(): Uri { return this.resource.resourceUri; }
get originalUri(): Uri { return this.resource.original; }
get renameUri(): Uri | undefined { return this.resource.renameResourceUri; }
get status(): Status { return this.resource.type; }
constructor(private readonly resource: Resource) { }
public get resourceUri(): Uri {
return this.resource.resourceUri;
}
public get status(): Status {
return this.resource.type;
}
public get original(): Uri {
return this.resource.original;
}
public get renameResourceUri(): Uri | undefined {
return this.resource.renameResourceUri;
}
}
export class ApiRepositoryState implements RepositoryState {
@@ -83,14 +72,6 @@ export class ApiRepository implements Repository {
return this._repository.setConfig(key, value);
}
show(ref: string, path: string): Promise<string> {
return this._repository.show(ref, path);
}
getCommit(ref: string): Promise<Commit> {
return this._repository.getCommit(ref);
}
getObjectDetails(treeish: string, path: string): Promise<{ mode: string; object: string; size: number; }> {
return this._repository.getObjectDetails(treeish, path);
}
@@ -103,6 +84,18 @@ export class ApiRepository implements Repository {
return this._repository.buffer(ref, filePath);
}
show(ref: string, path: string): Promise<string> {
return this._repository.show(ref, path);
}
getCommit(ref: string): Promise<Commit> {
return this._repository.getCommit(ref);
}
clean(paths: string[]) {
return this._repository.clean(paths.map(p => Uri.file(p)));
}
diffWithHEAD(path: string): Promise<string> {
return this._repository.diffWithHEAD(path);
}
@@ -174,10 +167,6 @@ export class ApiRepository implements Repository {
pull(): Promise<void> {
return this._repository.pull();
}
clean(filePaths: string[]) {
return this._repository.clean(filePaths.map(p => Uri.file(p)));
}
}
export class ApiGit implements Git {

View File

@@ -78,10 +78,16 @@ export const enum Status {
}
export interface Change {
readonly resourceUri: Uri;
/**
* Returns either `originalUri` or `renameUri`, depending
* on whether this change is a rename change. When
* in doubt always use `uri` over the other two alternatives.
*/
readonly uri: Uri;
readonly originalUri: Uri;
readonly renameUri: Uri | undefined;
readonly status: Status;
readonly original: Uri;
readonly renameResourceUri: Uri | undefined;
}
export interface RepositoryState {
@@ -114,11 +120,13 @@ export interface Repository {
getConfig(key: string): Promise<string>;
setConfig(key: string, value: string): Promise<string>;
show(ref: string, path: string): Promise<string>;
getCommit(ref: string): Promise<Commit>;
getObjectDetails(treeish: string, path: string): Promise<{ mode: string, object: string, size: number }>;
detectObjectType(object: string): Promise<{ mimetype: string, encoding?: string }>;
buffer(ref: string, filePath: string): Promise<Buffer>;
buffer(ref: string, path: string): Promise<Buffer>;
show(ref: string, path: string): Promise<string>;
getCommit(ref: string): Promise<Commit>;
clean(paths: string[]): Promise<void>;
diffWithHEAD(path: string): Promise<string>;
diffWith(ref: string, path: string): Promise<string>;
@@ -144,8 +152,6 @@ export interface Repository {
fetch(remote?: string, ref?: string): Promise<void>;
pull(): Promise<void>;
clean(filePaths: string[]): Promise<void>;
}
export interface API {