net.sourceforge.domian.test.benchmark
Class QueenPuzzleSpecification

java.lang.Object
  extended by net.sourceforge.domian.test.benchmark.QueenPuzzleSpecification
All Implemented Interfaces:
LeafSpecification<QueenPuzzleConstellation>, Specification<QueenPuzzleConstellation>

 class QueenPuzzleSpecification
extends java.lang.Object
implements LeafSpecification<QueenPuzzleConstellation>

Specification of a QueenPuzzleConstellation solving the queen puzzle.


Field Summary
(package private) static int LEFT
           
(package private) static int RIGHT
           
 
Constructor Summary
QueenPuzzleSpecification()
           
 
Method Summary
 CompositeSpecification<QueenPuzzleConstellation> and(Specification<? super QueenPuzzleConstellation> otherSpecification)
           
(package private)  boolean diagonalLineConnections(int pDirectionIndex, ChessPiecePlacing placing1, ChessPiecePlacing placing2, ChessPiecePlacing placing3, ChessPiecePlacing placing4, ChessPiecePlacing placing5, ChessPiecePlacing placing6, ChessPiecePlacing placing7, ChessPiecePlacing placing8)
           
 java.lang.Class<QueenPuzzleConstellation> getType()
           
 java.lang.Boolean isDisjointWith(Specification specification)
           
 java.lang.Boolean isGeneralizationOf(Specification<? extends QueenPuzzleConstellation> specification)
           
 java.lang.Boolean isSatisfiedBy(QueenPuzzleConstellation candidate)
           
 java.lang.Boolean isSpecialCaseOf(Specification<? super QueenPuzzleConstellation> specification)
           
 CompositeSpecification<QueenPuzzleConstellation> or(Specification<? super QueenPuzzleConstellation> otherSpecification)
           
(package private)  boolean straightXLineConnections(ChessPiecePlacing placing1, ChessPiecePlacing placing2, ChessPiecePlacing placing3, ChessPiecePlacing placing4, ChessPiecePlacing placing5, ChessPiecePlacing placing6, ChessPiecePlacing placing7, ChessPiecePlacing placing8)
           
(package private)  boolean straightYLineConnections(ChessPiecePlacing placing1, ChessPiecePlacing placing2, ChessPiecePlacing placing3, ChessPiecePlacing placing4, ChessPiecePlacing placing5, ChessPiecePlacing placing6, ChessPiecePlacing placing7, ChessPiecePlacing placing8)
           
<F> CompositeSpecification<QueenPuzzleConstellation>
where(java.lang.String accessibleObjectName, Specification<F> accessibleObjectSpecification)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

RIGHT

static final int RIGHT
See Also:
Constant Field Values

LEFT

static final int LEFT
See Also:
Constant Field Values
Constructor Detail

QueenPuzzleSpecification

QueenPuzzleSpecification()
Method Detail

getType

public java.lang.Class<QueenPuzzleConstellation> getType()
Specified by:
getType in interface Specification<QueenPuzzleConstellation>

isSatisfiedBy

public java.lang.Boolean isSatisfiedBy(QueenPuzzleConstellation candidate)
Specified by:
isSatisfiedBy in interface Specification<QueenPuzzleConstellation>

isGeneralizationOf

public java.lang.Boolean isGeneralizationOf(Specification<? extends QueenPuzzleConstellation> specification)
Specified by:
isGeneralizationOf in interface Specification<QueenPuzzleConstellation>

isSpecialCaseOf

public java.lang.Boolean isSpecialCaseOf(Specification<? super QueenPuzzleConstellation> specification)
Specified by:
isSpecialCaseOf in interface Specification<QueenPuzzleConstellation>

where

public <F> CompositeSpecification<QueenPuzzleConstellation> where(java.lang.String accessibleObjectName,
                                                                  Specification<F> accessibleObjectSpecification)
Specified by:
where in interface Specification<QueenPuzzleConstellation>

and

public CompositeSpecification<QueenPuzzleConstellation> and(Specification<? super QueenPuzzleConstellation> otherSpecification)
Specified by:
and in interface Specification<QueenPuzzleConstellation>

or

public CompositeSpecification<QueenPuzzleConstellation> or(Specification<? super QueenPuzzleConstellation> otherSpecification)
Specified by:
or in interface Specification<QueenPuzzleConstellation>

isDisjointWith

public java.lang.Boolean isDisjointWith(Specification specification)
Specified by:
isDisjointWith in interface Specification<QueenPuzzleConstellation>

straightXLineConnections

boolean straightXLineConnections(ChessPiecePlacing placing1,
                                 ChessPiecePlacing placing2,
                                 ChessPiecePlacing placing3,
                                 ChessPiecePlacing placing4,
                                 ChessPiecePlacing placing5,
                                 ChessPiecePlacing placing6,
                                 ChessPiecePlacing placing7,
                                 ChessPiecePlacing placing8)
Returns:
true if and only if the chess placement constellation has any straight-line connections.

straightYLineConnections

boolean straightYLineConnections(ChessPiecePlacing placing1,
                                 ChessPiecePlacing placing2,
                                 ChessPiecePlacing placing3,
                                 ChessPiecePlacing placing4,
                                 ChessPiecePlacing placing5,
                                 ChessPiecePlacing placing6,
                                 ChessPiecePlacing placing7,
                                 ChessPiecePlacing placing8)
Returns:
true if and only if the chess placement constellation has any straight-line connections.

diagonalLineConnections

boolean diagonalLineConnections(int pDirectionIndex,
                                ChessPiecePlacing placing1,
                                ChessPiecePlacing placing2,
                                ChessPiecePlacing placing3,
                                ChessPiecePlacing placing4,
                                ChessPiecePlacing placing5,
                                ChessPiecePlacing placing6,
                                ChessPiecePlacing placing7,
                                ChessPiecePlacing placing8)
Returns:
true if and only if the chess placement constellation has any diagonal connections.


Copyright © 2008-2010. All Rights Reserved.