/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package yafft.FFModel.ModelItems;

import java.sql.Timestamp;
import java.util.ArrayList;
import javafx.beans.property.*;
import java.net.URL;

/**
 *
 * @author michal
 */
public class PasswordItem {

    private ObjectProperty<URL> hostName;
    private StringProperty encryptedUsername;
    private StringProperty fieldName;

   
    private StringProperty encryptedPassword;
    private ObjectProperty<Timestamp> timeCreated;
    private ObjectProperty<Timestamp> timeLastUsed;
    private ObjectProperty<Timestamp> timePasswordChanged;
    private IntegerProperty timesUsed;

    public PasswordItem(ObjectProperty<URL> hostName, StringProperty encryptedUsername, StringProperty encryptedPassword, ObjectProperty<Timestamp> timeCreated, ObjectProperty<Timestamp> timeLastUsed, ObjectProperty<Timestamp> timePasswordChanged, IntegerProperty timesUsed) {
        this.hostName = hostName;
        this.encryptedUsername = encryptedUsername;
        this.encryptedPassword = encryptedPassword;
        this.timeCreated = timeCreated;
        this.timeLastUsed = timeLastUsed;
        this.timePasswordChanged = timePasswordChanged;
        this.timesUsed = timesUsed;
    }

    public PasswordItem(ObjectProperty<URL> hostName, StringProperty encryptedUsername, StringProperty fieldName, StringProperty encryptedPassword, ObjectProperty<Timestamp> timeCreated, ObjectProperty<Timestamp> timeLastUsed, ObjectProperty<Timestamp> timePasswordChanged, IntegerProperty timesUsed) {
        this.hostName = hostName;
        this.encryptedUsername = encryptedUsername;
        this.fieldName = fieldName;
        this.encryptedPassword = encryptedPassword;
        this.timeCreated = timeCreated;
        this.timeLastUsed = timeLastUsed;
        this.timePasswordChanged = timePasswordChanged;
        this.timesUsed = timesUsed;
    }
    
    
    
     public StringProperty getFieldName() {
        return fieldName;
    }

    public void setFieldName(StringProperty fieldName) {
        this.fieldName = fieldName;
    }

    public ObjectProperty<URL> getHostName() {
        return hostName;
    }

    public void setHostName(ObjectProperty<URL> hostName) {
        this.hostName = hostName;
    }

    public StringProperty getEncryptedUsername() {
        return encryptedUsername;
    }

    public void setEncryptedUsername(StringProperty encryptedUsername) {
        this.encryptedUsername = encryptedUsername;
    }

    public StringProperty getEncryptedPassword() {
        return encryptedPassword;
    }

    public void setEncryptedPassword(StringProperty encryptedPassword) {
        this.encryptedPassword = encryptedPassword;
    }

    public ObjectProperty<Timestamp> getTimeCreated() {
        return timeCreated;
    }

    public void setTimeCreated(ObjectProperty<Timestamp> timeCreated) {
        this.timeCreated = timeCreated;
    }

    public ObjectProperty<Timestamp> getTimeLastUsed() {
        return timeLastUsed;
    }

    public void setTimeLastUsed(ObjectProperty<Timestamp> timeLastUsed) {
        this.timeLastUsed = timeLastUsed;
    }

    public ObjectProperty<Timestamp> getTimePasswordChanged() {
        return timePasswordChanged;
    }

    public void setTimePasswordChanged(ObjectProperty<Timestamp> timePasswordChanged) {
        this.timePasswordChanged = timePasswordChanged;
    }

    public IntegerProperty getTimesUsed() {
        return timesUsed;
    }

    public void setTimesUsed(IntegerProperty timesUsed) {
        this.timesUsed = timesUsed;
    }

    @Override
    public String toString() {
        return "PasswordItem{" + "hostName=" + hostName + ", fieldName=" + fieldName + ", timeCreated=" + timeCreated + ", timeLastUsed=" + timeLastUsed + ", timePasswordChanged=" + timePasswordChanged + ", timesUsed=" + timesUsed + '}';
    }
    
    

}
