Package com.poker.analyst

Source Code of com.poker.analyst.TextTransfer

package com.poker.analyst;

import java.awt.Toolkit;
import java.awt.datatransfer.Clipboard;
import java.awt.datatransfer.ClipboardOwner;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.StringSelection;
import java.awt.datatransfer.Transferable;
import java.awt.datatransfer.UnsupportedFlavorException;
import java.io.IOException;

public final class TextTransfer implements ClipboardOwner {

    final static String  START_NEW_HAND  = "Dealer: Starting a new hand";
    final static String  YOUR_CARDS      = "Dealer: Your cards";
    final static String  PLAYER          = "Dealer: Player";
    final static String  DEALER          = "Dealer: ";

    final static String  DEALING         = "Dealer: Dealing";
    final static String  DEALING_PREFLOP = "Dealer: Dealing cards";
    final static String  DEALING_FLOP    = "Dealer: Dealing Flop";
    final static String  DEALING_TURN    = "Dealer: Dealing Turn";
    final static String  DEALING_RIVER   = "Dealer: Dealing River";

    final static Integer POS_SMALL_BLIND = 1;
    final static Integer POS_BIG_BLIND   = 2;
    final static Integer POS_MY_CARD     = 6;

    public void test(final String strClipboard) {

        final String clipBoard = strClipboard;
        final String[] arrClipBoard = clipBoard.split("\n");
        System.out.println("Buffer Analyzer");
        for (int i = arrClipBoard.length - 1; i > 0; i--) {
            if (arrClipBoard[i].startsWith(START_NEW_HAND)) {
                for (int j = arrClipBoard.length - 1; j > i; j--) {
                    if (arrClipBoard[j].startsWith(PLAYER)) {
                        //System.out.println("skip: " + arrClipBoard[j]);
                        continue;
                    }
                    if (arrClipBoard[j].equals(DEALER)) {
                        //System.out.println("skip: " + arrClipBoard[j]);
                        continue;
                    }
                    if (arrClipBoard[j].startsWith(DEALER)) {
                        System.out.println("action: " + arrClipBoard[j].substring(8));
                        continue;
                    }

                    //end current turn
                    if (arrClipBoard[j].startsWith(DEALING)) {
                        if (arrClipBoard[j].startsWith(DEALING_PREFLOP)) {
                            //System.out.println("turn is preflop");
                            continue;
                        }
                        System.out.println("turn is " + arrClipBoard[j].substring(8));
                        break;
                    }
                }
                break;
            }
        }
    }

    public static void main(final String... aArguments) {

        final TextTransfer textTransfer = new TextTransfer();
        final String clipBoard = textTransfer.getClipboardContents();
        //  System.out.println(clipBoard);
        final String[] arrClipBoard = clipBoard.split("\n");

        for (int i = arrClipBoard.length - 1; i > 0; i--) {
            if (arrClipBoard[i].startsWith(START_NEW_HAND)) {
                for (int j = arrClipBoard.length - 1; j > i; j--) {
                    if (arrClipBoard[j].startsWith(PLAYER)) {
                        //System.out.println("skip: " + arrClipBoard[j]);
                        continue;
                    }
                    if (arrClipBoard[j].equals(DEALER)) {
                        //System.out.println("skip: " + arrClipBoard[j]);
                        continue;
                    }
                    if (arrClipBoard[j].startsWith(DEALER)) {
                        System.out.println("action: " + arrClipBoard[j].substring(8));
                        continue;
                    }

                    //end current turn
                    if (arrClipBoard[j].startsWith(DEALING)) {
                        if (arrClipBoard[j].startsWith(DEALING_PREFLOP)) {
                            //System.out.println("turn is preflop");
                            continue;
                        }
                        System.out.println("turn is " + arrClipBoard[j].substring(8));
                        break;
                    }
                }
                break;
            }
        }
    }

    /**
     * Empty implementation of the ClipboardOwner interface.
     */
    public void lostOwnership(final Clipboard aClipboard, final Transferable aContents) {

    // do nothing
    }

    /**
     * Place a String on the clipboard, and make this class the owner of the Clipboard's contents.
     */
    public void setClipboardContents(final String aString) {

        final StringSelection stringSelection = new StringSelection(aString);
        final Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
        clipboard.setContents(stringSelection, this);
    }

    /**
     * Get the String residing on the clipboard.
     *
     * @return any text found on the Clipboard; if none found, return an empty String.
     */
    public String getClipboardContents() {

        String result = "";
        final Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
        // odd: the Object param of getContents is not currently used
        final Transferable contents = clipboard.getContents(null);
        final boolean hasTransferableText = contents != null
                && contents.isDataFlavorSupported(DataFlavor.stringFlavor);
        if (hasTransferableText) {
            try {
                result = (String) contents.getTransferData(DataFlavor.stringFlavor);
            } catch (final UnsupportedFlavorException ex) {
                // highly unlikely since we are using a standard DataFlavor
                System.out.println(ex);
                ex.printStackTrace();
            } catch (final IOException ex) {
                System.out.println(ex);
                ex.printStackTrace();
            }
        }
        return result;
    }
}
TOP

Related Classes of com.poker.analyst.TextTransfer

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.