code: public void writeStartComponent(String componentName) throws IOException {
  		if (generator == null) {
  			init();
  		}
  
  		componentEnded = false;
  
  		if (!stack.isEmpty()) {
  			Info parent = stack.getLast();
  			if (!parent.wroteEndPropertiesArray) {
  				generator.writeEndArray();
  				parent.wroteEndPropertiesArray = true;
  			}
  			if (!parent.wroteStartSubComponentsArray) {
  				generator.writeStartArray();
  				parent.wroteStartSubComponentsArray = true;
  			}
  		}
  
  		generator.writeStartArray();
  		generator.writeString(componentName);
  		generator.writeStartArray(); //start properties array
  
  		stack.add(new Info());
  	}
docs: Writes the beginning of a new component array.
  @param componentName the component name (e.g. "vevent")
  @throws IOException if there's an I/O problem