Simple tool for generating google APIs from discovery json.

This commit is contained in:
Bill Thiede 2020-02-03 17:57:07 -08:00
commit 5b1e5c2dac
5 changed files with 3455 additions and 0 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
/target

1811
Cargo.lock generated Normal file

File diff suppressed because it is too large Load Diff

14
Cargo.toml Normal file
View File

@ -0,0 +1,14 @@
[package]
name = "google-api-generator"
version = "0.1.0"
authors = ["Bill Thiede <git@xinu.tv>"]
edition = "2018"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
# TODO add 'rev' to pin it.
google_rest_api_generator = { git = "https://github.com/google-apis-rs/generator" }
discovery_parser = { git = "https://github.com/google-apis-rs/generator" }
serde = "1.0"
serde_json = "1.0"

1608
photoslibrary.json Normal file

File diff suppressed because it is too large Load Diff

21
src/main.rs Normal file
View File

@ -0,0 +1,21 @@
use std::error::Error;
use std::fs::File;
use std::io::Read;
use discovery_parser::DiscoveryRestDesc;
use google_rest_api_generator::generate;
fn main() -> Result<(), Box<dyn Error>> {
let args: Vec<_> = std::env::args().skip(1).collect();
if args.len() != 2 {
eprintln!("Usage: main discovery.json output_directory");
}
let mut file = File::open(&args[0])?;
let mut contents = String::new();
file.read_to_string(&mut contents)?;
let disc: DiscoveryRestDesc = serde_json::from_str(&contents)?;
generate(&args[1], &disc)?;
Ok(())
}