public void updateAttractionList(Attraction attraction)
	{
		Pattern basicPattern = Pattern.compile("[-a-zA-Z0-9'&\\.\\s]+");
		Matcher matcher = basicPattern.matcher(attraction.getName());
		if (!matcher.find())
		{
			open();
			logger.info("Attraction name: " + attraction.getName() + " is an invalid name");
			close();
			return;
		}
		Attraction changed = null;
		for (Attraction a: attractionList)
		{
			if (a.getName().equals(attraction.getName()))
			{
				changed = a;
				break;
			}
		}
		if (changed == null) //new attraction
		{
			attractionList.add(attraction);
		}else { //update attraction
			changed.setName(attraction.getName());
			changed.setLocation(attraction.getLocation());
			changed.setTags(attraction.getTags());
		}
		
		writeAttractionList();
	}