<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <tt>Sziasztok!<br>
      <br>
         A következőre gondolok:<br>
    </tt>
    <ul>
      <li><tt>Alap feladat:</tt></li>
      <ul>
        <li><tt>Egy BlackBoard, amire mindenki szabadon helyezhet el
            üzeneteket</tt></li>
        <ul>
          <li><tt>Minden üzenetnek van Id-ja, és tartalma (int, String)</tt></li>
          <li><tt>Az üzeneteket az id-juk alapján lehet kérni</tt></li>
          <li><tt>Az üzenet ID-ját a kliens határozza meg, létező ID
              újraelhelyezése hibajelzést ad (szabadon eldönthető, hogy
              milyet)<br>
            </tt></li>
        </ul>
        <li><tt>Egy üzenetet lehet olvasni (read)</tt></li>
        <ul>
          <li><tt>Ha nincs a kért ID-jú üzenet, a visszatérési érték
              null<br>
            </tt></li>
        </ul>
        <li><tt>Egy üzenetet lehet elhelyezni (write)</tt></li>
        <li><tt>Egy üzenetet le lehet venni a BlackBoard-ról (take)</tt></li>
        <ul>
          <li><tt>Ha nincs a kért ID-jú üzenet, a visszatérési érték
              null<br>
            </tt></li>
        </ul>
        <li><tt>Oldja meg a helyes szinkronizációt, és készítse fel a
            rendszert több kliensre</tt></li>
      </ul>
      <li><tt>Hármasért:</tt></li>
      <ul>
        <li><tt>Írj Logger-t a BlackBoard-hoz</tt></li>
        <li><tt>Ha az előzőt RMI-vel írtad, ezt Socket-ekkel készítsd,
            és fordítva</tt></li>
        <li><tt>A Logger magától kéri el a BlackBoard aktuális
            állapotát, és ennek gyakorisága parancssori paraméter</tt></li>
        <li><tt>Ha a Logger csak egy paramétert kap, akkor a konzolra
            ír, ha 2-t, akkor a második paraméterként kapott file-ba</tt></li>
        <li><tt>A Loggernek a konzolról lehet parancsot küldeni</tt></li>
        <ul>
          <li><tt>"force" -- azonnali üzenet lekérés</tt></li>
          <li><tt>"exit" -- kilép</tt></li>
        </ul>
        <li>Több Logger is futhasson egy időben</li>
      </ul>
      <li>+1 jegy:</li>
      <ul>
        <li> Ha valaki olyan ID-val kér üzenetet, ami nincs, akkor addig
          várakozzon a kérése, amíg ilyen ID-jú üzenet nem érkezik a
          BlackBoard-ra</li>
      </ul>
      <li>+1 jegy:</li>
      <ul>
        <li>Mirror készítése</li>
        <li>Akárhány Mirror lehet egy BlackBoard-hoz</li>
        <li>A Mirror magától regisztrál a BlackBoard-ra</li>
        <li>A Mirrorok kezdeti állapotát a BlackBoard beállítja</li>
        <li>A Mirrorok állapotát a BlackBoard tartja karban</li>
      </ul>
    </ul>
    <p>Szerintem ez így kerek, és megfelelően nehezedő feladat. Nem lesz
      sok ötös, de ha valaki 2-est, 3-ast szeretne, az viszonylag
      könnyen megkapja. Szerintetek?<br>
    </p>
    <p>Balu<br>
    </p>
    <br>
    <br>
    <br>
    2012.05.15. 10:19 keltezéssel, Richard O. Legendi írta:
    <blockquote cite="mid:4FB21195.3020200@elte.hu" type="cite">
      <meta content="text/html; charset=ISO-8859-1"
        http-equiv="Content-Type">
      Örülnék is neki!<br>
      Ricsi<br>
      <pre class="moz-signature" cols="72">Richard O. Legendi
