public static void main()

in src/main/java/deltix/ember/sample/md/MarketDataSampleApp.java [11:72]


    public static void main(String[] args) throws ConfigError, InterruptedException {
        Application application = new Application() {
            @Override
            public void onCreate(SessionID sessionId) {}

            @Override
            public void onLogon(SessionID sessionId) {
                System.out.println("Logon - " + sessionId);
                sendMarketDataRequest(sessionId);
            }

            @Override
            public void onLogout(SessionID sessionId) {
                System.out.println("Logout - " + sessionId);
            }

            @Override
            public void toAdmin(Message message, SessionID sessionId) {
                try {
                    if (MsgType.LOGON.equals(message.getHeader().getString(MsgType.FIELD))) {
                        message.setField(new Username("user-goes-here"));      //TODO
                        message.setField(new Password("password-goes-here")); //TODO
                    }
                } catch (FieldNotFound fieldNotFound) {
                    fieldNotFound.printStackTrace();
                }
                System.out.println("Sending admin message: " + message);
            }

            @Override
            public void fromAdmin(Message message, SessionID sessionId) {
                System.out.println("Got admin message: " + message);
            }

            @Override
            public void toApp(Message message, SessionID sessionId) {
                System.out.println("Sending app message: " + message);
            }

            @Override
            public void fromApp(Message message, SessionID sessionId) throws FieldNotFound, IncorrectDataFormat, IncorrectTagValue, UnsupportedMessageType {
                String msgType = message.getHeader().getString(MsgType.FIELD);
                if (MsgType.MARKET_DATA_SNAPSHOT_FULL_REFRESH.equals(msgType)) {
                    onMarketDataSnapshot ((MarketDataSnapshotFullRefresh) message);
                } else if (MsgType.MARKET_DATA_INCREMENTAL_REFRESH.equals(msgType)) {
                    onMarketDataIncrementalUpdate((MarketDataIncrementalRefresh) message);
                } else {
                    System.err.println("Got other app message: " + message);
                }
            }
        };

        SessionSettings settings = new SessionSettings("src/main/resources/quickfixj.cfg");
        MessageStoreFactory storeFactory = new FileStoreFactory(settings);
        LogFactory logFactory = new FileLogFactory(settings);
        MessageFactory messageFactory = new DefaultMessageFactory();
        SocketInitiator initiator = new SocketInitiator(application, storeFactory, settings, logFactory, messageFactory);

        initiator.start();
        // Wait forever
        Thread.sleep(Long.MAX_VALUE);
    }