// Path: pigeon-web/src/main/java/com/trivago/mail/pigeon/web/MainApp.java
// @SuppressWarnings("serial")
// public class MainApp extends Application
// {
// 	private Window window;
// 	private MenuBar menu;
//     
// 	@Override
// 	public void init()
// 	{
// 		//DOMConfigurator.configure(Thread.currentThread().getContextClassLoader().getResource("log4j.xml"));
// //        BasicConfigurator.configure();
// 		window = new Window("Mail Pigeon");
// 		setMainWindow(window);
// 
// 		int senderSize;
// 		try
// 		{
// 			senderSize = Sender.getAll().size();
// 		} catch (NoSuchElementException e)
// 		{
// 			senderSize = 0;
// 		}
// 
// 		int recipientGroupSize;
// 		try
// 		{
// 			recipientGroupSize = RecipientGroup.getAll().size();
// 		} catch (NoSuchElementException e)
// 		{
// 			recipientGroupSize = 0;
// 		}
// 
// 		if (senderSize == 0 && recipientGroupSize == 0)
// 		{
// 			startWizard();
// 		}
// 		else
// 		{
// 			menu = new MenuBar(this);
// 			window.addComponent(menu);
// 			setDashBoard();
// 		}
// 
// 	}
// 
// 	public void initMenu()
// 	{
// 		menu = new MenuBar(this);
// 		window.addComponent(menu);
// 	}
// 
// 	public void clearWindow()
// 	{
// 		window.removeAllComponents();
// 		initMenu();
// 	}
// 
// 	public void setDashBoard()
// 	{
// 		VerticalLayout dbLayout = new VerticalLayout();
// 		dbLayout.addComponent(new Label("Can I haz Dashboard?"));
// 		window.addComponent(dbLayout);
// 
// 	}
// 
// 	public void setNewsletterList()
// 	{
// 		NewsletterList newsletterList = new NewsletterList();
// 		VerticalLayout nlLayout = new VerticalLayout();
// 		nlLayout.addComponent(newsletterList);
// 		nlLayout.setMargin(true);
// 		clearWindow();
// 		window.addComponent(nlLayout);
// 	}
// 
// 	public void setSenderList()
// 	{
// 		SenderList senderList = new SenderList();
// 		VerticalLayout slLayout = new VerticalLayout();
// 		slLayout.addComponent(senderList);
// 		slLayout.setMargin(true);
// 		clearWindow();
// 		window.addComponent(slLayout);
// 	}
// 
// 	public void setRecipientGroupList()
// 	{
// 		GroupList groupList = new GroupList();
// 		VerticalLayout rgLayout = new VerticalLayout();
// 		rgLayout.addComponent(groupList);
// 		rgLayout.setMargin(true);
// 		clearWindow();
// 		window.addComponent(rgLayout);
// 	}
// 
// 	public void setRecipientList()
// 	{
// 		RecipientList recipientList = new RecipientList();
// 		VerticalLayout rLayout = new VerticalLayout();
// 		rLayout.addComponent(recipientList);
// 		rLayout.setMargin(true);
// 		clearWindow();
// 		window.addComponent(rLayout);
// 	}
// 
// 	public void setTemplateList()
// 	{
// 		TemplateList templateList = new TemplateList();
// 		VerticalLayout tlLayout = new VerticalLayout();
// 		tlLayout.addComponent(templateList);
// 		tlLayout.setMargin(true);
// 		clearWindow();
// 		window.addComponent(tlLayout);
// 	}
// 
// 	public void startWizard()
// 	{
// 		SetupWizardComponent wb = new SetupWizardComponent();
// 		window.addComponent(wb);
// 	}
// 
// 	public MenuBar getMenu()
// 	{
// 		return menu;
// 	}
// 
// 	public void setMenu(MenuBar menu)
// 	{
// 		this.menu = menu;
// 	}
// 
// 	@Override
// 	public void close()
// 	{
// 		super.close();
// 		// Registers a shutdown hook for the Neo4j and index service instances
// 		// so that it shuts down nicely when the VM exits (even if you
// 		// "Ctrl-C" the running example before it's completed)
// 		Runtime.getRuntime().addShutdownHook(new Thread()
// 		{
// 			@Override
// 			public void run()
// 			{
// 				Logger.getLogger(MainApp.class).info("Shutdown hook called");
// 				ConnectionFactory.getDatabase().shutdown();
// 			}
// 		});
// 
// 	}
// }


import com.trivago.mail.pigeon.web.MainApp;
import java.lang.reflect.InvocationTargetException;

