// Generated by data binding compiler. Do not edit!
package com.toughra.ustadmobile.databinding;

import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.AppCompatImageView;
import androidx.constraintlayout.widget.Barrier;
import androidx.databinding.Bindable;
import androidx.databinding.DataBindingUtil;
import androidx.databinding.ViewDataBinding;
import com.google.android.material.imageview.ShapeableImageView;
import com.toughra.ustadmobile.R;
import com.ustadmobile.core.controller.ClazzDetailOverviewPresenter;
import com.ustadmobile.lib.db.entities.ClazzAssignmentWithMetrics;
import com.ustadmobile.lib.db.entities.CourseBlockWithCompleteEntity;
import java.lang.Deprecated;
import java.lang.Object;

public abstract class ItemAssignmentCourseBlockBinding extends ViewDataBinding {
  @NonNull
  public final Barrier deadlineBarrier;

  @NonNull
  public final TextView itemBlockLine1Text;

  @NonNull
  public final TextView itemBlockLine2Desc;

  @NonNull
  public final AppCompatImageView itemClazzAssignmentDeadlineIcon;

  @NonNull
  public final ShapeableImageView itemCourseBlockIcon;

  @NonNull
  public final TextView itemPersonFileSubmissionStatus;

  @NonNull
  public final TextView itemPersonPenalty;

  @NonNull
  public final TextView line3Deadline;

  @NonNull
  public final TextView line3ProgressText;

  @NonNull
  public final ImageView submissionStatusIcon;

  @NonNull
  public final TextView submissionStatusScoreValue;

  @Bindable
  protected ClazzAssignmentWithMetrics mAssignment;

  @Bindable
  protected CourseBlockWithCompleteEntity mBlock;

  @Bindable
  protected Integer mDateTimeMode;

  @Bindable
  protected String mTimeZoneId;

  @Bindable
  protected ClazzDetailOverviewPresenter mPresenter;

  protected ItemAssignmentCourseBlockBinding(Object _bindingComponent, View _root,
      int _localFieldCount, Barrier deadlineBarrier, TextView itemBlockLine1Text,
      TextView itemBlockLine2Desc, AppCompatImageView itemClazzAssignmentDeadlineIcon,
      ShapeableImageView itemCourseBlockIcon, TextView itemPersonFileSubmissionStatus,
      TextView itemPersonPenalty, TextView line3Deadline, TextView line3ProgressText,
      ImageView submissionStatusIcon, TextView submissionStatusScoreValue) {
    super(_bindingComponent, _root, _localFieldCount);
    this.deadlineBarrier = deadlineBarrier;
    this.itemBlockLine1Text = itemBlockLine1Text;
    this.itemBlockLine2Desc = itemBlockLine2Desc;
    this.itemClazzAssignmentDeadlineIcon = itemClazzAssignmentDeadlineIcon;
    this.itemCourseBlockIcon = itemCourseBlockIcon;
    this.itemPersonFileSubmissionStatus = itemPersonFileSubmissionStatus;
    this.itemPersonPenalty = itemPersonPenalty;
    this.line3Deadline = line3Deadline;
    this.line3ProgressText = line3ProgressText;
    this.submissionStatusIcon = submissionStatusIcon;
    this.submissionStatusScoreValue = submissionStatusScoreValue;
  }

  public abstract void setAssignment(@Nullable ClazzAssignmentWithMetrics assignment);

  @Nullable
  public ClazzAssignmentWithMetrics getAssignment() {
    return mAssignment;
  }

  public abstract void setBlock(@Nullable CourseBlockWithCompleteEntity block);

  @Nullable
  public CourseBlockWithCompleteEntity getBlock() {
    return mBlock;
  }

  public abstract void setDateTimeMode(@Nullable Integer dateTimeMode);

  @Nullable
  public Integer getDateTimeMode() {
    return mDateTimeMode;
  }

  public abstract void setTimeZoneId(@Nullable String timeZoneId);

  @Nullable
  public String getTimeZoneId() {
    return mTimeZoneId;
  }

  public abstract void setPresenter(@Nullable ClazzDetailOverviewPresenter presenter);

  @Nullable
  public ClazzDetailOverviewPresenter getPresenter() {
    return mPresenter;
  }

  @NonNull
  public static ItemAssignmentCourseBlockBinding inflate(@NonNull LayoutInflater inflater,
      @Nullable ViewGroup root, boolean attachToRoot) {
    return inflate(inflater, root, attachToRoot, DataBindingUtil.getDefaultComponent());
  }

  /**
   * This method receives DataBindingComponent instance as type Object instead of
   * type DataBindingComponent to avoid causing too many compilation errors if
   * compilation fails for another reason.
   * https://issuetracker.google.com/issues/116541301
   * @Deprecated Use DataBindingUtil.inflate(inflater, R.layout.item_assignment_course_block, root, attachToRoot, component)
   */
  @NonNull
  @Deprecated
  public static ItemAssignmentCourseBlockBinding inflate(@NonNull LayoutInflater inflater,
      @Nullable ViewGroup root, boolean attachToRoot, @Nullable Object component) {
    return ViewDataBinding.<ItemAssignmentCourseBlockBinding>inflateInternal(inflater, R.layout.item_assignment_course_block, root, attachToRoot, component);
  }

  @NonNull
  public static ItemAssignmentCourseBlockBinding inflate(@NonNull LayoutInflater inflater) {
    return inflate(inflater, DataBindingUtil.getDefaultComponent());
  }

  /**
   * This method receives DataBindingComponent instance as type Object instead of
   * type DataBindingComponent to avoid causing too many compilation errors if
   * compilation fails for another reason.
   * https://issuetracker.google.com/issues/116541301
   * @Deprecated Use DataBindingUtil.inflate(inflater, R.layout.item_assignment_course_block, null, false, component)
   */
  @NonNull
  @Deprecated
  public static ItemAssignmentCourseBlockBinding inflate(@NonNull LayoutInflater inflater,
      @Nullable Object component) {
    return ViewDataBinding.<ItemAssignmentCourseBlockBinding>inflateInternal(inflater, R.layout.item_assignment_course_block, null, false, component);
  }

  public static ItemAssignmentCourseBlockBinding bind(@NonNull View view) {
    return bind(view, DataBindingUtil.getDefaultComponent());
  }

  /**
   * This method receives DataBindingComponent instance as type Object instead of
   * type DataBindingComponent to avoid causing too many compilation errors if
   * compilation fails for another reason.
   * https://issuetracker.google.com/issues/116541301
   * @Deprecated Use DataBindingUtil.bind(view, component)
   */
  @Deprecated
  public static ItemAssignmentCourseBlockBinding bind(@NonNull View view,
      @Nullable Object component) {
    return (ItemAssignmentCourseBlockBinding)bind(component, view, R.layout.item_assignment_course_block);
  }
}
