// Path: src/main/java/org/neo4j/neode/properties/Property.java
// public abstract class Property
// {
//     public static Property property( String name )
//     {
//         return new NonIndexableProperty( name, new CounterBasedStringPropertyValueGenerator() );
//     }
// 
//     public static Property property( String name, PropertyValueGenerator generator )
//     {
//         return new NonIndexableProperty( name, generator );
//     }
// 
//     public static Property indexableProperty( GraphDatabaseService db, String label, String name, String... labelNames )
//     {
//         return indexableProperty( db,label, name, new CounterBasedStringPropertyValueGenerator(), labelNames );
//     }
// 
//     public static Property indexableProperty( GraphDatabaseService db, String label, String name, PropertyValueGenerator generator, String... labelNames )
//     {
//         return new IndexableProperty( db,label,name, generator, labelNames );
//     }
// 
//     public abstract void setProperty(PropertyContainer propertyContainer, String label,
//                                      int iteration);
// }


import java.util.List;
import org.neo4j.graphdb.Direction;
import org.neo4j.graphdb.Expander;
import org.neo4j.graphdb.GraphDatabaseService;
import org.neo4j.graphdb.Node;
import org.neo4j.graphdb.Relationship;
import org.neo4j.graphdb.RelationshipType;
import org.neo4j.neode.properties.Property;
import static org.neo4j.kernel.Traversal.expanderForTypes;
package org.neo4j.neode;




public class RelationshipSpecification
{
    private final RelationshipType relationshipType;
// Path: src/main/java/org/neo4j/neode/properties/Property.java
// public abstract class Property
// {
//     public static Property property( String name )
//     {
//         return new NonIndexableProperty( name, new CounterBasedStringPropertyValueGenerator() );
//     }
// 
//     public static Property property( String name, PropertyValueGenerator generator )
//     {
//         return new NonIndexableProperty( name, generator );
//     }
// 
//     public static Property indexableProperty( GraphDatabaseService db, String label, String name, String... labelNames )
//     {
//         return indexableProperty( db,label, name, new CounterBasedStringPropertyValueGenerator(), labelNames );
//     }
// 
//     public static Property indexableProperty( GraphDatabaseService db, String label, String name, PropertyValueGenerator generator, String... labelNames )
//     {
//         return new IndexableProperty( db,label,name, generator, labelNames );
//     }
// 
//     public abstract void setProperty(PropertyContainer propertyContainer, String label,
//                                      int iteration);
// }


// Path: src/main/java/org/neo4j/neode/RelationshipSpecification.java
import java.util.List;
import org.neo4j.graphdb.Direction;
import org.neo4j.graphdb.Expander;
import org.neo4j.graphdb.GraphDatabaseService;
import org.neo4j.graphdb.Node;
import org.neo4j.graphdb.Relationship;
import org.neo4j.graphdb.RelationshipType;
import org.neo4j.neode.properties.Property;
import static org.neo4j.kernel.Traversal.expanderForTypes;

package org.neo4j.neode;




public class RelationshipSpecification
{
    private final RelationshipType relationshipType;
    private final List<Property> properties;