public void saveCourse(String courseName) {
		if (!courseName.equals("")) {

			String courseNo;
			if (this.editCourse == null) {
				courseNo = UUID.randomUUID().toString();
			} else {
				courseNo = this.editCourse.getCourseNo();

			}
			Course newCourse = new Course(courseNo, courseName);

			// Sending the new course to the server
			Action toDo;

			if (this.editCourse != null) {
				toDo = new Action(ActionType.UPDATE);
			} else {
				toDo = new Action(ActionType.CREATE);
			}

			Request toServer = new Request(Session.getInstance(), toDo,
					newCourse);

			// serverCom = server communication
			EasyTeachClient serverCom = new EasyTeachClient(toServer);
			serverCom.run();
			serverCom.getResponse();

			Response responseFromServer = serverCom.getResponse();
			System.out.println(responseFromServer.getStatus() + ": "
					+ responseFromServer.getResponseMessage());

			// Create the new relation(s)
			ResourceSet newClassCourseRelation = new ResourceSet();

			for (Resource resource : this.associatedClassesSet) {
				Class classEntity = (Class) resource;
				newClassCourseRelation.add(new ClassCourseRelation(classEntity
						.getClassNo(), courseNo));
			}

			// Sending the new relation(s) to the server. Reusing the Action,
			// Request, EasyTeachClient and Response objects from the creation
			// of
			// the new course
			toDo = new Action(ActionType.UPDATE, "course");
			toServer = new Request(Session.getInstance(), toDo,
					newClassCourseRelation);
			serverCom = new EasyTeachClient(toServer);
			serverCom.run();
			responseFromServer = serverCom.getResponse();

			if (responseFromServer.getStatus() == ResponseStatus.SUCCESS) {
				JOptionPane.showMessageDialog(null, "Saved succesfully!");
				MainFrame.updateFrame(new AdminManagerUI().getAdminManagerUI(),
						"Admin Manager");
			} else {
				JOptionPane.showMessageDialog(null,
						"Something went wrong. Try again!");
			}
		} else {
			JOptionPane.showMessageDialog(null, "Invalid course name!");
		}
	}