Professional Documents
Culture Documents
Report
Report
Punuar nga:
Drilon Avdiu
Leutrim Musliu
Shqiprim Bunjaku
1
Prmbajtja
b. JavaGroups [1]
API-ja e JavaGroups sht e thjesht (e ngjashme me UDP-n te
socketat) gjithmon e njejt pa marr parasysh se n cfar
rrethanash prdoret. Pr t qen n gjendje t
drgohen/pranohen mesazhe, nj channel duhet t krijohet,
protocol stack-u specifikohet me nj string. N vijim jepim nj
shembull t krijimit t nj kanali q drgon/pranon mesazhe:
String props="UDP:PING:FD:STABLE:NAKACK:UNICAST:" +
"FRAG:FLUSH:GMS:VIE_ENFORCER:STATE_TRA
NSFER:QUEUE";
Message send_msg, recv_msg;
Channel channel=new JChannel(props);
channel.Connect("MyGroup");
send_msg=ne Message(null, null, "Hello orld");
channel.Send(send_msg);
recv_msg=(Message)channel.Receive(0);
System.out.println("Received " + recv_msg);
channel.Disconnect();
channel.Close();
c. VideoConference [1]
Prshkrim
JavaGroupsVC sht nj open source program i dizajnuar pr t
ofruar nj multi-platform pr video-conference.
Forma baz e projektit mbshtet tre kanale t komunikimit t t
dhenave (channel data) pr operacionet e veta: nj video channel
pr video broadcast, nj audio channel pr audio broadcast dhe
nj text channel pr text broadcast. Secili antar q futet n nj
grup mund t ndaj video, audio apo text me anetart e tjer t
grupit. Para se t hyhet n grup, secili antar pyetet pr emr dhe
ikon q e reprezentojn at. Antareve u lejohet t hyjn n
grup, apo t dalin nga ai, sa her q deshirojn ata. Megjithat,
nj antar nuk mund t jet n 2 grupe njkohsisht.
Dizajni
JavaGroupsVC sht e ndar n komponent individual q kryejn
funksione t caktuara. JavaGroupsVC ka 2 lloje t manager, lloji i
par sht Channel Manager q ndrtohet nga AudioManager,
VideoManager, dhe TextManager, ndrsa lloji i dyt sht Data
4
Arkitektura
JavaGroupsVC eshte e ndrtuar nga nj arkitektur e shtresuar. 3
shtresat kryesore jan: GUI layer, Control layer, dhe Data Layer.
src/VideoConference/Media/Capture/FileReaderThread.java
+2-0
src/JavaGroupsVC.java
+9-18
src/VideoConference/DataManager/FileManager.java
+124-0
src/VideoConference/GUI/AcceptedFilesFrame.java
+27-3
src/VideoConference/GUI/GUIManager.java
+0-7
src/VideoConference/Media/Capture/FileReaderThread.java
3. Si funksionon programi?
Programi prdor JavaGroups si platform komunikimi. Komunikimi
ndodh prmes kanaleve q ndrtohen nga nje ChannelFactory.
ChannelFactory mundson fleksibilitet n krijimin e kanaleve t
komunikimit duke mundsuar specifikim fleksibil te protokollit t
komunikimit.
Prgjat programit krijohen nj mori e kanaleve te komunikimit me
vetin e lartprmendur, ndr me t rndsishmit jan kanali pr
transmetim te tekstit, kanali pr transmetim te file-ave dhe kanali pr
transmetim t informatave mbi pjestart n chat.
Veti specfike default e do kanali sht transmetimi broadcast.
Komunikimi sht i organizuar n grupe. Secili prdorues i programit
mund t krijoj nj grup. Me rastin e krijimit t nj grupi q ndodh pas
promptimit nga GUI komponentja, n t njjtn komponent thirret
metoda connectToGroup e cila ndr t tjerash krijon kanalin e
komunikimit me protokollin prkats. Element tjetr i rndsishm q
krijohet brenda asaj metode sht dhe PullPushAdapter i cili merr si
parametr kanalin e komunikimit dhe vetveten n 2 raste, sepse
manager-i prkats sht edhe MessageListener edhe
MembershipListener. PullPushAdapter thirr metodn receieve t
listenerit prderisa listener!=null. Brenda metods receive bhet
degzimi prkats varsisht nga hapat q duhet ndjekur pas pranimit t
paketave prkatse q nuk jan t t njjtit lloj, pr kt ekziston edhe
degzimi. Drgimi i paketave n rastin e drgimit t file-ave ndodh nga
nj thread i veant q definohet me klasn FileThreadReader.
10
5. Referencat
[1] http://www.cs.cornell.edu/info/projects/javagroupsnew/
11