Merge branch 'master' into master

This commit is contained in:
wowario 2024-12-16 21:40:04 +03:00 committed by GitHub
commit 627286452c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1612 changed files with 37571 additions and 21162 deletions

View File

@ -1,6 +1,7 @@
name: CI name: CI
on: on:
workflow_dispatch:
push: push:
pull_request: pull_request:
paths-ignore: paths-ignore:
@ -10,23 +11,131 @@ jobs:
build: build:
strategy: strategy:
matrix: matrix:
os: [ubuntu-latest, macos-latest, windows-latest] os: [ubuntu-22.04, macos-13, windows-latest]
fail-fast: false fail-fast: false
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
with: with:
lfs: true lfs: true
- name: Set up JDK 11 - name: Set up JDK 21
uses: actions/setup-java@v3 uses: actions/setup-java@v4
with: with:
java-version: '11' java-version: '21'
distribution: 'adopt' distribution: 'adopt'
cache: gradle cache: gradle
- name: Build with Gradle - name: Build with Gradle
run: ./gradlew build --stacktrace --scan run: ./gradlew build --stacktrace --scan
- uses: actions/upload-artifact@v3
if: failure()
with:
name: error-reports-${{ matrix.os }}
path: ${{ github.workspace }}/desktop/build/reports
- name: cache nodes dependencies - name: cache nodes dependencies
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
include-hidden-files: true
name: cached-localnet name: cached-localnet
path: .localnet path: .localnet
- name: Install dependencies
if: ${{ matrix.os == 'ubuntu-22.04' }}
run: |
sudo apt update
sudo apt install -y rpm libfuse2 flatpak flatpak-builder appstream
flatpak remote-add --if-not-exists --user flathub https://dl.flathub.org/repo/flathub.flatpakrepo
- name: Install WiX Toolset
if: ${{ matrix.os == 'windows-latest' }}
run: |
Invoke-WebRequest -Uri 'https://github.com/wixtoolset/wix3/releases/download/wix314rtm/wix314.exe' -OutFile wix314.exe
.\wix314.exe /quiet /norestart
shell: powershell
- name: Build Haveno Installer
run: |
./gradlew clean build --refresh-keys --refresh-dependencies
./gradlew packageInstallers
working-directory: .
# get version from jar
- name: Set Version Unix
if: ${{ matrix.os == 'ubuntu-22.04' || matrix.os == 'macos-13' }}
run: |
export VERSION=$(ls desktop/build/temp-*/binaries/desktop-*.jar.SHA-256 | grep -Eo 'desktop-[0-9]+\.[0-9]+\.[0-9]+' | sed 's/desktop-//')
echo "VERSION=$VERSION" >> $GITHUB_ENV
- name: Set Version Windows
if: ${{ matrix.os == 'windows-latest' }}
run: |
$VERSION = (Get-ChildItem -Path desktop\build\temp-*/binaries\desktop-*.jar.SHA-256).Name -replace 'desktop-', '' -replace '-.*', ''
"VERSION=$VERSION" | Out-File -FilePath $env:GITHUB_ENV -Append
shell: powershell
- name: Move Release Files on Unix
if: ${{ matrix.os == 'ubuntu-22.04' || matrix.os == 'macos-13' }}
run: |
if [ "${{ matrix.os }}" == "ubuntu-22.04" ]; then
mkdir ${{ github.workspace }}/release-linux-rpm
mkdir ${{ github.workspace }}/release-linux-deb
mkdir ${{ github.workspace }}/release-linux-flatpak
mkdir ${{ github.workspace }}/release-linux-appimage
mv desktop/build/temp-*/binaries/haveno-*.rpm ${{ github.workspace }}/release-linux-rpm/haveno-v${{ env.VERSION }}-linux-x86_64-installer.rpm
mv desktop/build/temp-*/binaries/haveno_*.deb ${{ github.workspace }}/release-linux-deb/haveno-v${{ env.VERSION }}-linux-x86_64-installer.deb
mv desktop/build/temp-*/binaries/*.flatpak ${{ github.workspace }}/release-linux-flatpak/haveno-v${{ env.VERSION }}-linux-x86_64.flatpak
mv desktop/build/temp-*/binaries/haveno_*.AppImage ${{ github.workspace }}/release-linux-appimage/haveno-v${{ env.VERSION }}-linux-x86_64.AppImage
cp desktop/build/temp-*/binaries/desktop-*.jar.SHA-256 ${{ github.workspace }}/release-linux-deb
cp desktop/build/temp-*/binaries/desktop-*.jar.SHA-256 ${{ github.workspace }}/release-linux-rpm
cp desktop/build/temp-*/binaries/desktop-*.jar.SHA-256 ${{ github.workspace }}/release-linux-appimage
cp desktop/build/temp-*/binaries/desktop-*.jar.SHA-256 ${{ github.workspace }}/release-linux-flatpak
else
mkdir ${{ github.workspace }}/release-macos
mv desktop/build/temp-*/binaries/Haveno-*.dmg ${{ github.workspace }}/release-macos/haveno-v${{ env.VERSION }}-macos-installer.dmg
cp desktop/build/temp-*/binaries/desktop-*.jar.SHA-256 ${{ github.workspace }}/release-macos
fi
shell: bash
- name: Move Release Files on Windows
if: ${{ matrix.os == 'windows-latest' }}
run: |
mkdir ${{ github.workspace }}/release-windows
Move-Item -Path desktop\build\temp-*/binaries\Haveno-*.exe -Destination ${{ github.workspace }}/release-windows/haveno-v${{ env.VERSION }}-windows-installer.exe
Move-Item -Path desktop\build\temp-*/binaries\desktop-*.jar.SHA-256 -Destination ${{ github.workspace }}/release-windows
shell: powershell
# win
- uses: actions/upload-artifact@v3
name: "Windows artifacts"
if: ${{ matrix.os == 'windows-latest'}}
with:
name: haveno-windows
path: ${{ github.workspace }}/release-windows
# macos
- uses: actions/upload-artifact@v3
name: "macOS artifacts"
if: ${{ matrix.os == 'macos-13' }}
with:
name: haveno-macos
path: ${{ github.workspace }}/release-macos
# linux
- uses: actions/upload-artifact@v3
name: "Linux - deb artifact"
if: ${{ matrix.os == 'ubuntu-22.04' }}
with:
name: haveno-linux-deb
path: ${{ github.workspace }}/release-linux-deb
- uses: actions/upload-artifact@v3
name: "Linux - rpm artifact"
if: ${{ matrix.os == 'ubuntu-22.04' }}
with:
name: haveno-linux-rpm
path: ${{ github.workspace }}/release-linux-rpm
- uses: actions/upload-artifact@v3
name: "Linux - AppImage artifact"
if: ${{ matrix.os == 'ubuntu-22.04' }}
with:
name: haveno-linux-appimage
path: ${{ github.workspace }}/release-linux-appimage
- uses: actions/upload-artifact@v3
name: "Linux - flatpak artifact"
if: ${{ matrix.os == 'ubuntu-22.04' }}
with:
name: haveno-linux-flatpak
path: ${{ github.workspace }}/release-linux-flatpak

View File

@ -7,15 +7,16 @@ permissions:
jobs: jobs:
build: build:
if: github.repository == 'haveno-dex/haveno'
name: Publish coverage name: Publish coverage
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- name: Set up JDK 11 - name: Set up JDK 21
uses: actions/setup-java@v3 uses: actions/setup-java@v4
with: with:
java-version: '11' java-version: '21'
distribution: 'adopt' distribution: 'adopt'
- name: Build with Gradle - name: Build with Gradle

View File

@ -33,7 +33,14 @@ jobs:
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v3 uses: actions/checkout@v4
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'adopt'
cache: gradle
# Initializes the CodeQL tools for scanning. # Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL - name: Initialize CodeQL
@ -47,8 +54,8 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java). # Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java).
# If this step fails, then you should remove it and run the build manually (see below). # If this step fails, then you should remove it and run the build manually (see below).
- name: Autobuild # - name: Autobuild
uses: github/codeql-action/autobuild@v2 # uses: github/codeql-action/autobuild@v2
# Command-line programs to run using the OS shell. # Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl # 📚 https://git.io/JvXDl
@ -57,8 +64,8 @@ jobs:
# and modify them (or add more) to build your code if your project # and modify them (or add more) to build your code if your project
# uses a compiled language # uses a compiled language
#- run: | - name: Build
# ./gradlew build run: ./gradlew build --stacktrace -x test -x checkstyleMain -x checkstyleTest
- name: Perform CodeQL Analysis - name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2 uses: github/codeql-action/analyze@v2

View File

