Groogle Sheeet

Groogle Sheet es el DSL que nos permitirá interactuar con nuestras hojas de cálculo alojadas en Drive.

Maven/Gradle

Para añadir las dependencias necesarias a tu proyecto usa las siguientes coordenadas:

pom.xml  
<dependency>
  <groupId>com.puravida-software.groogle</groupId>
  <artifactId>groogle-sheet</artifactId>
  <version>2.0.0</version>
  <type>pom</type>
</dependency>
build.gradle  
compile 'com.puravida-software.groogle:groogle-sheet:3.0.0'

Registro

Para poder usar GroogleSheet en un entorno autentificado debemos registrar el servicio durante el proceso de construcción de groogle:

Register.java  
        groogle = GroogleBuilder.build(groogle -> {
            groogle
                    .withOAuthCredentials(credentials ->
                            credentials
                                    .storeCredentials(true)
                                    .applicationName("test-sheet")
                                    .withScopes(DriveScopes.DRIVE, SheetsScopes.SPREADSHEETS)
                                    .usingCredentials("src/test/resources/client_secret.json")
                    )
                    .service(DriveServiceBuilder.build(), DriveService.class)
                    .service(SheetServiceBuilder.build(), SheetService.class);
        });
        sheetService = groogle.service(SheetService.class);
Register.groovy  
        groogle = GroogleBuilder.build {
            withOAuthCredentials {
                applicationName 'test-sheet'
                withScopes SheetsScopes.SPREADSHEETS
                usingCredentials "src/test/resources/client_secret.json"
            }
            register SheetServiceBuilder.build(), SheetService
        }
En el registro de Groogle sólo puede haber un servicio de cada tipo (clase)

Uso

Una vez que el servicio(s) está registrado podemos acceder al mismo en cualquier parte de nuestro programa a través del objeto groogle obtenido:

sheet = groogle.service(SheetService.class);

Todas las solicitudes al servicio se realizarán usando la configuración definida durante el build