Services/Sync/WEP/116: Difference between revisions

Jump to navigation Jump to search
no edit summary
No edit summary
No edit summary
Line 18: Line 18:


<br>  
<br>  
Things that use Resource:<br>


{| cellspacing="1" cellpadding="1" border="1"
{| cellspacing="1" cellpadding="1" border="1"
Line 23: Line 25:
! scope="col" | API Method<br>  
! scope="col" | API Method<br>  
! scope="col" | Risk<br>  
! scope="col" | Risk<br>  
! scope="col" | Explanation<br>
! scope="col" | Used where (big picture)<br>  
|-
! scope="col" | Comment<br>
| Resource.*<br>  
| high<br>
| Used all over the place, causes many of the following to be async.<br>
|-
|-
|  
|  
Line 35: Line 34:


| low<br>  
| low<br>  
| Uses Resource.get(). Only used in SyncEngine.sync() and Service.sync() which need to be made async anyway.<br>
| SyncEngine.sync(), Service.sync()<br>
| <br>
|-
| PubKeys.uploadKeypair()  
| low
| Service.sync()  
| <br>
|-
|-
| PubKeys.uploadKeypair()
| SyncEngine.sync()  
| low
| low  
| Uses Resource.put(). Only used in Service._remoteSetup() which needs to be made async anyway.
| Service.sync()<br>
| <br>
|-
|-
| SyncEngine.sync()
| SyncEngine.wipeServer()  
| low
| low  
| Only used from
| SyncEngine.sync(), Service.sync()
| <br>
|-
|-
| SyncEngine.wipeServer()
| Service.login()<br>
| low
| high<br>
| Only used from SyncEngine.sync() and  
| UI, returns true/false<br>
| May change semantics of login() if we get rid of "connect"/"disconnect"<br>
|-
| Service.verifyLogin()<br>
| high<br>
| UI, returns true/false<br>
| <br>
|-
| Service.changePassword()<br>
| medium<br>
| UI (generic change dialog), returns true/false<br>
| Only called in one place, easily changed<br>
|-
| Service.checkAccount()<br>
| medium<br>
| UI (wizard), returns true/false<br>
| Only called in two places, easily changed<br>
|-
| Service._doHeartbeat()<br>
| low<br>
| Service._scheduleHeartbeat(), Service._scheduleNextSync()<br>
| Triggered by observer notifications and timers, always run async anyway<br>
|-
| Service.sync()<br>
| low<br>
| UI code and timers<br>
| Always run async anyway (at least it should be!)<br>
|-
|
|
|
|
|}
|}


Line 53: Line 91:


<br>  
<br>  
 
<br>
Records.get() (may call Records.import() which calls Resource.get())<br>  
Service.wipeServer(), Service.wipeRemote()  
 
PubKeys.uploadKeypair()<br>
 
SyncEngine.sync() (defers to ~three methods internally which do all the work)<br>
 
SyncEngine.wipeServer()<br>
 
Service.login()<br>
 
Service.verifyLogin()<br>
 
Service.changePassword()<br>
 
Service.checkUsername() / checkAccount()<br>
 
Service.createAccount()<br>
 
Service._scheduleNextSync()<br>
 
Service.sync (and various methods that it defers to internally)<br>
 
Service.wipeServer(), Service.wipeRemote()


Service.getCollectionUsage, Service.getQuota<br>  
Service.getCollectionUsage, Service.getQuota<br>  
canmove, Confirmed users
725

edits

Navigation menu