/** * Alipay.com Inc. * Copyright (c) 2004-2012 All Rights Reserved. */ package com.alipay.zdal.client.dispatcher; import java.util.List; import com.alipay.zdal.client.controller.ColumnMetaData; import com.alipay.zdal.client.controller.OrderByMessages; /** * ���ǵ����Ҫ֧������ʵ�֣�ǰ����������Ƚ��鷳����˶��������Ľӿ� * �ڲ�ʵ�ֲ���Ҫcare. * *TODO:û��group by element��¶���������ⲻ��\ */ public interface DispatcherResult extends Result { /** * �Ƿ���������� * * @return */ public boolean allowReverseOutput(); /** * ��ȡ�ֿ���������Ҫ�и��ƵĻ� * ��Ҫע����� * primaryKey�ͷֿ���ͷֱ��֮������Dz����ظ��ġ� * ���primaryKey�ͷֱ��г��ֵģ���ô�ֿ��оͲ������ * ����ֿ��к�primaryKey�г��ֵģ���ô�ֱ�Ͳ������ * @return */ public List<ColumnMetaData> getSplitDB(); /** * ��ȡ�ֱ���������Ҫ�и��ƵĻ� * primaryKey�ͷֿ���ͷֱ��֮������Dz����ظ��ġ� * ���primaryKey�ͷֱ��г��ֵģ���ô�ֿ��оͲ������ * ����ֿ��к�primaryKey�г��ֵģ���ô�ֱ�Ͳ������ * @return */ public List<ColumnMetaData> getSplitTab(); /** * ��ȡ�����������Ҫ�и��ƵĻ� * primaryKey�ͷֿ���ͷֱ��֮������Dz����ظ��ġ� * ���primaryKey�ͷֱ��г��ֵģ���ô�ֿ��оͲ������ * ����ֿ��к�primaryKey�г��ֵģ���ô�ֱ�Ͳ������ * @return */ public ColumnMetaData getPrimaryKey(); /** * ��ȡorder by ��Ϣ * @return */ public OrderByMessages getOrderByMessages(); /** * ��ȡskipֵ * ��ΪZdal�������ݿ⣬������������һ���ٶ��� * �����к���Ϊskip�������У������Ǹ���Զ��������ġ� * * ���Ƕ����Ҳ����ˡ� * @return */ public int getSkip(); /** * ��ȡmaxֵ�� * ��ΪZdal�������ݿ⣬������������һ���ٶ��� * �����к���Ϊmax�������У������Ǹ���Զ��������ġ� * * ���Ƕ����Ҳ����ˡ� * @return */ public int getMax(); /** * ��������� * @param needReverseOutput */ public void needAllowReverseOutput(boolean needReverseOutput); /** * ��ȡ���ݿ�ִ�мƻ� * @return */ public EXECUTE_PLAN getDatabaseExecutePlan(); /** * ���� * @param executePlan */ public void setDatabaseExecutePlan(EXECUTE_PLAN executePlan); public EXECUTE_PLAN getTableExecutePlan(); public void setTableExecutePlan(EXECUTE_PLAN executePlan); /** *ר��DiskWriter�õ� */ // List<SetElement> getSetElements(); /** * ��¼��join��������� * @author jiangping * @param virtualJoinTableNames */ public void setVirtualJoinTableNames(List<String> virtualJoinTableNames); /** * ��ȡ��join��������� * @author jiangping * @return */ public List<String> getVirtualJoinTableNames(); }