package com.ldbc.driver.workloads.ldbc.snb.interactive.db;
import com.ldbc.driver.Db;
import com.ldbc.driver.DbConnectionState;
import com.ldbc.driver.DbException;
import com.ldbc.driver.Operation;
import com.ldbc.driver.OperationHandler;
import com.ldbc.driver.ResultReporter;
import com.ldbc.driver.control.LoggingService;
import com.ldbc.driver.util.ClassLoaderHelper;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcNoResult;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery1;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery10;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery10Result;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery11;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery11Result;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery12;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery12Result;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery13;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery13Result;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery14;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery14Result;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery1Result;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery2;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery2Result;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery3;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery3Result;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery4;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery4Result;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery5;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery5Result;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery6;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery6Result;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery7;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery7Result;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery8;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery8Result;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery9;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcQuery9Result;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcShortQuery1PersonProfile;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcShortQuery1PersonProfileResult;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcShortQuery2PersonPosts;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcShortQuery2PersonPostsResult;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcShortQuery3PersonFriends;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcShortQuery3PersonFriendsResult;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcShortQuery4MessageContent;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcShortQuery4MessageContentResult;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcShortQuery5MessageCreator;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcShortQuery5MessageCreatorResult;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcShortQuery6MessageForum;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcShortQuery6MessageForumResult;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcShortQuery7MessageReplies;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcShortQuery7MessageRepliesResult;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcUpdate1AddPerson;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcUpdate2AddPostLike;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcUpdate3AddCommentLike;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcUpdate4AddForum;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcUpdate5AddForumMembership;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcUpdate6AddPost;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcUpdate7AddComment;
import com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcUpdate8AddFriendship;
import java.io.IOException;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.locks.LockSupport;
import static java.lang.String.format;
public class DummyLdbcSnbInteractiveDb extends Db
{
private static class DummyDbConnectionState extends DbConnectionState
{
@Override
public void close() throws IOException
{
}
}
public enum SleepType
{
SLEEP,
PARK,
SPIN
}
public static final String SLEEP_DURATION_NANO_ARG = "ldbc.snb.interactive.db.sleep_duration_nano";
public static final String SLEEP_TYPE_ARG = "ldbc.snb.interactive.db.sleep_type";
public static final String CRASH_ON_ARG = "ldbc.snb.interactive.db.crash_on";
private static long sleepDurationAsNano;
private SleepType sleepType;
private Class crashOnClass;
private interface SleepFun
{
void sleep( Operation operation, long sleepNs );
}
private static SleepFun sleepFun;
@Override
protected void onInit( Map<String,String> params, LoggingService loggingService ) throws DbException
{
String sleepDurationAsNanoAsString = params.get( SLEEP_DURATION_NANO_ARG );
try
{
crashOnClass = (params.containsKey( CRASH_ON_ARG ))
? ClassLoaderHelper.loadClass( params.get( CRASH_ON_ARG ) )
: null;
}
catch ( Exception e )
{
throw new DbException( format( "Error loading operation class: %s", params.get( CRASH_ON_ARG ) ), e );
}
if ( null == sleepDurationAsNanoAsString )
{
sleepDurationAsNano = 0L;
}
else
{
try
{
sleepDurationAsNano = Long.parseLong( sleepDurationAsNanoAsString );
}
catch ( NumberFormatException e )
{
throw new DbException( format( "Error encountered while trying to parse value [%s] for argument [%s]",
sleepDurationAsNanoAsString, SLEEP_DURATION_NANO_ARG ), e );
}
}
String sleepTypeString = params.get( SLEEP_TYPE_ARG );
if ( null == sleepTypeString )
{
sleepType = SleepType.SPIN;
}
else
{
try
{
sleepType = SleepType.valueOf( params.get( SLEEP_TYPE_ARG ) );
}
catch ( IllegalArgumentException e )
{
throw new DbException( format( "Invalid sleep type: %s", sleepTypeString ) );
}
}
if ( null != crashOnClass )
{
sleepFun = new SleepFun()
{
@Override
public void sleep( Operation operation, long sleepNs )
{
if ( crashOnClass.equals( operation.getClass() ) )
{
throw new RuntimeException( "Crash on purpose" );
}
}
};
}
else if ( 0 == sleepDurationAsNano )
{
sleepFun = new SleepFun()
{
@Override
public void sleep( Operation operation, long sleepNs )
{
// do nothing
}
};
}
else
{
switch ( sleepType )
{
case SLEEP:
sleepFun = new SleepFun()
{
@Override
public void sleep( Operation operation, long sleepNs )
{
try
{
Thread.sleep( TimeUnit.NANOSECONDS.toMillis( sleepNs ) );
}
catch ( InterruptedException e )
{
// do nothing
}
}
};
break;
case PARK:
sleepFun = new SleepFun()
{
@Override
public void sleep( Operation operation, long sleepNs )
{
LockSupport.parkNanos( sleepNs );
}
};
break;
case SPIN:
sleepFun = new SleepFun()
{
@Override
public void sleep( Operation operation, long sleepNs )
{
long endTimeAsNano = System.nanoTime() + sleepNs;
while ( System.nanoTime() < endTimeAsNano )
{
// busy wait
}
}
};
break;
}
}
params.put( SLEEP_DURATION_NANO_ARG, Long.toString( sleepDurationAsNano ) );
params.put( SLEEP_TYPE_ARG, sleepType.name() );
// Long Reads
registerOperationHandler( LdbcQuery1.class, LdbcQuery1Handler.class );
registerOperationHandler( LdbcQuery2.class, LdbcQuery2Handler.class );
registerOperationHandler( LdbcQuery3.class, LdbcQuery3Handler.class );
registerOperationHandler( LdbcQuery4.class, LdbcQuery4Handler.class );
registerOperationHandler( LdbcQuery5.class, LdbcQuery5Handler.class );
registerOperationHandler( LdbcQuery6.class, LdbcQuery6Handler.class );
registerOperationHandler( LdbcQuery7.class, LdbcQuery7Handler.class );
registerOperationHandler( LdbcQuery8.class, LdbcQuery8Handler.class );
registerOperationHandler( LdbcQuery9.class, LdbcQuery9Handler.class );
registerOperationHandler( LdbcQuery10.class, LdbcQuery10Handler.class );
registerOperationHandler( LdbcQuery11.class, LdbcQuery11Handler.class );
registerOperationHandler( LdbcQuery12.class, LdbcQuery12Handler.class );
registerOperationHandler( LdbcQuery13.class, LdbcQuery13Handler.class );
registerOperationHandler( LdbcQuery14.class, LdbcQuery14Handler.class );
// Short Reads
registerOperationHandler( LdbcShortQuery1PersonProfile.class, LdbcShortQuery1PersonProfileHandler.class );
registerOperationHandler( LdbcShortQuery2PersonPosts.class, LdbcShortQuery2PersonPostsHandler.class );
registerOperationHandler( LdbcShortQuery3PersonFriends.class, LdbcShortQuery3PersonFriendsHandler.class );
registerOperationHandler( LdbcShortQuery4MessageContent.class, LdbcShortQuery4MessageContentHandler.class );
registerOperationHandler( LdbcShortQuery5MessageCreator.class, LdbcShortQuery5MessageCreatorHandler.class );
registerOperationHandler( LdbcShortQuery6MessageForum.class, LdbcShortQuery6MessageForumHandler.class );
registerOperationHandler( LdbcShortQuery7MessageReplies.class, LdbcShortQuery7MessageRepliesHandler.class );
// Updates
registerOperationHandler( LdbcUpdate1AddPerson.class, LdbcUpdate1AddPersonHandler.class );
registerOperationHandler( LdbcUpdate2AddPostLike.class, LdbcUpdate2AddPostLikeHandler.class );
registerOperationHandler( LdbcUpdate3AddCommentLike.class, LdbcUpdate3AddCommentLikeHandler.class );
registerOperationHandler( LdbcUpdate4AddForum.class, LdbcUpdate4AddForumHandler.class );
registerOperationHandler( LdbcUpdate5AddForumMembership.class, LdbcUpdate5AddForumMembershipHandler.class );
registerOperationHandler( LdbcUpdate6AddPost.class, LdbcUpdate6AddPostHandler.class );
registerOperationHandler( LdbcUpdate7AddComment.class, LdbcUpdate7AddCommentHandler.class );
registerOperationHandler( LdbcUpdate8AddFriendship.class, LdbcUpdate8AddFriendshipHandler.class );
}
@Override
protected void onClose() throws IOException
{
}
@Override
protected DbConnectionState getConnectionState() throws DbException
{
return null;
}
private static void sleep( Operation operation, long sleepNs )
{
sleepFun.sleep( operation, sleepNs );
}
/*
LONG READS
*/
private static final List<LdbcQuery1Result> LDBC_QUERY_1_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.read1Results();
public static class LdbcQuery1Handler implements OperationHandler<LdbcQuery1,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcQuery1 operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_QUERY_1_RESULTS, operation );
}
}
private static final List<LdbcQuery2Result> LDBC_QUERY_2_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.read2Results();
public static class LdbcQuery2Handler implements OperationHandler<LdbcQuery2,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcQuery2 operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_QUERY_2_RESULTS, operation );
}
}
private static final List<LdbcQuery3Result> LDBC_QUERY_3_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.read3Results();
public static class LdbcQuery3Handler implements OperationHandler<LdbcQuery3,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcQuery3 operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_QUERY_3_RESULTS, operation );
}
}
private static final List<LdbcQuery4Result> LDBC_QUERY_4_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.read4Results();
public static class LdbcQuery4Handler implements OperationHandler<LdbcQuery4,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcQuery4 operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_QUERY_4_RESULTS, operation );
}
}
private static final List<LdbcQuery5Result> LDBC_QUERY_5_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.read5Results();
public static class LdbcQuery5Handler implements OperationHandler<LdbcQuery5,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcQuery5 operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_QUERY_5_RESULTS, operation );
}
}
private static final List<LdbcQuery6Result> LDBC_QUERY_6_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.read6Results();
public static class LdbcQuery6Handler implements OperationHandler<LdbcQuery6,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcQuery6 operation, DummyDbConnectionState dummyDbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_QUERY_6_RESULTS, operation );
}
}
private static final List<LdbcQuery7Result> LDBC_QUERY_7_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.read7Results();
public static class LdbcQuery7Handler implements OperationHandler<LdbcQuery7,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcQuery7 operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_QUERY_7_RESULTS, operation );
}
}
private static final List<LdbcQuery8Result> LDBC_QUERY_8_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.read8Results();
public static class LdbcQuery8Handler implements OperationHandler<LdbcQuery8,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcQuery8 operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_QUERY_8_RESULTS, operation );
}
}
private static final List<LdbcQuery9Result> LDBC_QUERY_9_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.read9Results();
public static class LdbcQuery9Handler implements OperationHandler<LdbcQuery9,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcQuery9 operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_QUERY_9_RESULTS, operation );
}
}
private static final List<LdbcQuery10Result> LDBC_QUERY_10_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.read10Results();
public static class LdbcQuery10Handler implements OperationHandler<LdbcQuery10,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcQuery10 operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_QUERY_10_RESULTS, operation );
}
}
private static final List<LdbcQuery11Result> LDBC_QUERY_11_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.read11Results();
public static class LdbcQuery11Handler implements OperationHandler<LdbcQuery11,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcQuery11 operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_QUERY_11_RESULTS, operation );
}
}
private static final List<LdbcQuery12Result> LDBC_QUERY_12_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.read12Results();
public static class LdbcQuery12Handler implements OperationHandler<LdbcQuery12,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcQuery12 operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_QUERY_12_RESULTS, operation );
}
}
private static final LdbcQuery13Result LDBC_QUERY_13_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.read13Results();
public static class LdbcQuery13Handler implements OperationHandler<LdbcQuery13,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcQuery13 operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_QUERY_13_RESULTS, operation );
}
}
private static final List<LdbcQuery14Result> LDBC_QUERY_14_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.read14Results();
public static class LdbcQuery14Handler implements OperationHandler<LdbcQuery14,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcQuery14 operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_QUERY_14_RESULTS, operation );
}
}
/*
SHORT READS
*/
private static final LdbcShortQuery1PersonProfileResult LDBC_SHORT_QUERY_1_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.short1Results();
public static class LdbcShortQuery1PersonProfileHandler
implements OperationHandler<LdbcShortQuery1PersonProfile,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcShortQuery1PersonProfile operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_SHORT_QUERY_1_RESULTS, operation );
}
}
private static final List<LdbcShortQuery2PersonPostsResult> LDBC_SHORT_QUERY_2_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.short2Results();
public static class LdbcShortQuery2PersonPostsHandler
implements OperationHandler<LdbcShortQuery2PersonPosts,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcShortQuery2PersonPosts operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_SHORT_QUERY_2_RESULTS, operation );
}
}
private static final List<LdbcShortQuery3PersonFriendsResult> LDBC_SHORT_QUERY_3_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.short3Results();
public static class LdbcShortQuery3PersonFriendsHandler
implements OperationHandler<LdbcShortQuery3PersonFriends,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcShortQuery3PersonFriends operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_SHORT_QUERY_3_RESULTS, operation );
}
}
private static final LdbcShortQuery4MessageContentResult LDBC_SHORT_QUERY_4_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.short4Results();
public static class LdbcShortQuery4MessageContentHandler
implements OperationHandler<LdbcShortQuery4MessageContent,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcShortQuery4MessageContent operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_SHORT_QUERY_4_RESULTS, operation );
}
}
private static final LdbcShortQuery5MessageCreatorResult LDBC_SHORT_QUERY_5_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.short5Results();
public static class LdbcShortQuery5MessageCreatorHandler
implements OperationHandler<LdbcShortQuery5MessageCreator,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcShortQuery5MessageCreator operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_SHORT_QUERY_5_RESULTS, operation );
}
}
private static final LdbcShortQuery6MessageForumResult LDBC_SHORT_QUERY_6_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.short6Results();
public static class LdbcShortQuery6MessageForumHandler
implements OperationHandler<LdbcShortQuery6MessageForum,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcShortQuery6MessageForum operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_SHORT_QUERY_6_RESULTS, operation );
}
}
private static final List<LdbcShortQuery7MessageRepliesResult> LDBC_SHORT_QUERY_7_RESULTS =
DummyLdbcSnbInteractiveOperationResultSets.short7Results();
public static class LdbcShortQuery7MessageRepliesHandler
implements OperationHandler<LdbcShortQuery7MessageReplies,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcShortQuery7MessageReplies operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LDBC_SHORT_QUERY_7_RESULTS, operation );
}
}
/*
UPDATES
*/
public static class LdbcUpdate1AddPersonHandler
implements OperationHandler<LdbcUpdate1AddPerson,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcUpdate1AddPerson operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LdbcNoResult.INSTANCE, operation );
}
}
public static class LdbcUpdate2AddPostLikeHandler
implements OperationHandler<LdbcUpdate2AddPostLike,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcUpdate2AddPostLike operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LdbcNoResult.INSTANCE, operation );
}
}
public static class LdbcUpdate3AddCommentLikeHandler
implements OperationHandler<LdbcUpdate3AddCommentLike,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcUpdate3AddCommentLike operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LdbcNoResult.INSTANCE, operation );
}
}
public static class LdbcUpdate4AddForumHandler
implements OperationHandler<LdbcUpdate4AddForum,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcUpdate4AddForum operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LdbcNoResult.INSTANCE, operation );
}
}
public static class LdbcUpdate5AddForumMembershipHandler
implements OperationHandler<LdbcUpdate5AddForumMembership,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcUpdate5AddForumMembership operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LdbcNoResult.INSTANCE, operation );
}
}
public static class LdbcUpdate6AddPostHandler implements OperationHandler<LdbcUpdate6AddPost,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcUpdate6AddPost operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LdbcNoResult.INSTANCE, operation );
}
}
public static class LdbcUpdate7AddCommentHandler
implements OperationHandler<LdbcUpdate7AddComment,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcUpdate7AddComment operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LdbcNoResult.INSTANCE, operation );
}
}
public static class LdbcUpdate8AddFriendshipHandler
implements OperationHandler<LdbcUpdate8AddFriendship,DummyDbConnectionState>
{
@Override
public void executeOperation( LdbcUpdate8AddFriendship operation, DummyDbConnectionState dbConnectionState,
ResultReporter resultReporter ) throws DbException
{
sleep( operation, sleepDurationAsNano );
resultReporter.report( 0, LdbcNoResult.INSTANCE, operation );
}
}
}