PhD Student
Eötvös Loránd University, Faculty of Informatics
Department of Programming Languages and Compilers
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://people.inf.elte.hu/legendi/">http://people.inf.elte.hu/legendi/</a>
</pre>
      <br>
      On 2012.05.15. 9:37, Zaicsek Balázs wrote:
      <blockquote cite="mid:4FB207B3.6050803@pnyf.inf.elte.hu"
        type="cite">
        <meta content="text/html; charset=ISO-8859-1"
          http-equiv="Content-Type">
        Hi!<br>
        <br>
           Alapvetően jó, csak nekem egy kicsit bonyolult, ha
        belerakhatok pár javaslatot, szólj!<br>
        <br>
        Balu<br>
        <br>
        2012.05.14. 13:23 keltezéssel, Richard O. Legendi írta:
        <blockquote cite="mid:4FB0EB2D.1080102@elte.hu" type="cite">
          <meta http-equiv="content-type" content="text/html;
            charset=ISO-8859-1">
          Sziasztok!<br>
          <br>
          Múltkor Balu említette hogy szívesen írna ki feladatot, én
          örülnék neki.<br>
          <br>
          Ötletem nekem is lenne, csak nem biztos, hogy le tudom
          kerekíteni: valami minimális Linda rendszert lehetne íratni
          velük, az nem túl bonyolult.<br>
          <br>
          Legyen egy központ (space/blackboard), ahová kliensek tudnak<i>
            write()</i>-olni, <i>read()</i>-elni, meg <i>take()</i>-elni

          feladatokat (mint pl. a JavaSpaces-ben, ha ismeritek).
          Konkrétan <i>(ID, String)</i> típusú üzenetekre gondoltam.
          Lehetne <i>ID</i> alapján szűrni az üzenetekre, esetleg <i>*</i>-ozni,
          hogy azt az üzenetet bárki olvashatja, elveheti, etc. A
          kommunikációt megoldhatnák RMI-vel vagy sockettel, amelyik
          jobban tetszik vagy megy nekik. Kettesért ennek kéne mennie
          (pl. 2 konzolos klienssel, a blackboard tartalmát kéne még
          tudni listázni, hogy ellenőrizni tudjuk a működést).<br>
          <br>
          További feladatok tetszés szerinti sorrendben megoldhatók
          (több is van, ha valamelyik problémás esetleg).<br>
          <br>
          +1 jegy Felkészítés N db kliensre, megfelelő
          szinkronizációval. Legyen egy író, meg egy olvasó kliens, ami
          x időnként pakolászik meg olvas.<br>
          <br>
          +1 jegyért Checkpointing: lehessen kérni backupot JDBC-vel az
          aktuális tartalommal, valamint annak visszaállítását is (az
          aktuális tartalom eldobásával pl.).<br>
          <br>
          +1 jegyért legyenek tesztek (inicializált blackboardon nincs
          üzenet, ha rárakunk egyet, akkor az ott van, ha valaki csak
          olvassa, akkor még mindig ott van, ha a címzett leveszi, akkor
          meg megint nincs ott, etc.).<br>
          <br>
          +1 jegyért üzenetek naplózása: legyen valami logger worker,
          ami minden üzenetet sasol, és logol fájlba (minden felkerülő
          üzenet először a loggernek visz fel a rendszer, majd az
          leveszi, feldolgozza, és visszaírja a feladatot a blakcboardra
          az eredeti címzettnek).<br>
          <br>
          Vélemény? Túl egyszerű, túl bonyolult? Esetleg van már másnak
          konkrét feladatkiírása? :-)<br>
          <br>
          Igyekeztem figyelembe venni, hogy csak Java referencia lesz
          (elvileg, legalábbis nekem ez rémlik), illetve nem árt majd
          gondolom némi segédszöveg a JUnithoz (nem mindenki IDE-zik
          tippre), valamint a Jarokra is szükség van - btw én Derby-ztem
          a srácokkal, mert az alapból van a JDK-ban, kivéve talán az
          1.6u26-ot, amiből véletlen kihagyták :-)<br>
          <br>
          Comments are welcome,<br>
          Ricsi<br>
          <pre class="moz-signature" cols="72">-- 
Richard O. Legendi
PhD Student
Eötvös Loránd University, Faculty of Informatics
Department of Programming Languages and Compilers
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://people.inf.elte.hu/legendi/">http://people.inf.elte.hu/legendi/</a>
</pre>
        </blockquote>
        <br>
        <br>
        <fieldset class="mimeAttachmentHeader"></fieldset>
        <br>
        <pre wrap="">_______________________________________________
Orgyak mailing list
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:Orgyak@plc.inf.elte.hu">Orgyak@plc.inf.elte.hu</a>
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="https://plc.inf.elte.hu/mailman/listinfo/orgyak">https://plc.inf.elte.hu/mailman/listinfo/orgyak</a>
</pre>
      </blockquote>
    </blockquote>
    <br>
  </body>
</html>