cpoms / arbor-rb Goto Github PK
View Code? Open in Web Editor NEWA Ruby interface to Arbor Education API
License: MIT License
A Ruby interface to Arbor Education API
License: MIT License
The uber-REST nature of the API means that to extract data in bulk is a bit unwieldy. This is why the API developers have a changelog method, so you can see which resources have changed since the revision id at the time you last synced (if that's how you're utilising the API)
This is far more efficient than the "snapshot" technique of pulling out everything and working out what's changed at the client end.
The API supports this by appending /changelog to the usual resource endpoints, and there's a from-revision
query parameter to instruct the API from which revision ID to return changes.
At the moment it just tries to parse the empty response body, ignoring the 401 response code, making it difficult to tell that it is an authentication error.
Should handle different response codes accordingly, before looking at the response body.
lib/arbor/api.rb:28: warning: BigDecimal.new is deprecated; use BigDecimal() method instead.
Replace with load/dump as is the standard naming for such operations in Ruby libraries.
There are certain resources, e.g. uk-dfe_upn-assignments, which don't conform to the convention of dasherized resource names used for all other resources (the underscore), this could cause a problem when we convert from underscore to dasherize & camelcase, etc.
Also need to add this new resource type.
we assumed (fairly) that all records have a href. when they don't, however, the call to href
hits the method_missing, which tries to load the full resource, which calls href .. and the loop begins.
if we add href to attr_accessor it won't hit method missing.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.