@ -10,16 +10,16 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Bounty explanation - name: Bounty explanation
uses: peter-evans/create-or-update-comment@v2 uses: peter-evans/create-or-update-comment@v3
if: github.event.label.name == '💰bounty' if: github.event.label.name == '💰bounty'
with: with:
token: ${{ secrets.GITHUB_TOKEN }} token: ${{ secrets.GITHUB_TOKEN }}
issue-number: ${{ github.event.issue.number }} issue-number: ${{ github.event.issue.number }}
body: > body: >
There is a bounty on this issue, the amount is in the title. The reward will be awarded to the first person or group of people who resolves this issue. There is a bounty on this issue. The amount is in the title. The reward will be awarded to the first person or group of people whose solution is accepted and merged.
If you are starting to work on this bounty, please write a comment, so that we can assign the issue to you. We expect contributors to provide a PR in a reasonable time frame or, in case of an extensive work, updates on their progresses. We will unassign the issue if we feel the assignee is not responsive or has abandoned the task. In some cases, we may assign the issue to specific contributors. We expect contributors to provide a PR in a reasonable time frame or, in case of an extensive work, updates on their progress. We will unassign the issue if we feel the assignee is not responsive or has abandoned the task.
Read the [full conditions and details](https://github.com/haveno-dex/haveno/blob/master/docs/bounties.md) of our bounty system. Read the [full conditions and details](https://github.com/haveno-dex/haveno/blob/master/docs/bounties.md) of our bounty system.

4
.gitignore vendored
View File

@ -35,3 +35,7 @@ deploy
.java-version .java-version
.localnet .localnet
.vscode .vscode
.vim/*
*/.factorypath
.flatpak-builder
exchange.haveno.Haveno.yaml

286
Makefile
View File

@ -28,7 +28,7 @@ haveno-apps:
refresh-deps: refresh-deps:
./gradlew --write-verification-metadata sha256 && ./gradlew build --refresh-keys --refresh-dependencies -x test -x checkstyleMain -x checkstyleTest ./gradlew --write-verification-metadata sha256 && ./gradlew build --refresh-keys --refresh-dependencies -x test -x checkstyleMain -x checkstyleTest
deploy: deploy-screen:
# create a new screen session named 'localnet' # create a new screen session named 'localnet'
screen -dmS localnet screen -dmS localnet
# deploy each node in its own named screen window # deploy each node in its own named screen window
@ -40,23 +40,21 @@ deploy:
screen -S localnet -X screen -t $$target; \ screen -S localnet -X screen -t $$target; \
screen -S localnet -p $$target -X stuff "make $$target\n"; \ screen -S localnet -p $$target -X stuff "make $$target\n"; \
done; done;
# give bitcoind rpc server time to start # give time to start
sleep 5 sleep 5
bitcoind: deploy-tmux:
./.localnet/bitcoind \ # Start a new tmux session named 'localnet' (detached)
-regtest \ tmux new-session -d -s localnet -n main "make seednode-local"
-peerbloomfilters=1 \ # Split the window into panes and run each node in its own pane
-datadir=.localnet/ \ tmux split-window -h -t localnet "make user1-desktop-local" # Split horizontally for user1
-rpcuser=haveno \ tmux split-window -v -t localnet:0.0 "make user2-desktop-local" # Split vertically on the left for user2
-rpcpassword=1234 tmux split-window -v -t localnet:0.1 "make arbitrator-desktop-local" # Split vertically on the right for arbitrator
tmux select-layout -t localnet tiled
btc-blocks: # give time to start
./.localnet/bitcoin-cli \ sleep 5
-regtest \ # Attach to the tmux session
-rpcuser=haveno \ tmux attach-session -t localnet
-rpcpassword=1234 \
generatetoaddress 101 bcrt1q6j90vywv8x7eyevcnn2tn2wrlg3vsjlsvt46qz
.PHONY: build seednode localnet .PHONY: build seednode localnet
@ -69,12 +67,12 @@ monerod1-local:
--hide-my-port \ --hide-my-port \
--data-dir .localnet/xmr_local/node1 \ --data-dir .localnet/xmr_local/node1 \
--p2p-bind-ip 127.0.0.1 \ --p2p-bind-ip 127.0.0.1 \
--p2p-bind-port 48080 \ --log-level 0 \
--rpc-bind-port 48081 \ --add-exclusive-node 127.0.0.1:48080 \
--no-zmq \ --add-exclusive-node 127.0.0.1:58080 \
--add-exclusive-node 127.0.0.1:28080 \
--rpc-access-control-origins http://localhost:8080 \ --rpc-access-control-origins http://localhost:8080 \
--fixed-difficulty 400 --fixed-difficulty 500 \
--disable-rpc-ban \
monerod2-local: monerod2-local:
./.localnet/monerod \ ./.localnet/monerod \
@ -83,21 +81,34 @@ monerod2-local:
--hide-my-port \ --hide-my-port \
--data-dir .localnet/xmr_local/node2 \ --data-dir .localnet/xmr_local/node2 \
--p2p-bind-ip 127.0.0.1 \ --p2p-bind-ip 127.0.0.1 \
--rpc-bind-ip 0.0.0.0 \ --p2p-bind-port 48080 \
--no-zmq \ --rpc-bind-port 48081 \
--zmq-rpc-bind-port 48082 \
--log-level 0 \
--confirm-external-bind \ --confirm-external-bind \
--add-exclusive-node 127.0.0.1:28080 \
--add-exclusive-node 127.0.0.1:58080 \
--rpc-access-control-origins http://localhost:8080 \
--fixed-difficulty 500 \
--disable-rpc-ban \
monerod3-local:
./.localnet/monerod \
--testnet \
--no-igd \
--hide-my-port \
--data-dir .localnet/xmr_local/node3 \
--p2p-bind-ip 127.0.0.1 \
--p2p-bind-port 58080 \
--rpc-bind-port 58081 \
--zmq-rpc-bind-port 58082 \
--log-level 0 \
--confirm-external-bind \
--add-exclusive-node 127.0.0.1:28080 \
--add-exclusive-node 127.0.0.1:48080 \ --add-exclusive-node 127.0.0.1:48080 \
--rpc-access-control-origins http://localhost:8080 \ --rpc-access-control-origins http://localhost:8080 \
--fixed-difficulty 400 --fixed-difficulty 500 \
--disable-rpc-ban \
funding-wallet-stagenet:
./.localnet/monero-wallet-rpc \
--rpc-bind-port 18084 \
--rpc-login rpc_user:abc123 \
--rpc-access-control-origins http://localhost:8080 \
--wallet-dir ./.localnet \
--daemon-ssl-allow-any-cert \
--daemon-address http://127.0.0.1:38081
#--proxy 127.0.0.1:49775 \ #--proxy 127.0.0.1:49775 \
@ -108,7 +119,24 @@ funding-wallet-local:
--rpc-bind-port 28084 \ --rpc-bind-port 28084 \
--rpc-login rpc_user:abc123 \ --rpc-login rpc_user:abc123 \
--rpc-access-control-origins http://localhost:8080 \ --rpc-access-control-origins http://localhost:8080 \
--wallet-dir ./.localnet --wallet-dir ./.localnet \
funding-wallet-stagenet:
./.localnet/monero-wallet-rpc \
--stagenet \
--rpc-bind-port 38084 \
--rpc-login rpc_user:abc123 \
--rpc-access-control-origins http://localhost:8080 \
--wallet-dir ./.localnet \
--daemon-ssl-allow-any-cert \
--daemon-address http://127.0.0.1:38081 \
funding-wallet-mainnet:
./.localnet/monero-wallet-rpc \
--rpc-bind-port 18084 \
--rpc-login rpc_user:abc123 \
--rpc-access-control-origins http://localhost:8080 \
--wallet-dir ./.localnet \
# use .bat extension for windows binaries # use .bat extension for windows binaries
APP_EXT := APP_EXT :=
@ -144,7 +172,8 @@ arbitrator-daemon-local:
--appName=haveno-XMR_LOCAL_arbitrator \ --appName=haveno-XMR_LOCAL_arbitrator \
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=9998 \ --apiPort=9998 \
--passwordRequired=false --passwordRequired=false \
--useNativeXmrWallet=false \
arbitrator-desktop-local: arbitrator-desktop-local:
# Arbitrator needs to be registered before making trades # Arbitrator needs to be registered before making trades
@ -155,7 +184,8 @@ arbitrator-desktop-local:
--nodePort=4444 \ --nodePort=4444 \
--appName=haveno-XMR_LOCAL_arbitrator \ --appName=haveno-XMR_LOCAL_arbitrator \
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=9998 --apiPort=9998 \
--useNativeXmrWallet=false \
arbitrator2-daemon-local: arbitrator2-daemon-local:
# Arbitrator needs to be registered before making trades # Arbitrator needs to be registered before making trades
@ -166,7 +196,8 @@ arbitrator2-daemon-local:
--nodePort=7777 \ --nodePort=7777 \
--appName=haveno-XMR_LOCAL_arbitrator2 \ --appName=haveno-XMR_LOCAL_arbitrator2 \
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=10001 --apiPort=10001 \
--useNativeXmrWallet=false \
arbitrator2-desktop-local: arbitrator2-desktop-local:
# Arbitrator needs to be registered before making trades # Arbitrator needs to be registered before making trades
@ -177,7 +208,8 @@ arbitrator2-desktop-local:
--nodePort=7777 \ --nodePort=7777 \
--appName=haveno-XMR_LOCAL_arbitrator2 \ --appName=haveno-XMR_LOCAL_arbitrator2 \
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=10001 --apiPort=10001 \
--useNativeXmrWallet=false \
user1-daemon-local: user1-daemon-local:
./haveno-daemon$(APP_EXT) \ ./haveno-daemon$(APP_EXT) \
@ -189,7 +221,8 @@ user1-daemon-local:
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=9999 \ --apiPort=9999 \
--walletRpcBindPort=38091 \ --walletRpcBindPort=38091 \
--passwordRequired=false --passwordRequired=false \
--useNativeXmrWallet=false \
user1-desktop-local: user1-desktop-local:
./haveno-desktop$(APP_EXT) \ ./haveno-desktop$(APP_EXT) \
@ -201,7 +234,8 @@ user1-desktop-local:
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=9999 \ --apiPort=9999 \
--walletRpcBindPort=38091 \ --walletRpcBindPort=38091 \
--logLevel=info --logLevel=info \
--useNativeXmrWallet=false \
user2-desktop-local: user2-desktop-local:
./haveno-desktop$(APP_EXT) \ ./haveno-desktop$(APP_EXT) \
@ -212,7 +246,8 @@ user2-desktop-local:
--appName=haveno-XMR_LOCAL_user2 \ --appName=haveno-XMR_LOCAL_user2 \
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=10000 \ --apiPort=10000 \
--walletRpcBindPort=38092 --walletRpcBindPort=38092 \
--useNativeXmrWallet=false \
user2-daemon-local: user2-daemon-local:
./haveno-daemon$(APP_EXT) \ ./haveno-daemon$(APP_EXT) \
@ -224,7 +259,33 @@ user2-daemon-local:
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=10000 \ --apiPort=10000 \
--walletRpcBindPort=38092 \ --walletRpcBindPort=38092 \
--passwordRequired=false --passwordRequired=false \
--useNativeXmrWallet=false \
user3-desktop-local:
./haveno-desktop$(APP_EXT) \
--baseCurrencyNetwork=XMR_LOCAL \
--useLocalhostForP2P=true \
--useDevPrivilegeKeys=true \
--nodePort=7778 \
--appName=haveno-XMR_LOCAL_user3 \
--apiPassword=apitest \
--apiPort=10002 \
--walletRpcBindPort=38093 \
--useNativeXmrWallet=false \
user3-daemon-local:
./haveno-daemon$(APP_EXT) \
--baseCurrencyNetwork=XMR_LOCAL \
--useLocalhostForP2P=true \
--useDevPrivilegeKeys=true \
--nodePort=7778 \
--appName=haveno-XMR_LOCAL_user3 \
--apiPassword=apitest \
--apiPort=10002 \
--walletRpcBindPort=38093 \
--passwordRequired=false \
--useNativeXmrWallet=false \
# Stagenet network # Stagenet network
@ -241,7 +302,7 @@ monerod-stagenet-custom:
--p2p-bind-port 39080 \ --p2p-bind-port 39080 \
--rpc-bind-port 39081 \ --rpc-bind-port 39081 \
--bootstrap-daemon-address auto \ --bootstrap-daemon-address auto \
--rpc-access-control-origins http://localhost:8080 --rpc-access-control-origins http://localhost:8080 \
seednode-stagenet: seednode-stagenet:
./haveno-seednode$(APP_EXT) \ ./haveno-seednode$(APP_EXT) \
@ -250,7 +311,7 @@ seednode-stagenet:
--useDevPrivilegeKeys=false \ --useDevPrivilegeKeys=false \
--nodePort=3002 \ --nodePort=3002 \
--appName=haveno-XMR_STAGENET_Seed_3002 \ --appName=haveno-XMR_STAGENET_Seed_3002 \
--xmrNode=http://127.0.0.1:38081 --xmrNode=http://127.0.0.1:38081 \
seednode2-stagenet: seednode2-stagenet:
./haveno-seednode$(APP_EXT) \ ./haveno-seednode$(APP_EXT) \
@ -259,7 +320,7 @@ seednode2-stagenet:
--useDevPrivilegeKeys=false \ --useDevPrivilegeKeys=false \
--nodePort=3003 \ --nodePort=3003 \
--appName=haveno-XMR_STAGENET_Seed_3003 \ --appName=haveno-XMR_STAGENET_Seed_3003 \
--xmrNode=http://127.0.0.1:38081 --xmrNode=http://127.0.0.1:38081 \
arbitrator-daemon-stagenet: arbitrator-daemon-stagenet:
# Arbitrator needs to be registered before making trades # Arbitrator needs to be registered before making trades
@ -267,12 +328,13 @@ arbitrator-daemon-stagenet:
--baseCurrencyNetwork=XMR_STAGENET \ --baseCurrencyNetwork=XMR_STAGENET \
--useLocalhostForP2P=false \ --useLocalhostForP2P=false \
--useDevPrivilegeKeys=false \ --useDevPrivilegeKeys=false \
--nodePort=3100 \ --nodePort=9999 \
--appName=haveno-XMR_STAGENET_arbitrator \ --appName=haveno-XMR_STAGENET_arbitrator \
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=3200 \ --apiPort=3200 \
--passwordRequired=false \ --passwordRequired=false \
--xmrNode=http://127.0.0.1:38081 --xmrNode=http://127.0.0.1:38081 \
--useNativeXmrWallet=false \
# Arbitrator needs to be registered before making trades # Arbitrator needs to be registered before making trades
arbitrator-desktop-stagenet: arbitrator-desktop-stagenet:
@ -280,63 +342,80 @@ arbitrator-desktop-stagenet:
--baseCurrencyNetwork=XMR_STAGENET \ --baseCurrencyNetwork=XMR_STAGENET \
--useLocalhostForP2P=false \ --useLocalhostForP2P=false \
--useDevPrivilegeKeys=false \ --useDevPrivilegeKeys=false \
--nodePort=3100 \ --nodePort=9999 \
--appName=haveno-XMR_STAGENET_arbitrator \ --appName=haveno-XMR_STAGENET_arbitrator \
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=3200 \ --apiPort=3200 \
--xmrNode=http://127.0.0.1:38081 --xmrNode=http://127.0.0.1:38081 \
--useNativeXmrWallet=false \
user1-daemon-stagenet: user1-daemon-stagenet:
./haveno-daemon$(APP_EXT) \ ./haveno-daemon$(APP_EXT) \
--baseCurrencyNetwork=XMR_STAGENET \ --baseCurrencyNetwork=XMR_STAGENET \
--useLocalhostForP2P=false \ --useLocalhostForP2P=false \
--useDevPrivilegeKeys=false \ --useDevPrivilegeKeys=false \
--nodePort=3101 \ --nodePort=9999 \
--appName=haveno-XMR_STAGENET_user1 \ --appName=haveno-XMR_STAGENET_user1 \
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=3201 \ --apiPort=3201 \
--passwordRequired=false --passwordRequired=false \
--useNativeXmrWallet=false \
user1-desktop-stagenet: user1-desktop-stagenet:
./haveno-desktop$(APP_EXT) \ ./haveno-desktop$(APP_EXT) \
--baseCurrencyNetwork=XMR_STAGENET \ --baseCurrencyNetwork=XMR_STAGENET \
--useLocalhostForP2P=false \ --useLocalhostForP2P=false \
--useDevPrivilegeKeys=false \ --useDevPrivilegeKeys=false \
--nodePort=3101 \ --nodePort=9999 \
--appName=haveno-XMR_STAGENET_user1 \ --appName=haveno-XMR_STAGENET_user1 \
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=3201 --apiPort=3201 \
--useNativeXmrWallet=false \
user2-daemon-stagenet: user2-daemon-stagenet:
./haveno-daemon$(APP_EXT) \ ./haveno-daemon$(APP_EXT) \
--baseCurrencyNetwork=XMR_STAGENET \ --baseCurrencyNetwork=XMR_STAGENET \
--useLocalhostForP2P=false \ --useLocalhostForP2P=false \
--useDevPrivilegeKeys=false \ --useDevPrivilegeKeys=false \
--nodePort=3102 \ --nodePort=9999 \
--appName=haveno-XMR_STAGENET_user2 \ --appName=haveno-XMR_STAGENET_user2 \
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=3202 \ --apiPort=3202 \
--passwordRequired=false --passwordRequired=false \
--useNativeXmrWallet=false \
user2-desktop-stagenet: user2-desktop-stagenet:
./haveno-desktop$(APP_EXT) \ ./haveno-desktop$(APP_EXT) \
--baseCurrencyNetwork=XMR_STAGENET \ --baseCurrencyNetwork=XMR_STAGENET \
--useLocalhostForP2P=false \ --useLocalhostForP2P=false \
--useDevPrivilegeKeys=false \ --useDevPrivilegeKeys=false \
--nodePort=3102 \ --nodePort=9999 \
--appName=haveno-XMR_STAGENET_user2 \ --appName=haveno-XMR_STAGENET_user2 \
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=3202 --apiPort=3202 \
--useNativeXmrWallet=false \
user3-desktop-stagenet: user3-desktop-stagenet:
./haveno-desktop$(APP_EXT) \ ./haveno-desktop$(APP_EXT) \
--baseCurrencyNetwork=XMR_STAGENET \ --baseCurrencyNetwork=XMR_STAGENET \
--useLocalhostForP2P=false \ --useLocalhostForP2P=false \
--useDevPrivilegeKeys=false \ --useDevPrivilegeKeys=false \
--nodePort=3103 \ --nodePort=9999 \
--appName=haveno-XMR_STAGENET_user3 \ --appName=haveno-XMR_STAGENET_user3 \
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=3203 --apiPort=3203 \
--useNativeXmrWallet=false \
haveno-desktop-stagenet:
./haveno-desktop$(APP_EXT) \
--baseCurrencyNetwork=XMR_STAGENET \
--useLocalhostForP2P=false \
--useDevPrivilegeKeys=false \
--nodePort=9999 \
--appName=Haveno \
--apiPassword=apitest \
--apiPort=3204 \
--useNativeXmrWallet=false \
# Mainnet network # Mainnet network
@ -352,7 +431,7 @@ seednode:
--useDevPrivilegeKeys=false \ --useDevPrivilegeKeys=false \
--nodePort=1002 \ --nodePort=1002 \
--appName=haveno-XMR_MAINNET_Seed_1002 \ --appName=haveno-XMR_MAINNET_Seed_1002 \
--xmrNode=http://127.0.0.1:18081 --xmrNode=http://127.0.0.1:18081 \
seednode2: seednode2:
./haveno-seednode$(APP_EXT) \ ./haveno-seednode$(APP_EXT) \
@ -361,81 +440,116 @@ seednode2:
--useDevPrivilegeKeys=false \ --useDevPrivilegeKeys=false \
--nodePort=1003 \ --nodePort=1003 \
--appName=haveno-XMR_MAINNET_Seed_1003 \ --appName=haveno-XMR_MAINNET_Seed_1003 \
--xmrNode=http://127.0.0.1:18081 --xmrNode=http://127.0.0.1:18081 \
arbitrator-daemon: arbitrator-daemon-mainnet:
# Arbitrator needs to be registered before making trades # Arbitrator needs to be registered before making trades
./haveno-daemon$(APP_EXT) \ ./haveno-daemon$(APP_EXT) \
--baseCurrencyNetwork=XMR_MAINNET \ --baseCurrencyNetwork=XMR_MAINNET \
--useLocalhostForP2P=false \ --useLocalhostForP2P=false \
--useDevPrivilegeKeys=false \ --useDevPrivilegeKeys=false \
--nodePort=1100 \ --nodePort=9999 \
--appName=haveno-XMR_MAINNET_arbitrator \ --appName=haveno-XMR_MAINNET_arbitrator \
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=1200 \ --apiPort=1200 \
--passwordRequired=false \ --passwordRequired=false \
--xmrNode=http://127.0.0.1:18081 --xmrNode=http://127.0.0.1:18081 \
--useNativeXmrWallet=false \
# Arbitrator needs to be registered before making trades arbitrator-desktop-mainnet:
arbitrator-desktop:
./haveno-desktop$(APP_EXT) \ ./haveno-desktop$(APP_EXT) \
--baseCurrencyNetwork=XMR_MAINNET \ --baseCurrencyNetwork=XMR_MAINNET \
--useLocalhostForP2P=false \ --useLocalhostForP2P=false \
--useDevPrivilegeKeys=false \ --useDevPrivilegeKeys=false \
--nodePort=1100 \ --nodePort=9999 \
--appName=haveno-XMR_MAINNET_arbitrator \ --appName=haveno-XMR_MAINNET_arbitrator \
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=1200 \ --apiPort=1200 \
--xmrNode=http://127.0.0.1:18081 --xmrNode=http://127.0.0.1:18081 \
--useNativeXmrWallet=false \
user1-daemon: haveno-daemon-mainnet:
./haveno-daemon$(APP_EXT) \ ./haveno-daemon$(APP_EXT) \
--baseCurrencyNetwork=XMR_MAINNET \ --baseCurrencyNetwork=XMR_MAINNET \
--useLocalhostForP2P=false \ --useLocalhostForP2P=false \
--useDevPrivilegeKeys=false \ --useDevPrivilegeKeys=false \
--nodePort=1101 \ --nodePort=9999 \
--appName=haveno-XMR_MAINNET_user1 \ --appName=Haveno \
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=1201 \ --apiPort=1201 \
--passwordRequired=false --useNativeXmrWallet=false \
--ignoreLocalXmrNode=false \
user1-desktop: haveno-desktop-mainnet:
./haveno-desktop$(APP_EXT) \ ./haveno-desktop$(APP_EXT) \
--baseCurrencyNetwork=XMR_MAINNET \ --baseCurrencyNetwork=XMR_MAINNET \
--useLocalhostForP2P=false \ --useLocalhostForP2P=false \
--useDevPrivilegeKeys=false \ --useDevPrivilegeKeys=false \
--nodePort=1101 \ --nodePort=9999 \
--appName=haveno-XMR_MAINNET_user1 \ --appName=Haveno \
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=1201 --apiPort=1201 \
--useNativeXmrWallet=false \
--ignoreLocalXmrNode=false \
user2-daemon: user1-daemon-mainnet:
./haveno-daemon$(APP_EXT) \ ./haveno-daemon$(APP_EXT) \
--baseCurrencyNetwork=XMR_MAINNET \ --baseCurrencyNetwork=XMR_MAINNET \
--useLocalhostForP2P=false \ --useLocalhostForP2P=false \
--useDevPrivilegeKeys=false \ --useDevPrivilegeKeys=false \
--nodePort=1102 \ --nodePort=9999 \
--appName=haveno-XMR_MAINNET_user2 \ --appName=haveno-XMR_MAINNET_user1 \
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=1202 \ --apiPort=1202 \
--passwordRequired=false --passwordRequired=false \
--useNativeXmrWallet=false \
--ignoreLocalXmrNode=false \
user2-desktop: user1-desktop-mainnet:
./haveno-desktop$(APP_EXT) \ ./haveno-desktop$(APP_EXT) \
--baseCurrencyNetwork=XMR_MAINNET \ --baseCurrencyNetwork=XMR_MAINNET \
--useLocalhostForP2P=false \ --useLocalhostForP2P=false \
--useDevPrivilegeKeys=false \ --useDevPrivilegeKeys=false \
--nodePort=1102 \ --nodePort=9999 \
--appName=haveno-XMR_MAINNET_user1 \
--apiPassword=apitest \
--apiPort=1202 \
--useNativeXmrWallet=false \
--ignoreLocalXmrNode=false \
user2-daemon-mainnet:
./haveno-daemon$(APP_EXT) \
--baseCurrencyNetwork=XMR_MAINNET \
--useLocalhostForP2P=false \
--useDevPrivilegeKeys=false \
--nodePort=9999 \
--appName=haveno-XMR_MAINNET_user2 \ --appName=haveno-XMR_MAINNET_user2 \
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=1202 --apiPort=1203 \
--passwordRequired=false \
--useNativeXmrWallet=false \
--ignoreLocalXmrNode=false \
user3-desktop: user2-desktop-mainnet:
./haveno-desktop$(APP_EXT) \ ./haveno-desktop$(APP_EXT) \
--baseCurrencyNetwork=XMR_MAINNET \ --baseCurrencyNetwork=XMR_MAINNET \
--useLocalhostForP2P=false \ --useLocalhostForP2P=false \
--useDevPrivilegeKeys=false \ --useDevPrivilegeKeys=false \
--nodePort=1103 \ --nodePort=9999 \
--appName=haveno-XMR_MAINNET_user2 \
--apiPassword=apitest \
--apiPort=1203 \
--useNativeXmrWallet=false \
--ignoreLocalXmrNode=false \
user3-desktop-mainnet:
./haveno-desktop$(APP_EXT) \
--baseCurrencyNetwork=XMR_MAINNET \
--useLocalhostForP2P=false \
--useDevPrivilegeKeys=false \
--nodePort=9999 \
--appName=haveno-XMR_MAINNET_user3 \ --appName=haveno-XMR_MAINNET_user3 \
--apiPassword=apitest \ --apiPassword=apitest \
--apiPort=1203 --apiPort=1204 \
--useNativeXmrWallet=false \
--ignoreLocalXmrNode=false \

View File

@ -1,60 +1,62 @@
<div align="center"> <div align="center">
<img src="https://raw.githubusercontent.com/haveno-dex/haveno-meta/721e52919b28b44d12b6e1e5dac57265f1c05cda/logo/haveno_logo_landscape.svg" alt="Haveno logo"> <img src="https://raw.githubusercontent.com/haveno-dex/haveno-meta/721e52919b28b44d12b6e1e5dac57265f1c05cda/logo/haveno_logo_landscape.svg" alt="Haveno logo">
[![Codacy Badge](https://app.codacy.com/project/badge/Grade/505405b43cb74d5a996f106a3371588e)](https://app.codacy.com/gh/haveno-dex/haveno/dashboard)
![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/haveno-dex/haveno/build.yml?branch=master) ![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/haveno-dex/haveno/build.yml?branch=master)
[![GitHub issues with bounty](https://img.shields.io/github/issues-search/haveno-dex/haveno?color=%23fef2c0&label=Issues%20with%20bounties&query=project%3Ahaveno-dex%2F2)](https://github.com/orgs/haveno-dex/projects/2) | [![GitHub issues with bounty](https://img.shields.io/github/issues-search/haveno-dex/haveno?color=%23fef2c0&label=Issues%20with%20bounties&query=is%3Aopen+is%3Aissue+label%3A%F0%9F%92%B0bounty)](https://github.com/haveno-dex/haveno/issues?q=is%3Aopen+is%3Aissue+label%3A%F0%9F%92%B0bounty)
[![Twitter Follow](https://img.shields.io/twitter/follow/HavenoDEX?style=social)](https://twitter.com/havenodex) [![Twitter Follow](https://img.shields.io/twitter/follow/HavenoDEX?style=social)](https://twitter.com/havenodex)
[![Matrix rooms](https://img.shields.io/badge/Matrix%20room-%23haveno-blue)](https://matrix.to/#/#haveno:monero.social) [![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg)](https://github.com/haveno-dex/.github/blob/master/CODE_OF_CONDUCT.md) [![Matrix rooms](https://img.shields.io/badge/Matrix%20room-%23haveno-blue)](https://matrix.to/#/#haveno:monero.social) [![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg)](https://github.com/haveno-dex/.github/blob/master/CODE_OF_CONDUCT.md)
</div> </div>
## What is Haveno? ## What is Haveno?
Haveno (pronounced ha‧ve‧no) is a platform for people who want to exchange [Monero](https://getmonero.org) for fiat currencies like EUR, GBP, and USD or other cryptocurrencies like BTC, ETH, BCH, and WOW. Haveno (pronounced ha‧ve‧no) is an open source platform to exchange [Monero](https://getmonero.org) for fiat currencies like USD, EUR, and GBP or other cryptocurrencies like BTC, ETH, BCH, and WOW.
Main features: Main features:
- All communications are routed through **Tor**, to preserve your privacy - Communications are routed through **Tor**, to preserve your privacy.
- Trades are **peer-to-peer**: trades on Haveno will happen between people only, there is no central authority. - Trades are **peer-to-peer**: trades on Haveno happen between people only, there is no central authority.
- Trades are **non-custodial**: Haveno provides arbitration in case something goes wrong during the trade, but we will never have access to your funds. - Trades are **non-custodial**: Haveno supports arbitration in case something goes wrong during the trade, but arbitrators never have access to your funds.
- There is **No token**, because we don't need it. Transactions between traders are secured by non-custodial multisignature transactions on the Monero network. - There is **No token**, because it's not needed. Transactions between traders are secured by non-custodial multisignature transactions on the Monero network.
- The revenue generated by Haveno will be managed by an entity called Council (more info soon), composed by members of the Monero/Haveno community, not the Haveno Core Team and will be used to **fund Haveno and Monero** development.
See the [FAQ on our website](https://haveno.exchange/faq/) for more information. See the [FAQ on our website](https://haveno.exchange/faq/) for more information.
## Status of the project ## Installing Haveno
A live test network is online and users can already run Haveno and make test trades between each others using Monero's stagenet. See the [instructions to build Haveno and connect to the network](https://github.com/haveno-dex/haveno/blob/master/docs/installing.md). Note that Haveno is still very much in development. If you find issues or bugs, please let us know. Haveno can be installed on Linux, macOS, and Windows by using a third party installer and network.
Main repositories: > [!note]
> The official Haveno repository does not support making real trades directly.
>
> To make real trades with Haveno, first find a third party network, and then use their installer or build their repository. We do not endorse any networks at this time.
A test network is also available for users to make test trades using Monero's stagenet. See the [instructions](https://github.com/haveno-dex/haveno/blob/master/docs/installing.md) to build Haveno and connect to the test network.
Alternatively, you can [create your own mainnet network](create-mainnet.md).
Note that Haveno is being actively developed. If you find issues or bugs, please let us know.
## Main repositories
- **[haveno](https://github.com/haveno-dex/haveno)** - This repository. The core of Haveno. - **[haveno](https://github.com/haveno-dex/haveno)** - This repository. The core of Haveno.
- **[haveno-ui](https://github.com/haveno-dex/haveno-ui)** - The user interface.
- **[haveno-ts](https://github.com/haveno-dex/haveno-ts)** - TypeScript library for using Haveno. - **[haveno-ts](https://github.com/haveno-dex/haveno-ts)** - TypeScript library for using Haveno.
- **[haveno-ui](https://github.com/haveno-dex/haveno-ui)** - A new user interface (WIP).
- **[haveno-meta](https://github.com/haveno-dex/haveno-meta)** - For project-wide discussions and proposals. - **[haveno-meta](https://github.com/haveno-dex/haveno-meta)** - For project-wide discussions and proposals.
If you wish to help, take a look at the repositories above and look for open issues. We run a bounty program to incentivize development. See [Bounties](#bounties) If you wish to help, take a look at the repositories above and look for open issues. We run a bounty program to incentivize development. See [Bounties](#bounties).
The PGP keys of the core team members are in `gpg_keys/`.
## Keep in touch and help out! ## Keep in touch and help out!
Haveno is a community-driven project. For it to be successful it's fundamental to have the support and help of the community. Join the community rooms on our Matrix server: Haveno is a community-driven project. For it to be successful it's fundamental to have the support and help of the community. Join the community rooms on our Matrix server:
- General discussions: **Haveno** ([#haveno:monero.social](https://matrix.to/#/#haveno:monero.social)) relayed on IRC/Libera (`#haveno`) - General discussions: **Haveno** ([#haveno:monero.social](https://matrix.to/#/#haveno:monero.social)) relayed on IRC/Libera (`#haveno`)
- Development discussions: **Haveno Development** ([#haveno-dev:monero.social](https://matrix.to/#/#haveno-dev:monero.social)) relayed on IRC/Libera (`#haveno-dev`) - Development discussions: **Haveno Development** ([#haveno-development:monero.social](https://matrix.to/#/#haveno-development:monero.social)) relayed on IRC/Libera (`#haveno-development`)
Email: contact@haveno.exchange Email: contact@haveno.exchange
Website: [haveno.exchange](https://haveno.exchange) Website: [haveno.exchange](https://haveno.exchange)
## Running a local Haveno test network
See [docs/installing.md](docs/installing.md)
## Contributing to Haveno ## Contributing to Haveno
See the [developer guide](docs/developer-guide.md) to get started developing for Haveno. See the [developer guide](docs/developer-guide.md) to get started developing for Haveno.
@ -65,7 +67,7 @@ If you are not able to contribute code and want to contribute development resour
## Bounties ## Bounties
To incentivize development and reward contributors we adopt a simple bounty system. Contributors may be awarded bounties after completing a task (resolving an issue). Take a look at the issues eligible for a bounty on the [dedicated Kanban board](https://github.com/orgs/haveno-dex/projects/2) or look for [issues labelled '💰bounty'](https://github.com/haveno-dex/haveno/issues?q=is%3Aissue+is%3Aopen+label%3A%F0%9F%92%B0bounty) in the main `haveno` repository. [Details and conditions for receiving a bounty](docs/bounties.md). To incentivize development and reward contributors, we adopt a simple bounty system. Contributors may be awarded bounties after completing a task (resolving an issue). Take a look at the [issues labeled '💰bounty'](https://github.com/haveno-dex/haveno/issues?q=is%3Aopen+is%3Aissue+label%3A%F0%9F%92%B0bounty) in the main `haveno` repository. [Details and conditions for receiving a bounty](docs/bounties.md).
## Support and sponsorships ## Support and sponsorships
@ -73,14 +75,16 @@ To bring Haveno to life, we need resources. If you have the possibility, please
### Monero ### Monero
`42sjokkT9FmiWPqVzrWPFE5NCJXwt96bkBozHf4vgLR9hXyJDqKHEHKVscAARuD7in5wV1meEcSTJTanCTDzidTe2cFXS1F` <p>
<img src="https://raw.githubusercontent.com/haveno-dex/haveno/master/media/donate_monero.png" alt="Donate Monero" width="115" height="115"><br>
<!-- ![Qr code](https://raw.githubusercontent.com/haveno-dex/haveno/master/media/qrhaveno.png) --> <code>42sjokkT9FmiWPqVzrWPFE5NCJXwt96bkBozHf4vgLR9hXyJDqKHEHKVscAARuD7in5wV1meEcSTJTanCTDzidTe2cFXS1F</code>
</p>
If you are using a wallet that supports OpenAlias (like the 'official' CLI and GUI wallets), you can simply put `fund@haveno.exchange` as the "receiver" address. If you are using a wallet that supports OpenAlias (like the 'official' CLI and GUI wallets), you can simply put `fund@haveno.exchange` as the "receiver" address.
### Bitcoin ### Bitcoin
`1AKq3CE1yBAnxGmHXbNFfNYStcByNDc5gQ` <p>
<img src="https://raw.githubusercontent.com/haveno-dex/haveno/master/media/donate_bitcoin.png" alt="Donate Bitcoin" width="115" height="115"><br>
<!-- ![Qr code](https://raw.githubusercontent.com/haveno-dex/haveno/master/media/qrbtc.png) --> <code>1AKq3CE1yBAnxGmHXbNFfNYStcByNDc5gQ</code>
</p>

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest; package haveno.apitest;
@ -78,7 +78,7 @@ public class ApiTestMain {
} catch (Throwable ex) { } catch (Throwable ex) {
err.println("Fault: An unexpected error occurred. " + err.println("Fault: An unexpected error occurred. " +
"Please file a report at https://haveno.exchange/issues"); "Please file a report at https://github.com/haveno-dex/haveno/issues");
ex.printStackTrace(err); ex.printStackTrace(err);
exit(EXIT_FAILURE); exit(EXIT_FAILURE);
} }

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest; package haveno.apitest;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest; package haveno.apitest;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest; package haveno.apitest;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest; package haveno.apitest;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.config; package haveno.apitest.config;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.config; package haveno.apitest.config;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.linux; package haveno.apitest.linux;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.linux; package haveno.apitest.linux;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.linux; package haveno.apitest.linux;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.linux; package haveno.apitest.linux;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.linux; package haveno.apitest.linux;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.linux; package haveno.apitest.linux;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.linux; package haveno.apitest.linux;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.linux; package haveno.apitest.linux;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest; package haveno.apitest;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.method; package haveno.apitest.method;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.method; package haveno.apitest.method;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.method; package haveno.apitest.method;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.method; package haveno.apitest.method;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.method; package haveno.apitest.method;
@ -43,7 +43,7 @@ import java.util.stream.Collectors;
import static haveno.apitest.config.ApiTestConfig.BTC; import static haveno.apitest.config.ApiTestConfig.BTC;
import static haveno.apitest.config.ApiTestRateMeterInterceptorConfig.getTestRateMeterInterceptorConfig; import static haveno.apitest.config.ApiTestRateMeterInterceptorConfig.getTestRateMeterInterceptorConfig;
import static haveno.cli.table.builder.TableType.BTC_BALANCE_TBL; import static haveno.cli.table.builder.TableType.BTC_BALANCE_TBL;
import static haveno.core.xmr.wallet.Restrictions.getDefaultBuyerSecurityDepositAsPercent; import static haveno.core.xmr.wallet.Restrictions.getDefaultSecurityDepositAsPercent;
import static java.lang.String.format; import static java.lang.String.format;
import static java.nio.charset.StandardCharsets.UTF_8; import static java.nio.charset.StandardCharsets.UTF_8;
import static java.util.Arrays.stream; import static java.util.Arrays.stream;
@ -157,8 +157,8 @@ public class MethodTest extends ApiTestCase {
return haveno.core.payment.PaymentAccount.fromProto(paymentAccount, CORE_PROTO_RESOLVER); return haveno.core.payment.PaymentAccount.fromProto(paymentAccount, CORE_PROTO_RESOLVER);
} }
public static final Supplier<Double> defaultBuyerSecurityDepositPct = () -> { public static final Supplier<Double> defaultSecurityDepositPct = () -> {
var defaultPct = BigDecimal.valueOf(getDefaultBuyerSecurityDepositAsPercent()); var defaultPct = BigDecimal.valueOf(getDefaultSecurityDepositAsPercent());
if (defaultPct.precision() != 2) if (defaultPct.precision() != 2)
throw new IllegalStateException(format( throw new IllegalStateException(format(
"Unexpected decimal precision, expected 2 but actual is %d%n." "Unexpected decimal precision, expected 2 but actual is %d%n."

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.method; package haveno.apitest.method;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.method.offer; package haveno.apitest.method.offer;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.method.offer; package haveno.apitest.method.offer;
@ -47,7 +47,7 @@ public class CancelOfferTest extends AbstractOfferTest {
10000000L, 10000000L,
10000000L, 10000000L,
0.00, 0.00,
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
paymentAccountId, paymentAccountId,
NO_TRIGGER_PRICE); NO_TRIGGER_PRICE);
}; };

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.method.offer; package haveno.apitest.method.offer;
@ -49,7 +49,7 @@ public class CreateOfferUsingFixedPriceTest extends AbstractOfferTest {
10_000_000L, 10_000_000L,
10_000_000L, 10_000_000L,
"36000", "36000",
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
audAccount.getId()); audAccount.getId());
log.debug("Offer #1:\n{}", toOfferTable.apply(newOffer)); log.debug("Offer #1:\n{}", toOfferTable.apply(newOffer));
assertTrue(newOffer.getIsMyOffer()); assertTrue(newOffer.getIsMyOffer());
@ -64,7 +64,8 @@ public class CreateOfferUsingFixedPriceTest extends AbstractOfferTest {
assertEquals(10_000_000, newOffer.getMinAmount()); assertEquals(10_000_000, newOffer.getMinAmount());
assertEquals("3600", newOffer.getVolume()); assertEquals("3600", newOffer.getVolume());
assertEquals("3600", newOffer.getMinVolume()); assertEquals("3600", newOffer.getMinVolume());
assertEquals(1_500_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(audAccount.getId(), newOffer.getPaymentAccountId()); assertEquals(audAccount.getId(), newOffer.getPaymentAccountId());
assertEquals(XMR, newOffer.getBaseCurrencyCode()); assertEquals(XMR, newOffer.getBaseCurrencyCode());
assertEquals("AUD", newOffer.getCounterCurrencyCode()); assertEquals("AUD", newOffer.getCounterCurrencyCode());
@ -80,7 +81,8 @@ public class CreateOfferUsingFixedPriceTest extends AbstractOfferTest {
assertEquals(10_000_000, newOffer.getMinAmount()); assertEquals(10_000_000, newOffer.getMinAmount());
assertEquals("3600", newOffer.getVolume()); assertEquals("3600", newOffer.getVolume());
assertEquals("3600", newOffer.getMinVolume()); assertEquals("3600", newOffer.getMinVolume());
assertEquals(1_500_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(audAccount.getId(), newOffer.getPaymentAccountId()); assertEquals(audAccount.getId(), newOffer.getPaymentAccountId());
assertEquals(XMR, newOffer.getBaseCurrencyCode()); assertEquals(XMR, newOffer.getBaseCurrencyCode());
assertEquals("AUD", newOffer.getCounterCurrencyCode()); assertEquals("AUD", newOffer.getCounterCurrencyCode());
@ -95,7 +97,7 @@ public class CreateOfferUsingFixedPriceTest extends AbstractOfferTest {
10_000_000L, 10_000_000L,
10_000_000L, 10_000_000L,
"30000.1234", "30000.1234",
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
usdAccount.getId()); usdAccount.getId());
log.debug("Offer #2:\n{}", toOfferTable.apply(newOffer)); log.debug("Offer #2:\n{}", toOfferTable.apply(newOffer));
assertTrue(newOffer.getIsMyOffer()); assertTrue(newOffer.getIsMyOffer());
@ -110,7 +112,8 @@ public class CreateOfferUsingFixedPriceTest extends AbstractOfferTest {
assertEquals(10_000_000, newOffer.getMinAmount()); assertEquals(10_000_000, newOffer.getMinAmount());
assertEquals("3000", newOffer.getVolume()); assertEquals("3000", newOffer.getVolume());
assertEquals("3000", newOffer.getMinVolume()); assertEquals("3000", newOffer.getMinVolume());
assertEquals(1_500_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(usdAccount.getId(), newOffer.getPaymentAccountId()); assertEquals(usdAccount.getId(), newOffer.getPaymentAccountId());
assertEquals(XMR, newOffer.getBaseCurrencyCode()); assertEquals(XMR, newOffer.getBaseCurrencyCode());
assertEquals(USD, newOffer.getCounterCurrencyCode()); assertEquals(USD, newOffer.getCounterCurrencyCode());
@ -126,7 +129,8 @@ public class CreateOfferUsingFixedPriceTest extends AbstractOfferTest {
assertEquals(10_000_000, newOffer.getMinAmount()); assertEquals(10_000_000, newOffer.getMinAmount());
assertEquals("3000", newOffer.getVolume()); assertEquals("3000", newOffer.getVolume());
assertEquals("3000", newOffer.getMinVolume()); assertEquals("3000", newOffer.getMinVolume());
assertEquals(1_500_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(usdAccount.getId(), newOffer.getPaymentAccountId()); assertEquals(usdAccount.getId(), newOffer.getPaymentAccountId());
assertEquals(XMR, newOffer.getBaseCurrencyCode()); assertEquals(XMR, newOffer.getBaseCurrencyCode());
assertEquals(USD, newOffer.getCounterCurrencyCode()); assertEquals(USD, newOffer.getCounterCurrencyCode());
@ -141,7 +145,7 @@ public class CreateOfferUsingFixedPriceTest extends AbstractOfferTest {
10_000_000L, 10_000_000L,
5_000_000L, 5_000_000L,
"29500.1234", "29500.1234",
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
eurAccount.getId()); eurAccount.getId());
log.debug("Offer #3:\n{}", toOfferTable.apply(newOffer)); log.debug("Offer #3:\n{}", toOfferTable.apply(newOffer));
assertTrue(newOffer.getIsMyOffer()); assertTrue(newOffer.getIsMyOffer());
@ -156,7 +160,8 @@ public class CreateOfferUsingFixedPriceTest extends AbstractOfferTest {
assertEquals(5_000_000, newOffer.getMinAmount()); assertEquals(5_000_000, newOffer.getMinAmount());
assertEquals("2950", newOffer.getVolume()); assertEquals("2950", newOffer.getVolume());
assertEquals("1475", newOffer.getMinVolume()); assertEquals("1475", newOffer.getMinVolume());
assertEquals(1_500_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(eurAccount.getId(), newOffer.getPaymentAccountId()); assertEquals(eurAccount.getId(), newOffer.getPaymentAccountId());
assertEquals(XMR, newOffer.getBaseCurrencyCode()); assertEquals(XMR, newOffer.getBaseCurrencyCode());
assertEquals(EUR, newOffer.getCounterCurrencyCode()); assertEquals(EUR, newOffer.getCounterCurrencyCode());
@ -172,7 +177,8 @@ public class CreateOfferUsingFixedPriceTest extends AbstractOfferTest {
assertEquals(5_000_000, newOffer.getMinAmount()); assertEquals(5_000_000, newOffer.getMinAmount());
assertEquals("2950", newOffer.getVolume()); assertEquals("2950", newOffer.getVolume());
assertEquals("1475", newOffer.getMinVolume()); assertEquals("1475", newOffer.getMinVolume());
assertEquals(1_500_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(eurAccount.getId(), newOffer.getPaymentAccountId()); assertEquals(eurAccount.getId(), newOffer.getPaymentAccountId());
assertEquals(XMR, newOffer.getBaseCurrencyCode()); assertEquals(XMR, newOffer.getBaseCurrencyCode());
assertEquals(EUR, newOffer.getCounterCurrencyCode()); assertEquals(EUR, newOffer.getCounterCurrencyCode());

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.method.offer; package haveno.apitest.method.offer;
@ -66,7 +66,7 @@ public class CreateOfferUsingMarketPriceMarginTest extends AbstractOfferTest {
10_000_000L, 10_000_000L,
10_000_000L, 10_000_000L,
priceMarginPctInput, priceMarginPctInput,
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
usdAccount.getId(), usdAccount.getId(),
NO_TRIGGER_PRICE); NO_TRIGGER_PRICE);
log.debug("Offer #1:\n{}", toOfferTable.apply(newOffer)); log.debug("Offer #1:\n{}", toOfferTable.apply(newOffer));
@ -80,7 +80,8 @@ public class CreateOfferUsingMarketPriceMarginTest extends AbstractOfferTest {
assertEquals(priceMarginPctInput, newOffer.getMarketPriceMarginPct()); assertEquals(priceMarginPctInput, newOffer.getMarketPriceMarginPct());
assertEquals(10_000_000, newOffer.getAmount()); assertEquals(10_000_000, newOffer.getAmount());
assertEquals(10_000_000, newOffer.getMinAmount()); assertEquals(10_000_000, newOffer.getMinAmount());
assertEquals(1_500_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(usdAccount.getId(), newOffer.getPaymentAccountId()); assertEquals(usdAccount.getId(), newOffer.getPaymentAccountId());
assertEquals(BTC, newOffer.getBaseCurrencyCode()); assertEquals(BTC, newOffer.getBaseCurrencyCode());
assertEquals(USD, newOffer.getCounterCurrencyCode()); assertEquals(USD, newOffer.getCounterCurrencyCode());
@ -94,7 +95,8 @@ public class CreateOfferUsingMarketPriceMarginTest extends AbstractOfferTest {
assertEquals(priceMarginPctInput, newOffer.getMarketPriceMarginPct()); assertEquals(priceMarginPctInput, newOffer.getMarketPriceMarginPct());
assertEquals(10_000_000, newOffer.getAmount()); assertEquals(10_000_000, newOffer.getAmount());
assertEquals(10_000_000, newOffer.getMinAmount()); assertEquals(10_000_000, newOffer.getMinAmount());
assertEquals(1_500_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(usdAccount.getId(), newOffer.getPaymentAccountId()); assertEquals(usdAccount.getId(), newOffer.getPaymentAccountId());
assertEquals(BTC, newOffer.getBaseCurrencyCode()); assertEquals(BTC, newOffer.getBaseCurrencyCode());
assertEquals(USD, newOffer.getCounterCurrencyCode()); assertEquals(USD, newOffer.getCounterCurrencyCode());
@ -112,7 +114,7 @@ public class CreateOfferUsingMarketPriceMarginTest extends AbstractOfferTest {
10_000_000L, 10_000_000L,
10_000_000L, 10_000_000L,
priceMarginPctInput, priceMarginPctInput,
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
nzdAccount.getId(), nzdAccount.getId(),
NO_TRIGGER_PRICE); NO_TRIGGER_PRICE);
log.debug("Offer #2:\n{}", toOfferTable.apply(newOffer)); log.debug("Offer #2:\n{}", toOfferTable.apply(newOffer));
@ -126,7 +128,8 @@ public class CreateOfferUsingMarketPriceMarginTest extends AbstractOfferTest {
assertEquals(priceMarginPctInput, newOffer.getMarketPriceMarginPct()); assertEquals(priceMarginPctInput, newOffer.getMarketPriceMarginPct());
assertEquals(10_000_000, newOffer.getAmount()); assertEquals(10_000_000, newOffer.getAmount());
assertEquals(10_000_000, newOffer.getMinAmount()); assertEquals(10_000_000, newOffer.getMinAmount());
assertEquals(1_500_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(nzdAccount.getId(), newOffer.getPaymentAccountId()); assertEquals(nzdAccount.getId(), newOffer.getPaymentAccountId());
assertEquals(BTC, newOffer.getBaseCurrencyCode()); assertEquals(BTC, newOffer.getBaseCurrencyCode());
assertEquals("NZD", newOffer.getCounterCurrencyCode()); assertEquals("NZD", newOffer.getCounterCurrencyCode());
@ -140,7 +143,8 @@ public class CreateOfferUsingMarketPriceMarginTest extends AbstractOfferTest {
assertEquals(priceMarginPctInput, newOffer.getMarketPriceMarginPct()); assertEquals(priceMarginPctInput, newOffer.getMarketPriceMarginPct());
assertEquals(10_000_000, newOffer.getAmount()); assertEquals(10_000_000, newOffer.getAmount());
assertEquals(10_000_000, newOffer.getMinAmount()); assertEquals(10_000_000, newOffer.getMinAmount());
assertEquals(1_500_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(nzdAccount.getId(), newOffer.getPaymentAccountId()); assertEquals(nzdAccount.getId(), newOffer.getPaymentAccountId());
assertEquals(BTC, newOffer.getBaseCurrencyCode()); assertEquals(BTC, newOffer.getBaseCurrencyCode());
assertEquals("NZD", newOffer.getCounterCurrencyCode()); assertEquals("NZD", newOffer.getCounterCurrencyCode());
@ -158,7 +162,7 @@ public class CreateOfferUsingMarketPriceMarginTest extends AbstractOfferTest {
10_000_000L, 10_000_000L,
5_000_000L, 5_000_000L,
priceMarginPctInput, priceMarginPctInput,
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
gbpAccount.getId(), gbpAccount.getId(),
NO_TRIGGER_PRICE); NO_TRIGGER_PRICE);
log.debug("Offer #3:\n{}", toOfferTable.apply(newOffer)); log.debug("Offer #3:\n{}", toOfferTable.apply(newOffer));
@ -172,7 +176,8 @@ public class CreateOfferUsingMarketPriceMarginTest extends AbstractOfferTest {
assertEquals(priceMarginPctInput, newOffer.getMarketPriceMarginPct()); assertEquals(priceMarginPctInput, newOffer.getMarketPriceMarginPct());
assertEquals(10_000_000, newOffer.getAmount()); assertEquals(10_000_000, newOffer.getAmount());
assertEquals(5_000_000, newOffer.getMinAmount()); assertEquals(5_000_000, newOffer.getMinAmount());
assertEquals(1_500_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(gbpAccount.getId(), newOffer.getPaymentAccountId()); assertEquals(gbpAccount.getId(), newOffer.getPaymentAccountId());
assertEquals(BTC, newOffer.getBaseCurrencyCode()); assertEquals(BTC, newOffer.getBaseCurrencyCode());
assertEquals("GBP", newOffer.getCounterCurrencyCode()); assertEquals("GBP", newOffer.getCounterCurrencyCode());
@ -186,7 +191,8 @@ public class CreateOfferUsingMarketPriceMarginTest extends AbstractOfferTest {
assertEquals(priceMarginPctInput, newOffer.getMarketPriceMarginPct()); assertEquals(priceMarginPctInput, newOffer.getMarketPriceMarginPct());
assertEquals(10_000_000, newOffer.getAmount()); assertEquals(10_000_000, newOffer.getAmount());
assertEquals(5_000_000, newOffer.getMinAmount()); assertEquals(5_000_000, newOffer.getMinAmount());
assertEquals(1_500_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(gbpAccount.getId(), newOffer.getPaymentAccountId()); assertEquals(gbpAccount.getId(), newOffer.getPaymentAccountId());
assertEquals(BTC, newOffer.getBaseCurrencyCode()); assertEquals(BTC, newOffer.getBaseCurrencyCode());
assertEquals("GBP", newOffer.getCounterCurrencyCode()); assertEquals("GBP", newOffer.getCounterCurrencyCode());
@ -204,7 +210,7 @@ public class CreateOfferUsingMarketPriceMarginTest extends AbstractOfferTest {
10_000_000L, 10_000_000L,
5_000_000L, 5_000_000L,
priceMarginPctInput, priceMarginPctInput,
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
brlAccount.getId(), brlAccount.getId(),
NO_TRIGGER_PRICE); NO_TRIGGER_PRICE);
log.debug("Offer #4:\n{}", toOfferTable.apply(newOffer)); log.debug("Offer #4:\n{}", toOfferTable.apply(newOffer));
@ -218,7 +224,8 @@ public class CreateOfferUsingMarketPriceMarginTest extends AbstractOfferTest {
assertEquals(priceMarginPctInput, newOffer.getMarketPriceMarginPct()); assertEquals(priceMarginPctInput, newOffer.getMarketPriceMarginPct());
assertEquals(10_000_000, newOffer.getAmount()); assertEquals(10_000_000, newOffer.getAmount());
assertEquals(5_000_000, newOffer.getMinAmount()); assertEquals(5_000_000, newOffer.getMinAmount());
assertEquals(1_500_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(brlAccount.getId(), newOffer.getPaymentAccountId()); assertEquals(brlAccount.getId(), newOffer.getPaymentAccountId());
assertEquals(BTC, newOffer.getBaseCurrencyCode()); assertEquals(BTC, newOffer.getBaseCurrencyCode());
assertEquals("BRL", newOffer.getCounterCurrencyCode()); assertEquals("BRL", newOffer.getCounterCurrencyCode());
@ -232,7 +239,8 @@ public class CreateOfferUsingMarketPriceMarginTest extends AbstractOfferTest {
assertEquals(priceMarginPctInput, newOffer.getMarketPriceMarginPct()); assertEquals(priceMarginPctInput, newOffer.getMarketPriceMarginPct());
assertEquals(10_000_000, newOffer.getAmount()); assertEquals(10_000_000, newOffer.getAmount());
assertEquals(5_000_000, newOffer.getMinAmount()); assertEquals(5_000_000, newOffer.getMinAmount());
assertEquals(1_500_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(brlAccount.getId(), newOffer.getPaymentAccountId()); assertEquals(brlAccount.getId(), newOffer.getPaymentAccountId());
assertEquals(BTC, newOffer.getBaseCurrencyCode()); assertEquals(BTC, newOffer.getBaseCurrencyCode());
assertEquals("BRL", newOffer.getCounterCurrencyCode()); assertEquals("BRL", newOffer.getCounterCurrencyCode());
@ -251,7 +259,7 @@ public class CreateOfferUsingMarketPriceMarginTest extends AbstractOfferTest {
10_000_000L, 10_000_000L,
5_000_000L, 5_000_000L,
0.0, 0.0,
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
usdAccount.getId(), usdAccount.getId(),
triggerPrice); triggerPrice);
assertTrue(newOffer.getIsMyOffer()); assertTrue(newOffer.getIsMyOffer());

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.method.offer; package haveno.apitest.method.offer;
@ -62,7 +62,7 @@ public class CreateXMROffersTest extends AbstractOfferTest {
100_000_000L, 100_000_000L,
75_000_000L, 75_000_000L,
"0.005", // FIXED PRICE IN BTC FOR 1 XMR "0.005", // FIXED PRICE IN BTC FOR 1 XMR
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
alicesXmrAcct.getId()); alicesXmrAcct.getId());
log.debug("Sell XMR (Buy BTC) offer:\n{}", toOfferTable.apply(newOffer)); log.debug("Sell XMR (Buy BTC) offer:\n{}", toOfferTable.apply(newOffer));
assertTrue(newOffer.getIsMyOffer()); assertTrue(newOffer.getIsMyOffer());
@ -75,7 +75,8 @@ public class CreateXMROffersTest extends AbstractOfferTest {
assertEquals("0.00500000", newOffer.getPrice()); assertEquals("0.00500000", newOffer.getPrice());
assertEquals(100_000_000L, newOffer.getAmount()); assertEquals(100_000_000L, newOffer.getAmount());
assertEquals(75_000_000L, newOffer.getMinAmount()); assertEquals(75_000_000L, newOffer.getMinAmount());
assertEquals(15_000_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(alicesXmrAcct.getId(), newOffer.getPaymentAccountId()); assertEquals(alicesXmrAcct.getId(), newOffer.getPaymentAccountId());
assertEquals(XMR, newOffer.getBaseCurrencyCode()); assertEquals(XMR, newOffer.getBaseCurrencyCode());
assertEquals(BTC, newOffer.getCounterCurrencyCode()); assertEquals(BTC, newOffer.getCounterCurrencyCode());
@ -91,7 +92,8 @@ public class CreateXMROffersTest extends AbstractOfferTest {
assertEquals("0.00500000", newOffer.getPrice()); assertEquals("0.00500000", newOffer.getPrice());
assertEquals(100_000_000L, newOffer.getAmount()); assertEquals(100_000_000L, newOffer.getAmount());
assertEquals(75_000_000L, newOffer.getMinAmount()); assertEquals(75_000_000L, newOffer.getMinAmount());
assertEquals(15_000_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(alicesXmrAcct.getId(), newOffer.getPaymentAccountId()); assertEquals(alicesXmrAcct.getId(), newOffer.getPaymentAccountId());
assertEquals(XMR, newOffer.getBaseCurrencyCode()); assertEquals(XMR, newOffer.getBaseCurrencyCode());
assertEquals(BTC, newOffer.getCounterCurrencyCode()); assertEquals(BTC, newOffer.getCounterCurrencyCode());
@ -106,7 +108,7 @@ public class CreateXMROffersTest extends AbstractOfferTest {
100_000_000L, 100_000_000L,
50_000_000L, 50_000_000L,
"0.005", // FIXED PRICE IN BTC (satoshis) FOR 1 XMR "0.005", // FIXED PRICE IN BTC (satoshis) FOR 1 XMR
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
alicesXmrAcct.getId()); alicesXmrAcct.getId());
log.debug("Buy XMR (Sell BTC) offer:\n{}", toOfferTable.apply(newOffer)); log.debug("Buy XMR (Sell BTC) offer:\n{}", toOfferTable.apply(newOffer));
assertTrue(newOffer.getIsMyOffer()); assertTrue(newOffer.getIsMyOffer());
@ -119,7 +121,8 @@ public class CreateXMROffersTest extends AbstractOfferTest {
assertEquals("0.00500000", newOffer.getPrice()); assertEquals("0.00500000", newOffer.getPrice());
assertEquals(100_000_000L, newOffer.getAmount()); assertEquals(100_000_000L, newOffer.getAmount());
assertEquals(50_000_000L, newOffer.getMinAmount()); assertEquals(50_000_000L, newOffer.getMinAmount());
assertEquals(15_000_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(alicesXmrAcct.getId(), newOffer.getPaymentAccountId()); assertEquals(alicesXmrAcct.getId(), newOffer.getPaymentAccountId());
assertEquals(XMR, newOffer.getBaseCurrencyCode()); assertEquals(XMR, newOffer.getBaseCurrencyCode());
assertEquals(BTC, newOffer.getCounterCurrencyCode()); assertEquals(BTC, newOffer.getCounterCurrencyCode());
@ -135,7 +138,8 @@ public class CreateXMROffersTest extends AbstractOfferTest {
assertEquals("0.00500000", newOffer.getPrice()); assertEquals("0.00500000", newOffer.getPrice());
assertEquals(100_000_000L, newOffer.getAmount()); assertEquals(100_000_000L, newOffer.getAmount());
assertEquals(50_000_000L, newOffer.getMinAmount()); assertEquals(50_000_000L, newOffer.getMinAmount());
assertEquals(15_000_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(alicesXmrAcct.getId(), newOffer.getPaymentAccountId()); assertEquals(alicesXmrAcct.getId(), newOffer.getPaymentAccountId());
assertEquals(XMR, newOffer.getBaseCurrencyCode()); assertEquals(XMR, newOffer.getBaseCurrencyCode());
assertEquals(BTC, newOffer.getCounterCurrencyCode()); assertEquals(BTC, newOffer.getCounterCurrencyCode());
@ -152,7 +156,7 @@ public class CreateXMROffersTest extends AbstractOfferTest {
100_000_000L, 100_000_000L,
75_000_000L, 75_000_000L,
priceMarginPctInput, priceMarginPctInput,
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
alicesXmrAcct.getId(), alicesXmrAcct.getId(),
triggerPrice); triggerPrice);
log.debug("Pending Sell XMR (Buy BTC) offer:\n{}", toOfferTable.apply(newOffer)); log.debug("Pending Sell XMR (Buy BTC) offer:\n{}", toOfferTable.apply(newOffer));
@ -169,7 +173,8 @@ public class CreateXMROffersTest extends AbstractOfferTest {
assertEquals(100_000_000L, newOffer.getAmount()); assertEquals(100_000_000L, newOffer.getAmount());
assertEquals(75_000_000L, newOffer.getMinAmount()); assertEquals(75_000_000L, newOffer.getMinAmount());
assertEquals(15_000_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(alicesXmrAcct.getId(), newOffer.getPaymentAccountId()); assertEquals(alicesXmrAcct.getId(), newOffer.getPaymentAccountId());
assertEquals(XMR, newOffer.getBaseCurrencyCode()); assertEquals(XMR, newOffer.getBaseCurrencyCode());
assertEquals(BTC, newOffer.getCounterCurrencyCode()); assertEquals(BTC, newOffer.getCounterCurrencyCode());
@ -189,7 +194,8 @@ public class CreateXMROffersTest extends AbstractOfferTest {
assertEquals(100_000_000L, newOffer.getAmount()); assertEquals(100_000_000L, newOffer.getAmount());
assertEquals(75_000_000L, newOffer.getMinAmount()); assertEquals(75_000_000L, newOffer.getMinAmount());
assertEquals(15_000_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(alicesXmrAcct.getId(), newOffer.getPaymentAccountId()); assertEquals(alicesXmrAcct.getId(), newOffer.getPaymentAccountId());
assertEquals(XMR, newOffer.getBaseCurrencyCode()); assertEquals(XMR, newOffer.getBaseCurrencyCode());
assertEquals(BTC, newOffer.getCounterCurrencyCode()); assertEquals(BTC, newOffer.getCounterCurrencyCode());
@ -205,7 +211,7 @@ public class CreateXMROffersTest extends AbstractOfferTest {
100_000_000L, 100_000_000L,
50_000_000L, 50_000_000L,
priceMarginPctInput, priceMarginPctInput,
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
alicesXmrAcct.getId(), alicesXmrAcct.getId(),
NO_TRIGGER_PRICE); NO_TRIGGER_PRICE);
log.debug("Buy XMR (Sell BTC) offer:\n{}", toOfferTable.apply(newOffer)); log.debug("Buy XMR (Sell BTC) offer:\n{}", toOfferTable.apply(newOffer));
@ -218,7 +224,8 @@ public class CreateXMROffersTest extends AbstractOfferTest {
assertTrue(newOffer.getUseMarketBasedPrice()); assertTrue(newOffer.getUseMarketBasedPrice());
assertEquals(100_000_000L, newOffer.getAmount()); assertEquals(100_000_000L, newOffer.getAmount());
assertEquals(50_000_000L, newOffer.getMinAmount()); assertEquals(50_000_000L, newOffer.getMinAmount());
assertEquals(15_000_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(alicesXmrAcct.getId(), newOffer.getPaymentAccountId()); assertEquals(alicesXmrAcct.getId(), newOffer.getPaymentAccountId());
assertEquals(XMR, newOffer.getBaseCurrencyCode()); assertEquals(XMR, newOffer.getBaseCurrencyCode());
assertEquals(BTC, newOffer.getCounterCurrencyCode()); assertEquals(BTC, newOffer.getCounterCurrencyCode());
@ -233,7 +240,8 @@ public class CreateXMROffersTest extends AbstractOfferTest {
assertTrue(newOffer.getUseMarketBasedPrice()); assertTrue(newOffer.getUseMarketBasedPrice());
assertEquals(100_000_000L, newOffer.getAmount()); assertEquals(100_000_000L, newOffer.getAmount());
assertEquals(50_000_000L, newOffer.getMinAmount()); assertEquals(50_000_000L, newOffer.getMinAmount());
assertEquals(15_000_000, newOffer.getBuyerSecurityDeposit()); assertEquals(.15, newOffer.getBuyerSecurityDepositPct());
assertEquals(.15, newOffer.getSellerSecurityDepositPct());
assertEquals(alicesXmrAcct.getId(), newOffer.getPaymentAccountId()); assertEquals(alicesXmrAcct.getId(), newOffer.getPaymentAccountId());
assertEquals(XMR, newOffer.getBaseCurrencyCode()); assertEquals(XMR, newOffer.getBaseCurrencyCode());
assertEquals(BTC, newOffer.getCounterCurrencyCode()); assertEquals(BTC, newOffer.getCounterCurrencyCode());

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.method.offer; package haveno.apitest.method.offer;
@ -47,7 +47,7 @@ public class ValidateCreateOfferTest extends AbstractOfferTest {
100000000000L, // exceeds amount limit 100000000000L, // exceeds amount limit
100000000000L, 100000000000L,
"10000.0000", "10000.0000",
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
usdAccount.getId())); usdAccount.getId()));
assertEquals("UNKNOWN: An error occurred at task: ValidateOffer", exception.getMessage()); assertEquals("UNKNOWN: An error occurred at task: ValidateOffer", exception.getMessage());
} }
@ -63,7 +63,7 @@ public class ValidateCreateOfferTest extends AbstractOfferTest {
10000000L, 10000000L,
10000000L, 10000000L,
"40000.0000", "40000.0000",
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
chfAccount.getId())); chfAccount.getId()));
String expectedError = format("UNKNOWN: cannot create EUR offer with payment account %s", chfAccount.getId()); String expectedError = format("UNKNOWN: cannot create EUR offer with payment account %s", chfAccount.getId());
assertEquals(expectedError, exception.getMessage()); assertEquals(expectedError, exception.getMessage());
@ -80,7 +80,7 @@ public class ValidateCreateOfferTest extends AbstractOfferTest {
10000000L, 10000000L,
10000000L, 10000000L,
"63000.0000", "63000.0000",
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
audAccount.getId())); audAccount.getId()));
String expectedError = format("UNKNOWN: cannot create CAD offer with payment account %s", audAccount.getId()); String expectedError = format("UNKNOWN: cannot create CAD offer with payment account %s", audAccount.getId());
assertEquals(expectedError, exception.getMessage()); assertEquals(expectedError, exception.getMessage());

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.method.payment; package haveno.apitest.method.payment;
@ -676,7 +676,7 @@ public class CreatePaymentAccountTest extends AbstractPaymentAccountTest {
assertEquals(COMPLETED_FORM_MAP.get(PROPERTY_NAME_SELECTED_TRADE_CURRENCY), assertEquals(COMPLETED_FORM_MAP.get(PROPERTY_NAME_SELECTED_TRADE_CURRENCY),
paymentAccount.getSelectedTradeCurrency().getCode()); paymentAccount.getSelectedTradeCurrency().getCode());
verifyCommonFormEntries(paymentAccount); verifyCommonFormEntries(paymentAccount);
assertEquals(COMPLETED_FORM_MAP.get(PROPERTY_NAME_USERNAME), paymentAccount.getUserName()); assertEquals(COMPLETED_FORM_MAP.get(PROPERTY_NAME_USERNAME), paymentAccount.getUsername());
print(paymentAccount); print(paymentAccount);
} }

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.method.trade; package haveno.apitest.method.trade;
@ -52,7 +52,7 @@ public class TakeBuyBTCOfferTest extends AbstractTradeTest {
12_500_000L, 12_500_000L,
12_500_000L, // min-amount = amount 12_500_000L, // min-amount = amount
0.00, 0.00,
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
alicesUsdAccount.getId(), alicesUsdAccount.getId(),
NO_TRIGGER_PRICE); NO_TRIGGER_PRICE);
var offerId = alicesOffer.getId(); var offerId = alicesOffer.getId();

View File

@ -1,35 +1,35 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.method.trade; package haveno.apitest.method.trade;
@ -96,7 +96,7 @@ public class TakeBuyBTCOfferWithNationalBankAcctTest extends AbstractTradeTest {
1_000_000L, 1_000_000L,
1_000_000L, // min-amount = amount 1_000_000L, // min-amount = amount
0.00, 0.00,
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
alicesPaymentAccount.getId(), alicesPaymentAccount.getId(),
NO_TRIGGER_PRICE); NO_TRIGGER_PRICE);
var offerId = alicesOffer.getId(); var offerId = alicesOffer.getId();

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.method.trade; package haveno.apitest.method.trade;
@ -65,7 +65,7 @@ public class TakeBuyXMROfferTest extends AbstractTradeTest {
15_000_000L, 15_000_000L,
7_500_000L, 7_500_000L,
"0.00455500", // FIXED PRICE IN BTC (satoshis) FOR 1 XMR "0.00455500", // FIXED PRICE IN BTC (satoshis) FOR 1 XMR
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
alicesXmrAcct.getId()); alicesXmrAcct.getId());
log.debug("Alice's BUY XMR (SELL BTC) Offer:\n{}", new TableBuilder(OFFER_TBL, alicesOffer).build()); log.debug("Alice's BUY XMR (SELL BTC) Offer:\n{}", new TableBuilder(OFFER_TBL, alicesOffer).build());
genBtcBlocksThenWait(1, 5000); genBtcBlocksThenWait(1, 5000);

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.method.trade; package haveno.apitest.method.trade;
@ -58,7 +58,7 @@ public class TakeSellBTCOfferTest extends AbstractTradeTest {
12_500_000L, 12_500_000L,
12_500_000L, // min-amount = amount 12_500_000L, // min-amount = amount
0.00, 0.00,
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
alicesUsdAccount.getId(), alicesUsdAccount.getId(),
NO_TRIGGER_PRICE); NO_TRIGGER_PRICE);
var offerId = alicesOffer.getId(); var offerId = alicesOffer.getId();

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.method.trade; package haveno.apitest.method.trade;
@ -71,7 +71,7 @@ public class TakeSellXMROfferTest extends AbstractTradeTest {
20_000_000L, 20_000_000L,
10_500_000L, 10_500_000L,
priceMarginPctInput, priceMarginPctInput,
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
alicesXmrAcct.getId(), alicesXmrAcct.getId(),
NO_TRIGGER_PRICE); NO_TRIGGER_PRICE);
log.debug("Alice's SELL XMR (BUY BTC) Offer:\n{}", new TableBuilder(OFFER_TBL, alicesOffer).build()); log.debug("Alice's SELL XMR (BUY BTC) Offer:\n{}", new TableBuilder(OFFER_TBL, alicesOffer).build());

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.scenario; package haveno.apitest.scenario;
@ -57,7 +57,7 @@ public class LongRunningOfferDeactivationTest extends AbstractOfferTest {
1_000_000, 1_000_000,
1_000_000, 1_000_000,
0.00, 0.00,
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
paymentAcct.getId(), paymentAcct.getId(),
triggerPrice); triggerPrice);
log.info("SELL offer {} created with margin based price {}.", log.info("SELL offer {} created with margin based price {}.",
@ -103,7 +103,7 @@ public class LongRunningOfferDeactivationTest extends AbstractOfferTest {
1_000_000, 1_000_000,
1_000_000, 1_000_000,
0.00, 0.00,
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
paymentAcct.getId(), paymentAcct.getId(),
triggerPrice); triggerPrice);
log.info("BUY offer {} created with margin based price {}.", log.info("BUY offer {} created with margin based price {}.",

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.scenario; package haveno.apitest.scenario;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.scenario; package haveno.apitest.scenario;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.scenario; package haveno.apitest.scenario;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.scenario; package haveno.apitest.scenario;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.scenario; package haveno.apitest.scenario;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.scenario; package haveno.apitest.scenario;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.scenario.bot; package haveno.apitest.scenario.bot;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.scenario.bot; package haveno.apitest.scenario.bot;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.scenario.bot; package haveno.apitest.scenario.bot;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.scenario.bot; package haveno.apitest.scenario.bot;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.scenario.bot; package haveno.apitest.scenario.bot;
@ -28,7 +28,7 @@ import java.text.DecimalFormat;
import java.util.Objects; import java.util.Objects;
import java.util.function.Supplier; import java.util.function.Supplier;
import static haveno.apitest.method.offer.AbstractOfferTest.defaultBuyerSecurityDepositPct; import static haveno.apitest.method.offer.AbstractOfferTest.defaultSecurityDepositPct;
import static haveno.cli.CurrencyFormat.formatInternalFiatPrice; import static haveno.cli.CurrencyFormat.formatInternalFiatPrice;
import static haveno.cli.CurrencyFormat.formatSatoshis; import static haveno.cli.CurrencyFormat.formatSatoshis;
import static haveno.common.util.MathUtils.scaleDownByPowerOf10; import static haveno.common.util.MathUtils.scaleDownByPowerOf10;
@ -119,7 +119,7 @@ public class RandomOffer {
amount, amount,
minAmount, minAmount,
priceMargin, priceMargin,
defaultBuyerSecurityDepositPct.get(), defaultSecurityDepositPct.get(),
"0" /*no trigger price*/); "0" /*no trigger price*/);
} else { } else {
this.offer = botClient.createOfferAtFixedPrice(paymentAccount, this.offer = botClient.createOfferAtFixedPrice(paymentAccount,
@ -128,7 +128,7 @@ public class RandomOffer {
amount, amount,
minAmount, minAmount,
fixedOfferPrice, fixedOfferPrice,
defaultBuyerSecurityDepositPct.get()); defaultSecurityDepositPct.get());
} }
this.id = offer.getId(); this.id = offer.getId();
return this; return this;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.scenario.bot; package haveno.apitest.scenario.bot;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.scenario.bot.protocol; package haveno.apitest.scenario.bot.protocol;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.scenario.bot.script; package haveno.apitest.scenario.bot.script;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.scenario.bot.script; package haveno.apitest.scenario.bot.script;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.scenario.bot.script; package haveno.apitest.scenario.bot.script;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.apitest.scenario.bot.shutdown; package haveno.apitest.scenario.bot.shutdown;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset; package haveno.asset;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset; package haveno.asset;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset; package haveno.asset;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset; package haveno.asset;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset; package haveno.asset;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset; package haveno.asset;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset; package haveno.asset;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset; package haveno.asset;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset; package haveno.asset;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset; package haveno.asset;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset; package haveno.asset;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset; package haveno.asset;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset; package haveno.asset;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset; package haveno.asset;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset; package haveno.asset;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset; package haveno.asset;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset; package haveno.asset;

View File

@ -15,13 +15,15 @@
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Haveno. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset.tokens; package haveno.asset;
import haveno.asset.Erc20Token; /**
* Abstract base class for Tron-based {@link Token}s that implement the
* TRC-20 Token Standard.
*/
public abstract class Trc20Token extends Token {
public class USDCoin extends Erc20Token { public Trc20Token(String name, String tickerSymbol) {
super(name, tickerSymbol, new RegexAddressValidator("T[A-Za-z1-9]{33}"));
public USDCoin() {
super("USD Coin", "USDC");
} }
} }

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset.coins; package haveno.asset.coins;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset.coins; package haveno.asset.coins;

View File

@ -1,35 +1,36 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset.coins; package haveno.asset.coins;
import haveno.asset.Base58AddressValidator; import haveno.asset.BitcoinAddressValidator;
import haveno.asset.Coin; import haveno.asset.Coin;
import haveno.asset.NetworkParametersAdapter; import haveno.asset.NetworkParametersAdapter;
public class Litecoin extends Coin { public class Litecoin extends Coin {
public Litecoin() { public Litecoin() {
super("Litecoin", "LTC", new Base58AddressValidator(new LitecoinMainNetParams()), Network.MAINNET); super("Litecoin", "LTC", new BitcoinAddressValidator(new LitecoinMainNetParams()), Network.MAINNET);
} }
public static class LitecoinMainNetParams extends NetworkParametersAdapter { public static class LitecoinMainNetParams extends NetworkParametersAdapter {
public LitecoinMainNetParams() { public LitecoinMainNetParams() {
this.addressHeader = 48; this.addressHeader = 48;
this.p2shHeader = 5; this.p2shHeader = 50;
this.segwitAddressHrp = "ltc";
} }
} }
} }

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset.coins; package haveno.asset.coins;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
/** /**

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset.tokens; package haveno.asset.tokens;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset.tokens; package haveno.asset.tokens;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset.tokens; package haveno.asset.tokens;

View File

@ -0,0 +1,11 @@
package haveno.asset.tokens;
import haveno.asset.Erc20Token;
public class TetherUSDERC20 extends Erc20Token {
public TetherUSDERC20() {
// If you add a new USDT variant or want to change this ticker symbol you should also look here:
// core/src/main/java/haveno/core/provider/price/PriceProvider.java:getAll()
super("Tether USD (ERC20)", "USDT-ERC20");
}
}

View File

@ -0,0 +1,11 @@
package haveno.asset.tokens;
import haveno.asset.Trc20Token;
public class TetherUSDTRC20 extends Trc20Token {
public TetherUSDTRC20() {
// If you add a new USDT variant or want to change this ticker symbol you should also look here:
// core/src/main/java/haveno/core/provider/price/PriceProvider.java:getAll()
super("Tether USD (TRC20)", "USDT-TRC20");
}
}

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset.tokens; package haveno.asset.tokens;

View File

@ -0,0 +1,27 @@
/*
* This file is part of Bisq.
*
* Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version.
*
* Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/
package haveno.asset.tokens;
import haveno.asset.Erc20Token;
public class USDCoinERC20 extends Erc20Token {
public USDCoinERC20() {
super("USD Coin (ERC20)", "USDC-ERC20");
}
}

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset.tokens; package haveno.asset.tokens;

View File

@ -7,4 +7,7 @@ haveno.asset.coins.BitcoinCash
haveno.asset.coins.Ether haveno.asset.coins.Ether
haveno.asset.coins.Litecoin haveno.asset.coins.Litecoin
haveno.asset.coins.Monero haveno.asset.coins.Monero
haveno.asset.tokens.TetherUSDERC20
haveno.asset.tokens.TetherUSDTRC20
haveno.asset.tokens.USDCoinERC20
haveno.asset.coins.Wownero haveno.asset.coins.Wownero

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset; package haveno.asset;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset.coins; package haveno.asset.coins;
@ -32,6 +32,7 @@ public class BitcoinTest extends AbstractAssetTest {
assertValidAddress("3EktnHQD7RiAE6uzMj2ZifT9YgRrkSgzQX"); assertValidAddress("3EktnHQD7RiAE6uzMj2ZifT9YgRrkSgzQX");
assertValidAddress("1111111111111111111114oLvT2"); assertValidAddress("1111111111111111111114oLvT2");
assertValidAddress("1BitcoinEaterAddressDontSendf59kuE"); assertValidAddress("1BitcoinEaterAddressDontSendf59kuE");
assertValidAddress("bc1qj89046x7zv6pm4n00qgqp505nvljnfp6xfznyw");
} }
@Test @Test

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset.coins; package haveno.asset.coins;
@ -31,6 +31,17 @@ public class LitecoinTest extends AbstractAssetTest {
assertValidAddress("Lg3PX8wRWmApFCoCMAsPF5P9dPHYQHEWKW"); assertValidAddress("Lg3PX8wRWmApFCoCMAsPF5P9dPHYQHEWKW");
assertValidAddress("LTuoeY6RBHV3n3cfhXVVTbJbxzxnXs9ofm"); assertValidAddress("LTuoeY6RBHV3n3cfhXVVTbJbxzxnXs9ofm");
assertValidAddress("LgfapHEPhZbRF9pMd5WPT35hFXcZS1USrW"); assertValidAddress("LgfapHEPhZbRF9pMd5WPT35hFXcZS1USrW");
assertValidAddress("M8T1B2Z97gVdvmfkQcAtYbEepune1tzGua");
assertValidAddress("ltc1qr07zu594qf63xm7l7x6pu3a2v39m2z6hh5pp4t");
assertValidAddress("ltc1qzvcgmntglcuv4smv3lzj6k8szcvsrmvk0phrr9wfq8w493r096ssm2fgsw");
assertValidAddress("MESruSiB2uC9i7tMU6VMUVom91ohM7Rnbd");
assertValidAddress("ltc1q2a0laq2jg2gntzhfs43qptajd325kkx7hrq9cs");
assertValidAddress("ltc1qd6d54mt8xxcg0xg3l0vh6fymdfvd2tv0vnwyrv");
assertValidAddress("ltc1gmay6ht028aurcm680f8e8wxdup07y2tq46f6z2d4v8rutewqmmcqk29jtm");
assertValidAddress("MTf4tP1TCNBn8dNkyxeBVoPrFCcVzxJvvh");
assertValidAddress("LaRoRBC6utQtY3U2FbHwhmhhDPyxodDeKA");
assertValidAddress("MDMFP9Dx84tyaxiYksjvkG1jymBdqCuHGA");
//assertValidAddress("3MSvaVbVFFLML86rt5eqgA9SvW23upaXdY"); // deprecated
} }
@Test @Test
@ -38,5 +49,14 @@ public class LitecoinTest extends AbstractAssetTest {
assertInvalidAddress("1LgfapHEPhZbRF9pMd5WPT35hFXcZS1USrW"); assertInvalidAddress("1LgfapHEPhZbRF9pMd5WPT35hFXcZS1USrW");
assertInvalidAddress("LgfapHEPhZbdRF9pMd5WPT35hFXcZS1USrW"); assertInvalidAddress("LgfapHEPhZbdRF9pMd5WPT35hFXcZS1USrW");
assertInvalidAddress("LgfapHEPhZbRF9pMd5WPT35hFXcZS1USrW#"); assertInvalidAddress("LgfapHEPhZbRF9pMd5WPT35hFXcZS1USrW#");
assertInvalidAddress("3MSvaVbVFFLML86rt5eqgl9SvW23upaXdY"); // contains lowercase l
assertInvalidAddress("LURw7hYhREXjWHyiXhQNsKInWtPezwNe98"); // contains uppercase I
assertInvalidAddress("LM4ch8ZtAowdiGLSnf92MrMOC9dVmve2hr"); // contains uppercase O
assertInvalidAddress("MArsfeyS7P0HzsqLpAFGC9pFdhuqHgdL2R"); // contains number 0
assertInvalidAddress("ltc1qr6quwn3v2gxpadd0cu040r9385gayk5vdcyl5"); // too short
assertInvalidAddress("ltc1q5det08ke2gpet06wczcdfs2v3hgfqllxw28uln8vxxx82qlue6uswceljma"); // too long
assertInvalidAddress("MADpfTtabZ6pDjms4pMd3ZmnrgyhTCo4N8?time=1708476729&exp=86400"); // additional information
assertInvalidAddress("ltc1q8tk47lvgqu55h4pfast39r3t9360gmll5z9m6z?time=1708476604&exp=600"); // additional information
assertInvalidAddress("ltc1q026xyextkwhmveh7rpf6v6mp5p88vwc25aynxr?time=1708476626"); // additional information
} }
} }

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.asset.coins; package haveno.asset.coins;

View File

@ -0,0 +1,43 @@
/*
* This file is part of Bisq.
*
* Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version.
*
* Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/
package haveno.asset.coins;
import haveno.asset.AbstractAssetTest;
import haveno.asset.tokens.TetherUSDERC20;
import org.junit.jupiter.api.Test;
public class TetherUSDERC20Test extends AbstractAssetTest {
public TetherUSDERC20Test() {
super(new TetherUSDERC20());
}
@Test
public void testValidAddresses() {
assertValidAddress("0x2a65Aca4D5fC5B5C859090a6c34d164135398226");
assertValidAddress("2a65Aca4D5fC5B5C859090a6c34d164135398226");
}
@Test
public void testInvalidAddresses() {
assertInvalidAddress("0x2a65Aca4D5fC5B5C859090a6c34d1641353982266");
assertInvalidAddress("0x2a65Aca4D5fC5B5C859090a6c34d16413539822g");
assertInvalidAddress("2a65Aca4D5fC5B5C859090a6c34d16413539822g");
}
}

View File

@ -0,0 +1,42 @@
/*
* This file is part of Haveno.
*
* Haveno is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version.
*
* Haveno is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>.
*/
package haveno.asset.coins;
import haveno.asset.AbstractAssetTest;
import haveno.asset.tokens.TetherUSDTRC20;
import org.junit.jupiter.api.Test;
public class TetherUSDTRC20Test extends AbstractAssetTest {
public TetherUSDTRC20Test() {
super(new TetherUSDTRC20());
}
@Test
public void testValidAddresses() {
assertValidAddress("TVnmu3E6DYVL4bpAoZnPNEPVUrgC7eSWaX");
}
@Test
public void testInvalidAddresses() {
assertInvalidAddress("0x2a65Aca4D5fC5B5C859090a6c34d1641353982266");
assertInvalidAddress("0x2a65Aca4D5fC5B5C859090a6c34d16413539822g");
assertInvalidAddress("2a65Aca4D5fC5B5C859090a6c34d16413539822g");
}
}

View File

@ -9,8 +9,8 @@ buildscript {
classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.17' classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.17'
classpath 'com.google.gradle:osdetector-gradle-plugin:1.7.3' classpath 'com.google.gradle:osdetector-gradle-plugin:1.7.3'
classpath 'com.github.johnrengelman:shadow:8.1.1' classpath 'com.github.johnrengelman:shadow:8.1.1'
classpath 'org.springframework.boot:spring-boot-gradle-plugin:2.6.3' classpath 'org.springframework.boot:spring-boot-gradle-plugin:3.2.3'
classpath 'com.gradle:gradle-enterprise-gradle-plugin:3.12.4' // added for windows build verification-metadata.xml error classpath 'com.gradle:gradle-enterprise-gradle-plugin:3.16.1' // added for windows build verification-metadata.xml error
} }
} }
@ -31,7 +31,7 @@ configure(subprojects) {
apply plugin: 'jacoco-report-aggregation' apply plugin: 'jacoco-report-aggregation'
apply plugin: 'checkstyle' apply plugin: 'checkstyle'
sourceCompatibility = JavaVersion.VERSION_11 sourceCompatibility = JavaVersion.VERSION_21
ext { // in alphabetical order ext { // in alphabetical order
bcVersion = '1.63' bcVersion = '1.63'
@ -47,16 +47,16 @@ configure(subprojects) {
fontawesomefxMaterialdesignfontVersion = '2.0.26-9.1.2' fontawesomefxMaterialdesignfontVersion = '2.0.26-9.1.2'
grpcVersion = '1.42.1' grpcVersion = '1.42.1'
gsonVersion = '2.8.5' gsonVersion = '2.8.5'
guavaVersion = '30.1.1-jre' guavaVersion = '32.1.1-jre'
guiceVersion = '5.1.0' guiceVersion = '7.0.0'
moneroJavaVersion = '0.8.6' moneroJavaVersion = '0.8.33'
httpclient5Version = '5.0' httpclient5Version = '5.0'
hamcrestVersion = '2.2' hamcrestVersion = '2.2'
httpclientVersion = '4.5.12' httpclientVersion = '4.5.12'
httpcoreVersion = '4.4.13' httpcoreVersion = '4.4.13'
ioVersion = '2.6' ioVersion = '2.6'
jacksonVersion = '2.12.1' jacksonVersion = '2.12.1'
javafxVersion = '16' javafxVersion = '21.0.2'
javaxAnnotationVersion = '1.2' javaxAnnotationVersion = '1.2'
jcsvVersion = '1.4.0' jcsvVersion = '1.4.0'
jetbrainsAnnotationsVersion = '13.0' jetbrainsAnnotationsVersion = '13.0'
@ -69,9 +69,9 @@ configure(subprojects) {
langVersion = '3.11' langVersion = '3.11'
logbackVersion = '1.1.11' logbackVersion = '1.1.11'
loggingVersion = '1.2' loggingVersion = '1.2'
lombokVersion = '1.18.24' lombokVersion = '1.18.30'
mockitoVersion = '5.2.0' mockitoVersion = '5.10.0'
netlayerVersion = '6797461310f077bbea4f43a3a509c077b0ed8c34' // Netlayer version 0.7.3 with Tor browser version 11.0.14 and tor binary version: 0.4.7.7 netlayerVersion = 'e2ce2a142c' // Tor browser version 13.0.15 and tor binary version: 0.4.8.11
protobufVersion = '3.19.1' protobufVersion = '3.19.1'
protocVersion = protobufVersion protocVersion = protobufVersion
pushyVersion = '0.13.2' pushyVersion = '0.13.2'
@ -163,18 +163,33 @@ configure([project(':cli'),
// edit generated shell scripts such that they expect to be executed in the // edit generated shell scripts such that they expect to be executed in the
// project root dir as opposed to a 'bin' subdirectory // project root dir as opposed to a 'bin' subdirectory
if (osdetector.os == 'windows') {
def windowsScriptFile = file("${rootProject.projectDir}/haveno-${applicationName}.bat") def windowsScriptFile = file("${rootProject.projectDir}/haveno-${applicationName}.bat")
windowsScriptFile.text = windowsScriptFile.text.replace( windowsScriptFile.text = windowsScriptFile.text.replace(
'set APP_HOME=%DIRNAME%..', 'set APP_HOME=%DIRNAME%') 'set APP_HOME=%DIRNAME%..', 'set APP_HOME=%DIRNAME%')
if (applicationName == 'desktop') {
windowsScriptFile.text = windowsScriptFile.text.replace(
'DEFAULT_JVM_OPTS=', 'DEFAULT_JVM_OPTS=-XX:MaxRAM=4g ' +
'--add-opens=javafx.controls/com.sun.javafx.scene.control.behavior=ALL-UNNAMED ' +
'--add-opens=javafx.controls/com.sun.javafx.scene.control=ALL-UNNAMED ' +
'--add-opens=java.base/java.lang.reflect=ALL-UNNAMED ' +
'--add-opens=javafx.graphics/com.sun.javafx.scene=ALL-UNNAMED')
}
}
else {
def unixScriptFile = file("${rootProject.projectDir}/haveno-$applicationName") def unixScriptFile = file("${rootProject.projectDir}/haveno-$applicationName")
unixScriptFile.text = unixScriptFile.text.replace( unixScriptFile.text = unixScriptFile.text.replace(
'APP_HOME=$( cd "${APP_HOME:-./}.." && pwd -P ) || exit', 'APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit') 'APP_HOME=$( cd "${APP_HOME:-./}.." > /dev/null && pwd -P ) || exit', 'APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit')
if (applicationName == 'desktop') { if (applicationName == 'desktop') {
def script = file("${rootProject.projectDir}/haveno-$applicationName") unixScriptFile.text = unixScriptFile.text.replace(
script.text = script.text.replace( 'DEFAULT_JVM_OPTS=""', 'DEFAULT_JVM_OPTS="-XX:MaxRAM=4g ' +
'DEFAULT_JVM_OPTS=""', 'DEFAULT_JVM_OPTS="-XX:MaxRAM=4g"') '--add-opens=javafx.controls/com.sun.javafx.scene.control.behavior=ALL-UNNAMED ' +
'--add-opens=javafx.controls/com.sun.javafx.scene.control=ALL-UNNAMED ' +
'--add-opens=java.base/java.lang.reflect=ALL-UNNAMED ' +
'--add-opens=javafx.graphics/com.sun.javafx.scene=ALL-UNNAMED"')
}
} }
if (applicationName == 'apitest') { if (applicationName == 'apitest') {
@ -302,9 +317,8 @@ configure(project(':common')) {
exclude(module: 'animal-sniffer-annotations') exclude(module: 'animal-sniffer-annotations')
} }
// override transitive dependency version from 1.5 to the same version just identified by commit number. // override transitive dependency and use latest version from bisq
// Remove this if transitive dependency is changed to something else than 1.5 implementation(group: 'com.github.bisq-network', name: 'jtorctl') { version { strictly "[b2a172f44edcd8deaa5ed75d936dcbb007f0d774]" } }
implementation(group: 'com.github.JesusMcCloud', name: 'jtorctl') { version { strictly "[9b5ba2036b]" } }
implementation "org.openjfx:javafx-base:$javafxVersion:$os" implementation "org.openjfx:javafx-base:$javafxVersion:$os"
implementation "org.openjfx:javafx-graphics:$javafxVersion:$os" implementation "org.openjfx:javafx-graphics:$javafxVersion:$os"
} }
@ -320,10 +334,11 @@ configure(project(':p2p')) {
implementation "com.google.protobuf:protobuf-java:$protobufVersion" implementation "com.google.protobuf:protobuf-java:$protobufVersion"
implementation "org.fxmisc.easybind:easybind:$easybindVersion" implementation "org.fxmisc.easybind:easybind:$easybindVersion"
implementation "org.slf4j:slf4j-api:$slf4jVersion" implementation "org.slf4j:slf4j-api:$slf4jVersion"
implementation("com.github.bisq-network.netlayer:tor.external:$netlayerVersion") { implementation "org.apache.commons:commons-lang3:$langVersion"
implementation("com.github.haveno-dex.netlayer:tor.external:$netlayerVersion") {
exclude(module: 'slf4j-api') exclude(module: 'slf4j-api')
} }
implementation("com.github.bisq-network.netlayer:tor.native:$netlayerVersion") { implementation("com.github.haveno-dex.netlayer:tor.native:$netlayerVersion") {
exclude(module: 'slf4j-api') exclude(module: 'slf4j-api')
} }
implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") {
@ -350,6 +365,7 @@ configure(project(':p2p')) {
testImplementation "ch.qos.logback:logback-core:$logbackVersion" testImplementation "ch.qos.logback:logback-core:$logbackVersion"
testImplementation "org.apache.commons:commons-lang3:$langVersion" testImplementation "org.apache.commons:commons-lang3:$langVersion"
testImplementation("org.mockito:mockito-core:$mockitoVersion") testImplementation("org.mockito:mockito-core:$mockitoVersion")
testImplementation("org.mockito:mockito-junit-jupiter:$mockitoVersion")
implementation "org.openjfx:javafx-base:$javafxVersion:$os" implementation "org.openjfx:javafx-base:$javafxVersion:$os"
implementation "org.openjfx:javafx-graphics:$javafxVersion:$os" implementation "org.openjfx:javafx-graphics:$javafxVersion:$os"
@ -384,10 +400,10 @@ configure(project(':core')) {
implementation("com.fasterxml.jackson.core:jackson-databind:$jacksonVersion") { implementation("com.fasterxml.jackson.core:jackson-databind:$jacksonVersion") {
exclude(module: 'jackson-annotations') exclude(module: 'jackson-annotations')
} }
implementation("com.github.bisq-network.netlayer:tor.native:$netlayerVersion") { implementation("com.github.haveno-dex.netlayer:tor.native:$netlayerVersion") {
exclude(module: 'slf4j-api') exclude(module: 'slf4j-api')
} }
implementation("com.github.bisq-network.netlayer:tor.external:$netlayerVersion") { implementation("com.github.haveno-dex.netlayer:tor.external:$netlayerVersion") {
exclude(module: 'slf4j-api') exclude(module: 'slf4j-api')
} }
implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") { implementation("com.github.bisq-network:bitcoinj:$bitcoinjVersion") {
@ -419,7 +435,7 @@ configure(project(':core')) {
implementation "org.openjfx:javafx-base:$javafxVersion:$os" implementation "org.openjfx:javafx-base:$javafxVersion:$os"
implementation "org.openjfx:javafx-graphics:$javafxVersion:$os" implementation "org.openjfx:javafx-graphics:$javafxVersion:$os"
implementation("io.github.monero-ecosystem:monero-java:$moneroJavaVersion") { implementation("io.github.woodser:monero-java:$moneroJavaVersion") {
exclude(module: 'jackson-core') exclude(module: 'jackson-core')
exclude(module: 'jackson-annotations') exclude(module: 'jackson-annotations')
exclude(module: 'jackson-databind') exclude(module: 'jackson-databind')
@ -432,16 +448,23 @@ configure(project(':core')) {
systemProperty 'jdk.attach.allowAttachSelf', true systemProperty 'jdk.attach.allowAttachSelf', true
} }
task generateKeypairs(type: JavaExec) {
mainClass = 'haveno.core.util.GenerateKeyPairs'
classpath = sourceSets.main.runtimeClasspath
}
task havenoDeps { task havenoDeps {
doLast { doLast {
// get monero binaries download url // get monero binaries download url
Map moneroBinaries = [ Map moneroBinaries = [
'linux' : 'https://github.com/haveno-dex/monero/releases/download/testing13/monero-bins-haveno-linux.tar.gz', 'linux-x86_64' : 'https://github.com/haveno-dex/monero/releases/download/release4/monero-bins-haveno-linux-x86_64.tar.gz',
'linux-sha256' : 'eac55092b97162854f2a94f7895d52cf4a20eba0a55a1769ce053060d6be6195', 'linux-x86_64-sha256' : '0810808292fd5ad595a46a7fcc8ecb28d251d80f8d75c0e7a7d51afbeb413b68',
'mac' : 'https://github.com/haveno-dex/monero/releases/download/testing13/monero-bins-haveno-mac.tar.gz', 'linux-aarch64' : 'https://github.com/haveno-dex/monero/releases/download/release4/monero-bins-haveno-linux-aarch64.tar.gz',
'mac-sha256' : 'e7bf40ef35cb278649c63f8651cee6124d4a5e97448dfa407b193572ebd85fb6', 'linux-aarch64-sha256' : '61222ee8e2021aaf59ab8813543afc5548f484190ee9360bc9cfa8fdf21cc1de',
'windows' : 'https://github.com/haveno-dex/monero/releases/download/testing13/monero-bins-haveno-windows.zip', 'mac' : 'https://github.com/haveno-dex/monero/releases/download/release4/monero-bins-haveno-mac.tar.gz',
'windows-sha256': 'f7da08d793041103c069b23229040fc4f9632009317b84d201f63f477d3ca3dd' 'mac-sha256' : '5debb8d8d8dd63809e8351368a11aa85c47987f1a8a8f2dcca343e60bcff3287',
'windows' : 'https://github.com/haveno-dex/monero/releases/download/release4/monero-bins-haveno-windows.zip',
'windows-sha256' : 'd7c14f029db37ae2a8bc6b74c35f572283257df5fbcc8cc97b704d1a97be9888'
] ]
String osKey String osKey
@ -450,7 +473,12 @@ configure(project(':core')) {
} else if (Os.isFamily(Os.FAMILY_MAC)) { } else if (Os.isFamily(Os.FAMILY_MAC)) {
osKey = 'mac' osKey = 'mac'
} else { } else {
osKey = 'linux' String architecture = System.getProperty("os.arch").toLowerCase()
if (architecture.contains('aarch64') || architecture.contains('arm')) {
osKey = 'linux-aarch64'
} else {
osKey = 'linux-x86_64'
}
} }
String moneroDownloadUrl = moneroBinaries[osKey] String moneroDownloadUrl = moneroBinaries[osKey]
@ -509,6 +537,7 @@ configure(project(':core')) {
ext.downloadAndVerifyDependencies = { String archiveURL, String archiveSHA256, File destinationArchiveFile -> ext.downloadAndVerifyDependencies = { String archiveURL, String archiveSHA256, File destinationArchiveFile ->
ext.dependencyDownloadedAndVerified = false ext.dependencyDownloadedAndVerified = false
// if archive exists, check to see if its already up to date // if archive exists, check to see if its already up to date
if (destinationArchiveFile.exists()) { if (destinationArchiveFile.exists()) {
println "Verifying existing archive ${destinationArchiveFile}" println "Verifying existing archive ${destinationArchiveFile}"
@ -522,14 +551,15 @@ configure(project(':core')) {
} }
} }
// download archives
println "Downloading ${archiveURL}" println "Downloading ${archiveURL}"
ant.get(src: archiveURL, dest: destinationArchiveFile) ant.get(src: archiveURL, dest: destinationArchiveFile)
println 'Download saved to ' + destinationArchiveFile println 'Download saved to ' + destinationArchiveFile
// verify checksum
println 'Verifying checksum for downloaded binary ...' println 'Verifying checksum for downloaded binary ...'
ant.archiveHash = archiveSHA256 ant.archiveHash = archiveSHA256
// use a different verifyProperty name from existing verification or it will always fail ant.checksum(file: destinationArchiveFile, algorithm: 'SHA-256', property: '${archiveHash}', verifyProperty: 'downloadedHashMatches') // use a different verifyProperty name from existing verification or it will always fail
ant.checksum(file: destinationArchiveFile, algorithm: 'SHA-256', property: '${archiveHash}', verifyProperty: 'downloadedHashMatches')
if (ant.properties['downloadedHashMatches'] != 'true') { if (ant.properties['downloadedHashMatches'] != 'true') {
ant.fail('Checksum mismatch: Downloaded archive has a different checksum than expected') ant.fail('Checksum mismatch: Downloaded archive has a different checksum than expected')
} }
@ -580,7 +610,7 @@ configure(project(':desktop')) {
apply plugin: 'com.github.johnrengelman.shadow' apply plugin: 'com.github.johnrengelman.shadow'
apply from: 'package/package.gradle' apply from: 'package/package.gradle'
version = '1.0.11-SNAPSHOT' version = '1.0.14-SNAPSHOT'
jar.manifest.attributes( jar.manifest.attributes(
"Implementation-Title": project.name, "Implementation-Title": project.name,
@ -641,7 +671,7 @@ configure(project(':desktop')) {
testImplementation "org.junit.jupiter:junit-jupiter-api:$jupiterVersion" testImplementation "org.junit.jupiter:junit-jupiter-api:$jupiterVersion"
testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:$jupiterVersion" testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:$jupiterVersion"
implementation("io.github.monero-ecosystem:monero-java:$moneroJavaVersion") { implementation("io.github.woodser:monero-java:$moneroJavaVersion") {
exclude(module: 'jackson-core') exclude(module: 'jackson-core')
exclude(module: 'jackson-annotations') exclude(module: 'jackson-annotations')
exclude(module: 'jackson-databind') exclude(module: 'jackson-databind')
@ -675,10 +705,10 @@ configure(project(':monitor')) {
implementation "ch.qos.logback:logback-core:$logbackVersion" implementation "ch.qos.logback:logback-core:$logbackVersion"
implementation "com.google.guava:guava:$guavaVersion" implementation "com.google.guava:guava:$guavaVersion"
implementation "org.slf4j:slf4j-api:$slf4jVersion" implementation "org.slf4j:slf4j-api:$slf4jVersion"
implementation("com.github.bisq-network.netlayer:tor.external:$netlayerVersion") { implementation("com.github.haveno-dex.netlayer:tor.external:$netlayerVersion") {
exclude(module: 'slf4j-api') exclude(module: 'slf4j-api')
} }
implementation("com.github.bisq-network.netlayer:tor.native:$netlayerVersion") { implementation("com.github.haveno-dex.netlayer:tor.native:$netlayerVersion") {
exclude(module: 'slf4j-api') exclude(module: 'slf4j-api')
} }
implementation("com.google.inject:guice:$guiceVersion") { implementation("com.google.inject:guice:$guiceVersion") {
@ -805,7 +835,7 @@ configure(project(':daemon')) {
testImplementation "org.junit.jupiter:junit-jupiter-params:$jupiterVersion" testImplementation "org.junit.jupiter:junit-jupiter-params:$jupiterVersion"
testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:$jupiterVersion") testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:$jupiterVersion")
implementation("io.github.monero-ecosystem:monero-java:$moneroJavaVersion") { implementation("io.github.woodser:monero-java:$moneroJavaVersion") {
exclude(module: 'jackson-core') exclude(module: 'jackson-core')
exclude(module: 'jackson-annotations') exclude(module: 'jackson-annotations')
exclude(module: 'jackson-databind') exclude(module: 'jackson-databind')

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.cli; package haveno.cli;

View File

@ -1,18 +1,18 @@
/* /*
* This file is part of Haveno. * This file is part of Bisq.
* *
* Haveno is free software: you can redistribute it and/or modify it * Bisq is free software: you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by * under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at * the Free Software Foundation, either version 3 of the License, or (at
* your option) any later version. * your option) any later version.
* *
* Haveno is distributed in the hope that it will be useful, but WITHOUT * Bisq is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
* License for more details. * License for more details.
* *
* You should have received a copy of the GNU Affero General Public License * You should have received a copy of the GNU Affero General Public License
* along with Haveno. If not, see <http://www.gnu.org/licenses/>. * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
*/ */
package haveno.cli; package haveno.cli;

Some files were not shown because too many files have changed in this diff Show More