code: public boolean addBusStop(BusStop busStop) {
  		if (busStop == null) {
  			return false;
  		}
  		if (this.validBusStops.contains(busStop)) {
  			return false;
  		}
  		if (ListUtil.contains(this.invalidBusStops, INVALID_STOP_COMPARATOR, busStop)) {
  			return false;
  		}
  
  		final boolean isValidPrimitive = busStop.isValidPrimitive();
  
  		if (isValidPrimitive) {
  			if (!this.validBusStops.add(busStop)) {
  				return false;
  			}
  		} else if (ListUtil.addIfAbsent(this.invalidBusStops, INVALID_STOP_COMPARATOR, busStop) < 0) {
  			return false;
  		}
  
  		busStop.setEventFirable(isEventFirable());
  		busStop.setContainer(this);
  		if (isEventFirable()) {
  			fireShapeChanged(new BusChangeEvent(this,
  					BusChangeEventType.STOP_ADDED,
  					busStop,
  					-1,
  					"shape", //$NON-NLS-1$
  					null,
  					null));
  			busStop.checkPrimitiveValidity();
  			checkPrimitiveValidity();
  		}
  		return true;
  	}
docs: Add a bus stop inside the bus network.
  
  @param busStop is the bus stop to insert.
  @return <code>true</code> if the bus stop was added, otherwise <code>false</code>