Ahmed Popović Benjamin Ramić Tviter Projekat

Dependencies:   ESP8266 mbed

Fork of TwitterProjekat by Ahmed Popović

Committer:
2016US_BenjaminRamic
Date:
Thu May 26 19:18:22 2016 +0000
Revision:
2:907b2a247aaa
Parent:
1:51391e2303d7
Ahmed Popovi?; Benjamin Rami?; Projekat US

Who changed what in which revision?

UserRevisionLine numberNew contents of line
2016US_BenjaminRamic 1:51391e2303d7 1 class Twitter
2016US_BenjaminRamic 1:51391e2303d7 2 {
2016US_BenjaminRamic 1:51391e2303d7 3 private:
2016US_BenjaminRamic 1:51391e2303d7 4 char *poruka;
2016US_BenjaminRamic 1:51391e2303d7 5 int duzina;
2016US_BenjaminRamic 1:51391e2303d7 6 int duzinaPoruke;
2016US_BenjaminRamic 1:51391e2303d7 7 Serial *pc;
2016US_BenjaminRamic 1:51391e2303d7 8 public:
2016US_BenjaminRamic 1:51391e2303d7 9 Twitter(Serial *pc)
2016US_BenjaminRamic 1:51391e2303d7 10 {
2016US_BenjaminRamic 1:51391e2303d7 11 duzina = 140;
2016US_BenjaminRamic 1:51391e2303d7 12 poruka = new char[duzina];
2016US_BenjaminRamic 1:51391e2303d7 13 duzinaPoruke = 0;
2016US_BenjaminRamic 1:51391e2303d7 14 this->pc = pc;
2016US_BenjaminRamic 1:51391e2303d7 15 }
2016US_BenjaminRamic 1:51391e2303d7 16
2016US_BenjaminRamic 1:51391e2303d7 17 ~Twitter()
2016US_BenjaminRamic 1:51391e2303d7 18 {
2016US_BenjaminRamic 1:51391e2303d7 19 delete[] poruka;
2016US_BenjaminRamic 1:51391e2303d7 20 }
2016US_BenjaminRamic 1:51391e2303d7 21 void unesiPoruku()
2016US_BenjaminRamic 1:51391e2303d7 22 {
2016US_BenjaminRamic 1:51391e2303d7 23 int i = 0;
2016US_BenjaminRamic 1:51391e2303d7 24 duzinaPoruke = 0;
2016US_BenjaminRamic 1:51391e2303d7 25 while(i < duzina)
2016US_BenjaminRamic 1:51391e2303d7 26 {
2016US_BenjaminRamic 1:51391e2303d7 27 char c;
2016US_BenjaminRamic 1:51391e2303d7 28 pc->scanf("%c", &c);
2016US_BenjaminRamic 2:907b2a247aaa 29 if(c == '\n' || c == '\r')
2016US_BenjaminRamic 1:51391e2303d7 30 {
2016US_BenjaminRamic 2:907b2a247aaa 31 poruka[i] = '\0';
2016US_BenjaminRamic 1:51391e2303d7 32 break;
2016US_BenjaminRamic 1:51391e2303d7 33 }
2016US_BenjaminRamic 1:51391e2303d7 34
2016US_BenjaminRamic 1:51391e2303d7 35 poruka[i] = c;
2016US_BenjaminRamic 1:51391e2303d7 36 i++;
2016US_BenjaminRamic 1:51391e2303d7 37 duzinaPoruke++;
2016US_BenjaminRamic 1:51391e2303d7 38 }
2016US_BenjaminRamic 1:51391e2303d7 39 }
2016US_BenjaminRamic 1:51391e2303d7 40 char *dajPoruku()
2016US_BenjaminRamic 1:51391e2303d7 41 {
2016US_BenjaminRamic 1:51391e2303d7 42 return poruka;
2016US_BenjaminRamic 1:51391e2303d7 43 }
2016US_BenjaminRamic 1:51391e2303d7 44 int dajBrojBajta()
2016US_BenjaminRamic 1:51391e2303d7 45 {
2016US_BenjaminRamic 1:51391e2303d7 46 return duzinaPoruke;
2016US_BenjaminRamic 1:51391e2303d7 47 }
2016US_BenjaminRamic 1:51391e2303d7 48
2016US_BenjaminRamic 1:51391e2303d7 49 string urlEncode(string str)
2016US_BenjaminRamic 1:51391e2303d7 50 {
2016US_BenjaminRamic 1:51391e2303d7 51 string new_str = "";
2016US_BenjaminRamic 1:51391e2303d7 52 char c;
2016US_BenjaminRamic 1:51391e2303d7 53 int ic;
2016US_BenjaminRamic 1:51391e2303d7 54 const char* chars = str.c_str();
2016US_BenjaminRamic 1:51391e2303d7 55 char bufHex[10];
2016US_BenjaminRamic 1:51391e2303d7 56 int len = strlen(chars);
2016US_BenjaminRamic 1:51391e2303d7 57
2016US_BenjaminRamic 1:51391e2303d7 58 for(int i=0;i<len;i++){
2016US_BenjaminRamic 1:51391e2303d7 59 c = chars[i];
2016US_BenjaminRamic 1:51391e2303d7 60 ic = c;
2016US_BenjaminRamic 1:51391e2303d7 61 // uncomment this if you want to encode spaces with +
2016US_BenjaminRamic 1:51391e2303d7 62 /*if (c==' ') new_str += '+';
2016US_BenjaminRamic 1:51391e2303d7 63 else */if (isalnum(c) || c == '-' || c == '_' || c == '.' || c == '~') new_str += c;
2016US_BenjaminRamic 1:51391e2303d7 64 else {
2016US_BenjaminRamic 1:51391e2303d7 65 sprintf(bufHex,"%X",c);
2016US_BenjaminRamic 1:51391e2303d7 66 if(ic < 16)
2016US_BenjaminRamic 1:51391e2303d7 67 new_str += "%0";
2016US_BenjaminRamic 1:51391e2303d7 68 else
2016US_BenjaminRamic 1:51391e2303d7 69 new_str += "%";
2016US_BenjaminRamic 1:51391e2303d7 70 new_str += bufHex;
2016US_BenjaminRamic 1:51391e2303d7 71 }
2016US_BenjaminRamic 1:51391e2303d7 72 }
2016US_BenjaminRamic 1:51391e2303d7 73 return new_str;
2016US_BenjaminRamic 1:51391e2303d7 74 }
2016US_BenjaminRamic 1:51391e2303d7 75
2016US_BenjaminRamic 1:51391e2303d7 76 bool isalnum(char c)
2016US_BenjaminRamic 1:51391e2303d7 77 {
2016US_BenjaminRamic 1:51391e2303d7 78 return ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || (c >= '0' && c <= '9'));
2016US_BenjaminRamic 1:51391e2303d7 79 }
2016US_BenjaminRamic 1:51391e2303d7 80 };