Skip to content
This repository has been archived by the owner on Oct 3, 2020. It is now read-only.

Commit

Permalink
working on doc delete
Browse files Browse the repository at this point in the history
  • Loading branch information
fulton committed Feb 21, 2020
1 parent 4494dd4 commit 9eb128b
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 23 deletions.
9 changes: 6 additions & 3 deletions src/main/java/com/andromeda/araserver/Run.kt
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import com.andromeda.araserver.pages.*
import com.andromeda.araserver.pages.RssMain.rssMain1
import com.andromeda.araserver.skills.*
import com.andromeda.araserver.skills.Timer
import com.andromeda.araserver.util.DeleteDoc
import com.andromeda.araserver.util.KeyWord
import com.andromeda.araserver.util.NewDoc
import com.rometools.rome.feed.synd.SyndFeed
Expand Down Expand Up @@ -55,6 +56,8 @@ object Run : NanoHTTPD(Port().main()) {
GetUserSkills().one(sessionUri)
sessionUri.startsWith("/hi") -> main2 =
Hello().hello()
sessionUri.startsWith("/del") -> main2 =
DeleteDoc().main(sessionUri)
sessionUri.startsWith("/yelpclient") -> main2 =
Locdec().main(sessionUri, keyWord, parser)
sessionUri.startsWith("/weath") -> main2 =
Expand Down Expand Up @@ -83,17 +86,17 @@ object Run : NanoHTTPD(Port().main()) {
sessionUri.startsWith("/math") -> main2 =
Equations().main(sessionUri)
sessionUri.startsWith("/call") ->
main2 = keyWord?.let { parser?.let { it1 -> Call().main(sessionUri) } }
main2 = keyWord?.let { parser?.let { Call().main(sessionUri) } }
sessionUri.startsWith("/call") ->
main2 = keyWord?.let { parser?.let { it1 -> Text().main(sessionUri) } }
main2 = keyWord?.let { parser?.let { Text().main(sessionUri) } }
sessionUri.startsWith("/skillsdata/") -> main2 =
GetSkillData().main(sessionUri)
sessionUri.startsWith("/update") -> main2 =
Update().update(sessionUri)
sessionUri.startsWith("/class") -> main2 =
GetDeviceClass().main(sessionUri)
sessionUri.startsWith("/person") -> main2 =
com.andromeda.araserver.persona.Main().main(sessionUri, this!!.keyWord!!, parser)
com.andromeda.araserver.persona.Main().main(sessionUri, this.keyWord!!, parser)
sessionUri.startsWith("/time") -> main2 =
parser?.let { keyWord?.let { it1 -> Timer().main(sessionUri, it1, it) } }
sessionUri.startsWith("/store") -> {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ class GetUserSkills {
i.startsWith("id=") -> id = i.replace("id=", "")
i.startsWith("user=") -> key = i.replace("user=", "")
}
val client = DocumentClient("https://ara-account-data.documents.azure.com:443/", dbLink, ConnectionPolicy(), ConsistencyLevel.Session)
val client = client
return Gson().toJson(ReadDB().userSkill(client, key!!, id!!))
}
}
40 changes: 21 additions & 19 deletions src/main/java/com/andromeda/araserver/util/DeleteDoc.kt
Original file line number Diff line number Diff line change
@@ -1,33 +1,35 @@
package com.andromeda.araserver.util

import com.google.gson.Gson
import com.microsoft.azure.cosmosdb.*
import com.microsoft.azure.cosmosdb.rx.AsyncDocumentClient
import com.microsoft.azure.documentdb.DocumentClient
import com.microsoft.azure.documentdb.FeedOptions
import com.microsoft.azure.documentdb.FeedResponse
import com.microsoft.azure.documentdb.PartitionKey
import com.microsoft.azure.documentdb.RequestOptions
import org.json.JSONObject
import rx.Observable
import com.microsoft.azure.cosmosdb.ConnectionPolicy
import com.microsoft.azure.documentdb.*

class DeleteDoc {
val policy = ConnectionPolicy();

fun main(){

fun main(url:String): String {
val mainVal = url.replace("/del/", "")
val actions = mainVal.split("&")
var id:String? = null
var key:String? = null
for (i in actions) when {
i.startsWith("id=") -> id = i.replace("id=", "")
i.startsWith("user=") -> key = i.replace("user=", "")
}
delDoc(CosmosClients.client, key!!, id!!)
return ""
}
fun delDoc(client: DocumentClient, key: String, id:String){
private fun delDoc(client: DocumentClient, key: String, id:String): String {
val options = FeedOptions()
options.enableCrossPartitionQuery = true
val queryResults: FeedResponse<com.microsoft.azure.documentdb.Document> = client.queryDocuments("/dbs/Ara-android-database/colls/Ara-android-collection", "SELECT * FROM c", options)
queryResults.queryIterable.forEach {
queryResults.queryIterator.forEach {
if (it.id == id){
val ro = RequestOptions()
println(it.resourceId)
println(it.selfLink)
ro.partitionKey = PartitionKey("user-$key")

client.deleteDocument(it.selfLink, ro)
client.deleteDocument("dbs/Ara-android-database/colls/Ara-android-collection/${it.resourceId}", ro)
}
}


return ""
}
}

0 comments on commit 9eb128b

Please sign in to comment.