<prompt> Tengeneza seva ya wavuti ya Golang inayowasiliana na hifadhidata ya Cassandra ili kudhibiti mkusanyiko wa madokezo. Seva inapaswa kutumia ncha za kuunda, kusasisha, kufuta, na kurejesha madokezo kulingana na vitambulisho vyao vya kipekee.PLINFORMAT  <response>: kifurushi kikuukuagiza usimbajijsonfmtgithub.comgocqlgocqlloginethttpkambaaina ya muundo wa noti Kitambulisho gocql.UUID json:idMfuatano wa kichwa json:kichwaMfuatano wa maudhui json:maudhuichapa muundo wa ApiResponse Hali int json:haliMfuatano wa ujumbe json:ujumbeKiolesura cha data json:data,emptyvar kikao gocql.Sessionfunc main kosa kosanguzo : gocql.NewCluster127.0.0.1cluster.Keyspace notes_keyspacekipindi, makosa cluster.CreateSessionikiwa makosa ! nil log.Fatalhitilafukuahirisha kipindi.Fungahttp.HandleFuncapinotes, notesHandlerhttp.HandleFuncapinote, noteHandlerlog.PrintlnSeva inayoendesha bandari 8080log.Fatalhttp.ListenAndServe:8080, nilfunc notesHandlerw http.ResponseWriter, r http.Ombi badilisha r.Njia kesi GET:getAllNotesw, rkesi POST:createNotew, rchaguo-msingi:sendResponsew, http.StatusMethodNotAllowed, njia batilifunc noteHandlerw http.ResponseWriter, r http.Ombi idStr : strings.TrimPrefixr.URL.Path, apinoteid, makosa : gocql.ParseUUIDidStrikiwa makosa ! nil sendResponsew, http.StatusBadRequest, ID batilikurudibadilisha r.Njia kesi GET:getNoteByIDw, idkesi PUT:updateNotew, r, idkesi FUTA:deleteNotew, idchaguo-msingi:sendResponsew, http.StatusMethodNotAllowed, njia batilifunc getAllNotesw http.ResponseWriter, _ http.Ombi iter : session.QueryCHAGUA kitambulisho, kichwa, maudhui KUTOKA kwa vidokezo.Itervar notes Kumbukavar notekwa iter.Scannote.ID, note.Title, note.Content noti ongeza maelezo, notiikikosea : iter.Close; makosa ! nil sendResponsew, http.StatusInternalServerError, Hitilafu katika kuleta data kutoka kwa hifadhidatakurudisendResponsew, http.StatusOK, Success, notesfunc getNoteByIDw http.ResponseWriter, id gocql.UUID var noteerr : session.QueryCHAGUA kitambulisho, kichwa, maudhui KUTOKA madokezo WHERE id?, id.Changanuanote.ID, note.Title, note.Contentikikosea gocql.ErrNotFound sendResponsew, http.StatusNotFound, Dokezo halijapatikanakurudi vinginevyo ikiwa makosa ! nil sendResponsew, http.StatusInternalServerError, Hitilafu katika kuleta data kutoka kwa hifadhidatakurudisendResponsew, http.StatusOK, Success, notefunc createNotew http.ResponseWriter, r http.Ombi var notekosa : json.NewDecoderr.Body.Simbuanoteikiwa makosa ! nil sendResponsew, http.StatusBadRequest, Upakiaji batili wa ombikurudinote.ID gocql.TimeUUIDerr session.HojaWEKA NDANI ya madokezo kitambulisho, kichwa, maudhui THAMANI ?, ?, ?, note.ID, note.Title, note.Content.Tekelezaikiwa makosa ! nil sendResponsew, http.StatusInternalServerError, Hitilafu katika kuingiza data kwenye hifadhidatakurudisendResponsew, http.StatusCreated, Dokezo limeundwa, kumbukafunc updateNotew http.ResponseWriter, r http.Request, id gocql.UUID var notekosa : json.NewDecoderr.Body.Simbuanoteikiwa makosa ! nil sendResponsew, http.StatusBadRequest, Upakiaji batili wa ombikurudierr session.HojaSASISHA madokezo WEKA kichwa?, content? WHERE id?, note.Title, note.Content, id.Execikiwa makosa ! nil sendResponsew, http.StatusInternalServerError, Hitilafu ya kusasisha data katika hifadhidatakurudisendResponsew, http.StatusOK, Dokezo limesasishwafunc deleteNotew http.ResponseWriter, id gocql.UUID err : session.QueryFUTA KUTOKA MADOKEZO WAPI id?, id.Tekelezaikiwa makosa ! nil sendResponsew, http.StatusInternalServerError, Hitilafu katika kufuta data kutoka kwa hifadhidatakurudisendResponsew, http.StatusOK, Dokezo limefutwafunc sendResponsew http.ResponseWriter, status int, mfuatano wa ujumbe, data ...interface w.Header.WekaAina ya Maudhui, programujsonw.AndikaKichwahalimajibu : ApiResponseHali: hali,Ujumbe: ujumbe,ikiwa lendata 0 majibu.Data data0json.NewEncoderw.Simbuajibu 