// Path: src/main/java/de/graphml/writer/model/AbstractBaseEdge.java
// public abstract class AbstractBaseEdge implements Edge{
// 	public String description;
// 	public String url;
// 
// 	@Override
// 	public void writeStart(ElementWriter w, String id, String source, String target) {
// 		w.startElement("edge");
// 		w.writeAttribute("id", id);
// 		w.writeAttribute("source", source);
// 		w.writeAttribute("target", target);
// 
// 		if (url != null){
// 			w.startData(DefaultKeys.URL_FOR_EDGE);
// 			w.writeText(url);
// 			w.endElement();
// 		}
// 		
// 		if (description != null){
// 			w.startData(DefaultKeys.DESCRIPTION_FOR_EDGE);
// 			w.writeText(description);
// 			w.endElement();
// 		}
// 
// 		writeTo(w);
// 	}
// 
// 	public abstract void writeTo(ElementWriter w);
// 
// 	@Override
// 	public void writeEnd(ElementWriter w) {
// 		w.endElement();
// 	}
// 
// }
// 
// Path: src/main/java/de/graphml/writer/model/ElementWriter.java
// public interface ElementWriter {
// 
// 	void startData(Key key);
// 
// 	void startElement(String localName);
// 
// 	void startElement(String namespaceURI, String localName);
// 
// 	void writeAttribute(String localName, String value);
// 
// 	void writeAttribute(String localName, Boolean value);
// 
// 	void writeAttribute(String localName, Double value);
// 
// 	void writeAttribute(String localName, Integer value);
// 
// 	void writeText(String description);
// 
// 	void endElement();
// }
// 
// Path: src/main/java/de/graphml/writer/yed/graphics/EdgeGraphics.java
// public interface EdgeGraphics extends LeafRenderable {
// 
// }


import de.graphml.writer.model.AbstractBaseEdge;
import de.graphml.writer.model.ElementWriter;
import de.graphml.writer.yed.graphics.EdgeGraphics;
/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements. See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You 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 de.graphml.writer.yed;


public class YedEdge<T extends EdgeGraphics> extends AbstractBaseEdge {
	public final T edgeGraphics;

	public YedEdge(final T edgeGraphics) {
		this.edgeGraphics = edgeGraphics;
	}

	@Override
	public void writeTo(ElementWriter w) {
		w.startData(YedKeys.EDGE_GRAPHICS);
		edgeGraphics.writeTo(w);
// Path: src/main/java/de/graphml/writer/model/AbstractBaseEdge.java
// public abstract class AbstractBaseEdge implements Edge{
// 	public String description;
// 	public String url;
// 
// 	@Override
// 	public void writeStart(ElementWriter w, String id, String source, String target) {
// 		w.startElement("edge");
// 		w.writeAttribute("id", id);
// 		w.writeAttribute("source", source);
// 		w.writeAttribute("target", target);
// 
// 		if (url != null){
// 			w.startData(DefaultKeys.URL_FOR_EDGE);
// 			w.writeText(url);
// 			w.endElement();
// 		}
// 		
// 		if (description != null){
// 			w.startData(DefaultKeys.DESCRIPTION_FOR_EDGE);
// 			w.writeText(description);
// 			w.endElement();
// 		}
// 
// 		writeTo(w);
// 	}
// 
// 	public abstract void writeTo(ElementWriter w);
// 
// 	@Override
// 	public void writeEnd(ElementWriter w) {
// 		w.endElement();
// 	}
// 
// }
// 
// Path: src/main/java/de/graphml/writer/model/ElementWriter.java
// public interface ElementWriter {
// 
// 	void startData(Key key);
// 
// 	void startElement(String localName);
// 
// 	void startElement(String namespaceURI, String localName);
// 
// 	void writeAttribute(String localName, String value);
// 
// 	void writeAttribute(String localName, Boolean value);
// 
// 	void writeAttribute(String localName, Double value);
// 
// 	void writeAttribute(String localName, Integer value);
// 
// 	void writeText(String description);
// 
// 	void endElement();
// }
// 
// Path: src/main/java/de/graphml/writer/yed/graphics/EdgeGraphics.java
// public interface EdgeGraphics extends LeafRenderable {
// 
// }


// Path: src/main/java/de/graphml/writer/yed/YedEdge.java
import de.graphml.writer.model.AbstractBaseEdge;
import de.graphml.writer.model.ElementWriter;
import de.graphml.writer.yed.graphics.EdgeGraphics;

/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements. See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You 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 de.graphml.writer.yed;


public class YedEdge<T extends EdgeGraphics> extends AbstractBaseEdge {
	public final T edgeGraphics;

	public YedEdge(final T edgeGraphics) {
		this.edgeGraphics = edgeGraphics;
	}

	@Override
	public void writeTo(ElementWriter w) {
		w.startData(YedKeys.EDGE_GRAPHICS);
		edgeGraphics.writeTo(w);
		w.endElement();