This repository has been archived by the owner on Feb 7, 2023. It is now read-only.
forked from ankitects/anki
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add AnkiDroid service and AnkiDroid customizations
Most of the work here was done by David in the Backend repo; I've just moved it into an rslib patch so it can take advantage of the existing backend infrastructure.
- Loading branch information
Showing
17 changed files
with
867 additions
and
8 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,71 @@ | ||
syntax = "proto3"; | ||
|
||
option java_multiple_files = true; | ||
|
||
import "anki/generic.proto"; | ||
import "anki/scheduler.proto"; | ||
|
||
package anki.ankidroid; | ||
|
||
service AnkidroidService { | ||
rpc SchedTimingTodayLegacy (SchedTimingTodayLegacyRequest) returns (scheduler.SchedTimingTodayResponse); | ||
rpc LocalMinutesWestLegacy (generic.Int64) returns (generic.Int32); | ||
rpc RunDbCommand(generic.Json) returns (generic.Json); | ||
rpc RunDbCommandProto(generic.Json) returns (DBResponse); | ||
rpc InsertForId(generic.Json) returns (generic.Int64); | ||
rpc RunDbCommandForRowCount(generic.Json) returns (generic.Int64); | ||
rpc FlushAllQueries(generic.Empty) returns (generic.Empty); | ||
rpc FlushQuery(generic.Int32) returns (generic.Empty); | ||
rpc GetNextResultPage(GetNextResultPageRequest) returns (DBResponse); | ||
rpc SetPageSize(generic.Int64) returns (generic.Empty); | ||
rpc GetColumnNamesFromQuery(generic.String) returns (generic.StringList); | ||
rpc GetActiveSequenceNumbers(generic.Empty) returns (GetActiveSequenceNumbersResponse); | ||
rpc DebugProduceError(generic.String) returns (generic.Empty); | ||
} | ||
|
||
message DebugActiveDatabaseSequenceNumbersResponse { | ||
repeated int32 sequence_numbers = 1; | ||
} | ||
|
||
message SchedTimingTodayLegacyRequest { | ||
int64 created_secs = 1; | ||
optional sint32 created_mins_west = 2; | ||
int64 now_secs = 3; | ||
sint32 now_mins_west = 4; | ||
sint32 rollover_hour = 5; | ||
} | ||
|
||
// We expect in Java: Null, String, Short, Int, Long, Float, Double, Boolean, Blob (unused) | ||
// We get: DbResult (Null, String, i64, f64, Vec<u8>), which matches SQLite documentation | ||
message SqlValue { | ||
oneof Data { | ||
string stringValue = 1; | ||
int64 longValue = 2; | ||
double doubleValue = 3; | ||
bytes blobValue = 4; | ||
} | ||
} | ||
|
||
message Row { | ||
repeated SqlValue fields = 1; | ||
} | ||
|
||
message DbResult { | ||
repeated Row rows = 1; | ||
} | ||
|
||
message DBResponse { | ||
DbResult result = 1; | ||
int32 sequenceNumber = 2; | ||
int32 rowCount = 3; | ||
int64 startIndex = 4; | ||
} | ||
|
||
message GetNextResultPageRequest { | ||
int32 sequence = 1; | ||
int64 index = 2; | ||
} | ||
|
||
message GetActiveSequenceNumbersResponse { | ||
repeated int32 numbers = 1; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,4 @@ | ||
Cargo.lock | ||
.build | ||
.idea/ | ||
target |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.