Changes between Version 326 and Version 327 of WikiStart


Ignore:
Timestamp:
07/30/20 10:22:02 (4 years ago)
Author:
wouter
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WikiStart

    v326 v327  
    528528So all parameters are forwarded to all components, these components will figure out themselves which of the provided ones are relevant for them. See the section [#WritingaBoaParty] below for more details on the components.
    529529
    530 
    531 = Writing a party in Java
     530= Writing a Party
     531There are many ways to create a Party: in Java, in Python, extending a Party, extending a DefaultBoa party. The following sections go into more detail.
     532== Writing a party in Java
    532533
    533534Example parties can be found [source:/exampleparties here]. You can easily clone a party with SVN using {{{svn co https://tracinsy.ewi.tudelft.nl/pub/svn/GeniusWeb/exampleparties/randomparty/}}} (this clones randomparty, use a different name to fetch another example).
     
    602603The party must follow the behaviours that it promises. The example above folows the SAOP behaviour but other examples like comparebids and simpleshaop are available as example.
    603604
    604 == Preparing the jar file
     605=== Preparing the jar file
    605606In order to put your party on the [https://tracinsy.ewi.tudelft.nl/pubtrac/GeniusWebPartiesServer partiesserver] for running, you need a jar file of your party.
    606607
     
    616617
    617618
    618 = Writing a party in Python
     619== Writing a party in Python
    619620We provide a python-to-java adapter so that you can easily write your party in python instead of Java. You can check the full working example code [source:/exampleparties/randompartypy/src/main/resources/RandomParty.py here]. A python-based party looks like this:
    620621{{{
     
    669670
    670671
    671 = Writing a Boa Party
     672== Writing a Boa Party
    672673THe BoaParty as mentioned in the exampleparties list is fully configurable to use BOA components. But this adds some hassle when setting up a negotiation as all the components must be explicitly added in the parameters. Also you can not load just a custom BOA component into the runserver, the runserver only supports ready-to-run Party's so custom BOA components have to be part of a custom party.
    673674
     
    715716
    716717
    717 == Bidding Strategy
     718=== Bidding Strategy
    718719A Bidding Strategy determines what action to take in which state, through this interface function
    719720{{{
     
    727728You can create a custom BiddingStrategy by just implementing the BiddingStrategy interface.
    728729
    729 == Acceptance Strategy
     730=== Acceptance Strategy
    730731A Acceptance Strategy determines what action to take in which state, through this interface function
    731732{{{
     
    740741
    741742
    742 = Writing a party in other languages
     743== Writing a party in other languages
    743744If you want to use another language than java or python2 to write your parties, you have a number of options
    744745* Make your own adapter that runs your language from Java. Check [source:pythonadapter/src/main/java/geniusweb/pythonadapter/PythonPartyAdapter.java our pythonadapter] for an example how this can be done.