/**
 * Copyright (C) 2011-2012 trivago GmbH <mario.mueller@trivago.com>, <christian.krause@trivago.com>
 *
 * 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 com.trivago.mail.pigeon.web.components.menu;



public class MenuBar extends com.vaadin.ui.MenuBar
{

// Path: pigeon-web/src/main/java/com/trivago/mail/pigeon/web/MainApp.java
// @SuppressWarnings("serial")
// public class MainApp extends Application
// {
// 	private Window window;
// 	private MenuBar menu;
//     
// 	@Override
// 	public void init()
// 	{
// 		//DOMConfigurator.configure(Thread.currentThread().getContextClassLoader().getResource("log4j.xml"));
// //        BasicConfigurator.configure();
// 		window = new Window("Mail Pigeon");
// 		setMainWindow(window);
// 
// 		int senderSize;
// 		try
// 		{
// 			senderSize = Sender.getAll().size();
// 		} catch (NoSuchElementException e)
// 		{
// 			senderSize = 0;
// 		}
// 
// 		int recipientGroupSize;
// 		try
// 		{
// 			recipientGroupSize = RecipientGroup.getAll().size();
// 		} catch (NoSuchElementException e)
// 		{
// 			recipientGroupSize = 0;
// 		}
// 
// 		if (senderSize == 0 && recipientGroupSize == 0)
// 		{
// 			startWizard();
// 		}
// 		else
// 		{
// 			menu = new MenuBar(this);
// 			window.addComponent(menu);
// 			setDashBoard();
// 		}
// 
// 	}
// 
// 	public void initMenu()
// 	{
// 		menu = new MenuBar(this);
// 		window.addComponent(menu);
// 	}
// 
// 	public void clearWindow()
// 	{
// 		window.removeAllComponents();
// 		initMenu();
// 	}
// 
// 	public void setDashBoard()
// 	{
// 		VerticalLayout dbLayout = new VerticalLayout();
// 		dbLayout.addComponent(new Label("Can I haz Dashboard?"));
// 		window.addComponent(dbLayout);
// 
// 	}
// 
// 	public void setNewsletterList()
// 	{
// 		NewsletterList newsletterList = new NewsletterList();
// 		VerticalLayout nlLayout = new VerticalLayout();
// 		nlLayout.addComponent(newsletterList);
// 		nlLayout.setMargin(true);
// 		clearWindow();
// 		window.addComponent(nlLayout);
// 	}
// 
// 	public void setSenderList()
// 	{
// 		SenderList senderList = new SenderList();
// 		VerticalLayout slLayout = new VerticalLayout();
// 		slLayout.addComponent(senderList);
// 		slLayout.setMargin(true);
// 		clearWindow();
// 		window.addComponent(slLayout);
// 	}
// 
// 	public void setRecipientGroupList()
// 	{
// 		GroupList groupList = new GroupList();
// 		VerticalLayout rgLayout = new VerticalLayout();
// 		rgLayout.addComponent(groupList);
// 		rgLayout.setMargin(true);
// 		clearWindow();
// 		window.addComponent(rgLayout);
// 	}
// 
// 	public void setRecipientList()
// 	{
// 		RecipientList recipientList = new RecipientList();
// 		VerticalLayout rLayout = new VerticalLayout();
// 		rLayout.addComponent(recipientList);
// 		rLayout.setMargin(true);
// 		clearWindow();
// 		window.addComponent(rLayout);
// 	}
// 
// 	public void setTemplateList()
// 	{
// 		TemplateList templateList = new TemplateList();
// 		VerticalLayout tlLayout = new VerticalLayout();
// 		tlLayout.addComponent(templateList);
// 		tlLayout.setMargin(true);
// 		clearWindow();
// 		window.addComponent(tlLayout);
// 	}
// 
// 	public void startWizard()
// 	{
// 		SetupWizardComponent wb = new SetupWizardComponent();
// 		window.addComponent(wb);
// 	}
// 
// 	public MenuBar getMenu()
// 	{
// 		return menu;
// 	}
// 
// 	public void setMenu(MenuBar menu)
// 	{
// 		this.menu = menu;
// 	}
// 
// 	@Override
// 	public void close()
// 	{
// 		super.close();
// 		// Registers a shutdown hook for the Neo4j and index service instances
// 		// so that it shuts down nicely when the VM exits (even if you
// 		// "Ctrl-C" the running example before it's completed)
// 		Runtime.getRuntime().addShutdownHook(new Thread()
// 		{
// 			@Override
// 			public void run()
// 			{
// 				Logger.getLogger(MainApp.class).info("Shutdown hook called");
// 				ConnectionFactory.getDatabase().shutdown();
// 			}
// 		});
// 
// 	}
// }


// Path: pigeon-web/src/main/java/com/trivago/mail/pigeon/web/components/menu/MenuBar.java
import com.trivago.mail.pigeon.web.MainApp;
import java.lang.reflect.InvocationTargetException;

/**
 * Copyright (C) 2011-2012 trivago GmbH <mario.mueller@trivago.com>, <christian.krause@trivago.com>
 *
 * 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 com.trivago.mail.pigeon.web.components.menu;



public class MenuBar extends com.vaadin.ui.MenuBar
{

	private MainApp app;
