/** * Getter for MessageFactory instance. */ public static MessageFactory getInstance() { if (instance == null) { instance = getInstance(HCAT_MESSAGE_FACTORY_IMPL); } return instance; }
@Override public HCatEventMessage checkValid() { if (getTable() == null) throw new IllegalStateException("Table name unset."); return super.checkValid(); } }
@Override public HCatEventMessage checkValid() { if (getTable() == null) throw new IllegalStateException("Table name unset."); return super.checkValid(); }
switch (HCatEventMessage.EventType.valueOf(eventTypeString)) { case CREATE_DATABASE: return getCreateDatabaseMessage(messageBody); case DROP_DATABASE: return getDropDatabaseMessage(messageBody); case CREATE_TABLE: return getCreateTableMessage(messageBody); case ALTER_TABLE: return getAlterTableMessage(messageBody); case DROP_TABLE: return getDropTableMessage(messageBody); case ADD_PARTITION: return getAddPartitionMessage(messageBody); case ALTER_PARTITION: return getAlterPartitionMessage(messageBody); case DROP_PARTITION: return getDropPartitionMessage(messageBody); case CREATE_FUNCTION: return getCreateFunctionMessage(messageBody); case DROP_FUNCTION: return getDropFunctionMessage(messageBody); case INSERT: return getInsertMessage(messageBody); default: throw new IllegalArgumentException("Unsupported event-type: " + eventTypeString);
@Override public HCatEventMessage checkValid() { if (getTable() == null) throw new IllegalStateException("Table name unset."); if (getPartitions() == null) throw new IllegalStateException("Partition-list unset."); return super.checkValid(); } }
@Override public HCatEventMessage checkValid() { if (getTable() == null) throw new IllegalStateException("Table name unset."); if (getPartitions() == null) throw new IllegalStateException("Partition-list unset."); return super.checkValid(); } }
@Override public HCatEventMessage checkValid() { if (getTable() == null) throw new IllegalStateException("Table name unset."); if (getKeyValues() == null) throw new IllegalStateException("Partition values unset"); return super.checkValid(); } }
public AlterTableReplicationTask(HCatNotificationEvent event) { super(event); validateEventType(event, HCatConstants.HCAT_ALTER_TABLE_EVENT); alterTableMessage = messageFactory.getDeserializer().getAlterTableMessage(event.getMessage()); }
public DropDatabaseReplicationTask(HCatNotificationEvent event) { super(event); validateEventType(event, HCatConstants.HCAT_DROP_DATABASE_EVENT); dropDatabaseMessage = messageFactory.getDeserializer().getDropDatabaseMessage(event.getMessage()); }
public CreateTableReplicationTask(HCatNotificationEvent event) { super(event); validateEventType(event, HCatConstants.HCAT_CREATE_TABLE_EVENT); createTableMessage = messageFactory.getDeserializer().getCreateTableMessage(event.getMessage()); }
public AlterPartitionReplicationTask(HCatNotificationEvent event) { super(event); validateEventType(event,HCatConstants.HCAT_ALTER_PARTITION_EVENT); alterPartitionMessage = messageFactory.getDeserializer().getAlterPartitionMessage(event.getMessage()); }
public DropPartitionReplicationTask(HCatNotificationEvent event) { super(event); validateEventType(event, HCatConstants.HCAT_DROP_PARTITION_EVENT); dropPartitionMessage = messageFactory.getDeserializer().getDropPartitionMessage(event.getMessage()); }
public InsertReplicationTask(HCatNotificationEvent event) { super(event); validateEventType(event, HCatConstants.HCAT_INSERT_EVENT); insertMessage = messageFactory.getDeserializer().getInsertMessage(event.getMessage()); }
public DropTableReplicationTask(HCatNotificationEvent event) { super(event); validateEventType(event, HCatConstants.HCAT_DROP_TABLE_EVENT); dropTableMessage = messageFactory.getDeserializer().getDropTableMessage(event.getMessage()); }
public AddPartitionReplicationTask(HCatNotificationEvent event) { super(event); validateEventType(event,HCatConstants.HCAT_ADD_PARTITION_EVENT); addPartitionMessage = messageFactory.getDeserializer().getAddPartitionMessage(event.getMessage()); }
@Override public HCatEventMessage checkValid() { if (getTable() == null) throw new IllegalStateException("Table name unset."); return super.checkValid(); } }
@Override public HCatEventMessage checkValid() { if (getTable() == null) throw new IllegalStateException("Table name unset."); return super.checkValid(); } }
public abstract MessageDeserializer getDeserializer();
public boolean needsStagingDirs(){ // we need staging directories as long as a single partition needed addition return (!addPartitionMessage.getPartitions().isEmpty()); }
@Override public void onAlterPartition(AlterPartitionEvent ape) throws MetaException { if (ape.getStatus()) { Partition before = ape.getOldPartition(); Partition after = ape.getNewPartition(); String topicName = getTopicName(ape.getTable()); send(messageFactory.buildAlterPartitionMessage(ape.getTable(),before, after, ape.getWriteId()), topicName); } }