// 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.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.button.MaterialButton;
import com.google.android.material.textfield.TextInputEditText;
import com.google.android.material.textfield.TextInputLayout;
import com.toughra.ustadmobile.R;
import com.ustadmobile.core.controller.Login2Presenter;
import java.lang.Deprecated;
import java.lang.Object;

public abstract class FragmentLogin2Binding extends ViewDataBinding {
  @NonNull
  public final Barrier bottomBarrier;

  @NonNull
  public final MaterialButton connectAsGuest;

  @NonNull
  public final MaterialButton createAccount;

  @NonNull
  public final MaterialButton loginButton;

  @NonNull
  public final TextView loginErrorText;

  @NonNull
  public final TextView loginIntentMessage;

  @NonNull
  public final AppCompatImageView organisationIcon;

  @NonNull
  public final TextInputLayout passwordView;

  @NonNull
  public final TextInputEditText personPassword;

  @NonNull
  public final TextInputEditText personUsername;

  @NonNull
  public final Barrier topConstraint;

  @NonNull
  public final TextInputLayout usernameView;

  @NonNull
  public final TextView versionInfoText;

  @Bindable
  protected Login2Presenter mPresenter;

  @Bindable
  protected String mUsername;

  @Bindable
  protected String mPassword;

  @Bindable
  protected boolean mButtonEnabled;

  @Bindable
  protected boolean mFieldsEnabled;

  @Bindable
  protected String mVersionInfo;

  @Bindable
  protected String mIntentMessage;

  protected FragmentLogin2Binding(Object _bindingComponent, View _root, int _localFieldCount,
      Barrier bottomBarrier, MaterialButton connectAsGuest, MaterialButton createAccount,
      MaterialButton loginButton, TextView loginErrorText, TextView loginIntentMessage,
      AppCompatImageView organisationIcon, TextInputLayout passwordView,
      TextInputEditText personPassword, TextInputEditText personUsername, Barrier topConstraint,
      TextInputLayout usernameView, TextView versionInfoText) {
    super(_bindingComponent, _root, _localFieldCount);
    this.bottomBarrier = bottomBarrier;
    this.connectAsGuest = connectAsGuest;
    this.createAccount = createAccount;
    this.loginButton = loginButton;
    this.loginErrorText = loginErrorText;
    this.loginIntentMessage = loginIntentMessage;
    this.organisationIcon = organisationIcon;
    this.passwordView = passwordView;
    this.personPassword = personPassword;
    this.personUsername = personUsername;
    this.topConstraint = topConstraint;
    this.usernameView = usernameView;
    this.versionInfoText = versionInfoText;
  }

  public abstract void setPresenter(@Nullable Login2Presenter presenter);

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

  public abstract void setUsername(@Nullable String username);

  @Nullable
  public String getUsername() {
    return mUsername;
  }

  public abstract void setPassword(@Nullable String password);

  @Nullable
  public String getPassword() {
    return mPassword;
  }

  public abstract void setButtonEnabled(boolean buttonEnabled);

  public boolean getButtonEnabled() {
    return mButtonEnabled;
  }

  public abstract void setFieldsEnabled(boolean fieldsEnabled);

  public boolean getFieldsEnabled() {
    return mFieldsEnabled;
  }

  public abstract void setVersionInfo(@Nullable String versionInfo);

  @Nullable
  public String getVersionInfo() {
    return mVersionInfo;
  }

  public abstract void setIntentMessage(@Nullable String intentMessage);

  @Nullable
  public String getIntentMessage() {
    return mIntentMessage;
  }

  @NonNull
  public static FragmentLogin2Binding 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.fragment_login2, root, attachToRoot, component)
   */
  @NonNull
  @Deprecated
  public static FragmentLogin2Binding inflate(@NonNull LayoutInflater inflater,
      @Nullable ViewGroup root, boolean attachToRoot, @Nullable Object component) {
    return ViewDataBinding.<FragmentLogin2Binding>inflateInternal(inflater, R.layout.fragment_login2, root, attachToRoot, component);
  }

  @NonNull
  public static FragmentLogin2Binding 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.fragment_login2, null, false, component)
   */
  @NonNull
  @Deprecated
  public static FragmentLogin2Binding inflate(@NonNull LayoutInflater inflater,
      @Nullable Object component) {
    return ViewDataBinding.<FragmentLogin2Binding>inflateInternal(inflater, R.layout.fragment_login2, null, false, component);
  }

  public static FragmentLogin2Binding 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 FragmentLogin2Binding bind(@NonNull View view, @Nullable Object component) {
    return (FragmentLogin2Binding)bind(component, view, R.layout.fragment_login2);
  }
}
