package org.snmp4j.agent.mo;

import org.snmp4j.agent.mo.MOTableRow;
import org.snmp4j.smi.OID;

/* JADX INFO: loaded from: classes.dex */
public class MOTableRelation<BaseRow extends MOTableRow, DependentRow extends MOTableRow> {
    private MOTable<BaseRow, ? extends MOColumn, ? extends MOTableModel<BaseRow>> baseTable;
    private MOTable<DependentRow, ? extends MOColumn, ? extends MOTableModel<DependentRow>> dependentTable;

    protected class RelationShipListener implements MOTableRowListener<BaseRow> {
        protected RelationShipListener() {
        }

        /* JADX WARN: Multi-variable type inference failed */
        @Override // org.snmp4j.agent.mo.MOTableRowListener
        public void rowChanged(MOTableRowEvent<BaseRow> mOTableRowEvent) {
            int type = mOTableRowEvent.getType();
            if (type != 2) {
                if (type != 3) {
                    return;
                }
                MOTableRelation.this.removeDependentRows(mOTableRowEvent.getRow());
            } else if (MOTableRelation.this.hasDependentRow(mOTableRowEvent.getRow())) {
                MOTableRelation.this.addDependentRows(mOTableRowEvent.getRow());
            }
        }
    }

    public MOTableRelation(MOTable<BaseRow, ? extends MOColumn, ? extends MOTableModel<BaseRow>> mOTable, MOTable<DependentRow, ? extends MOColumn, ? extends MOTableModel<DependentRow>> mOTable2) {
        this.baseTable = mOTable;
        this.dependentTable = mOTable2;
    }

    protected void addDependentRows(BaseRow baserow) {
        for (OID oid : getDependentIndexes(baserow)) {
            MOTable<DependentRow, ? extends MOColumn, ? extends MOTableModel<DependentRow>> mOTable = this.dependentTable;
            MOTableRow mOTableRowCreateRow = mOTable.createRow(oid, mOTable.getDefaultValues());
            mOTableRowCreateRow.setBaseRow(baserow);
            this.dependentTable.addRow(mOTableRowCreateRow);
        }
    }

    public void createRelationShip() {
        this.baseTable.addMOTableRowListener(createRelationShipListener());
    }

    protected MOTableRowListener<BaseRow> createRelationShipListener() {
        return new RelationShipListener();
    }

    public OID[] getDependentIndexes(BaseRow baserow) {
        return new OID[]{baserow.getIndex()};
    }

    public boolean hasDependentRow(BaseRow baserow) {
        return true;
    }

    protected MOTableRow[] removeDependentRows(BaseRow baserow) {
        OID[] dependentIndexes = getDependentIndexes(baserow);
        MOTableRow[] mOTableRowArr = new MOTableRow[dependentIndexes.length];
        for (int i2 = 0; i2 < dependentIndexes.length; i2++) {
            mOTableRowArr[i2] = this.dependentTable.removeRow(dependentIndexes[i2]);
        }
        return mOTableRowArr;
    }
}
