/* * Copyright 2012 Kantega AS * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.kantega.helloworld.loop; /** * */ public class LoopWithInput { public void handleInput(String line) { if ("s".equals(line)) { new LoopWithInput.Exit().run(); } else if (line.startsWith("hello") || line.startsWith("hallo")) { if (line.length() > "hello".length()) { new Runnable() { public void run() { System.out.println("Cheers mate!"); } }.run(); } } else { new YouSaid().run(line); } } static class Exit { public void run() { throw new RuntimeException("End of the world"); } } } class YouSaid { public void run(String line) { if (System.currentTimeMillis() < Long.MAX_VALUE) { System.out.println("You said: " + line); } } }