Skip to content

Commit

Permalink
Fixes migration to the new BiomesObject format.
Browse files Browse the repository at this point in the history
  • Loading branch information
BONNe committed Jan 24, 2022
1 parent b2c5a99 commit cc8e67d
Show file tree
Hide file tree
Showing 2 changed files with 144 additions and 9 deletions.
130 changes: 121 additions & 9 deletions src/main/java/world/bentobox/biomes/database/objects/BiomesObject.java
Original file line number Diff line number Diff line change
Expand Up @@ -58,9 +58,9 @@ public BiomesObject(Biome biome, World world)
}


// ---------------------------------------------------------------------
// Section: Setters and Getters
// ---------------------------------------------------------------------
// ---------------------------------------------------------------------
// Section: Setters and Getters
// ---------------------------------------------------------------------


/**
Expand Down Expand Up @@ -411,9 +411,89 @@ public void setCostIncrement(@Nullable Double costIncrement)
}


// ---------------------------------------------------------------------
// Section: Other methods
// ---------------------------------------------------------------------
// ---------------------------------------------------------------------
// Section: Deprecated fields
// ---------------------------------------------------------------------


/**
* Gets required level.
*
* @return the required level
*/
@Nullable
@Deprecated
public Long getRequiredLevel()
{
return requiredLevel;
}


/**
* Sets required level.
*
* @param requiredLevel the required level
*/
@Deprecated
public void setRequiredLevel(@Nullable Long requiredLevel)
{
this.requiredLevel = requiredLevel;
}


/**
* Gets required cost.
*
* @return the required cost
*/
@Nullable
@Deprecated
public Double getRequiredCost()
{
return requiredCost;
}


/**
* Sets required cost.
*
* @param requiredCost the required cost
*/
@Deprecated
public void setRequiredCost(@Nullable Double requiredCost)
{
this.requiredCost = requiredCost;
}


/**
* Gets required permissions.
*
* @return the required permissions
*/
@Nullable
@Deprecated
public Set<String> getRequiredPermissions()
{
return requiredPermissions;
}


/**
* Sets required permissions.
*
* @param requiredPermissions the required permissions
*/
@Deprecated
public void setRequiredPermissions(@Nullable Set<String> requiredPermissions)
{
this.requiredPermissions = requiredPermissions;
}


// ---------------------------------------------------------------------
// Section: Other methods
// ---------------------------------------------------------------------


/*
Expand Down Expand Up @@ -560,9 +640,9 @@ public enum CostMode
}


// ---------------------------------------------------------------------
// Section: Variables
// ---------------------------------------------------------------------
// ---------------------------------------------------------------------
// Section: Variables
// ---------------------------------------------------------------------


/**
Expand Down Expand Up @@ -682,4 +762,36 @@ public enum CostMode
@Expose
@Nullable
private Double costIncrement = null;


// ---------------------------------------------------------------------
// Section: Deprecated fields
// ---------------------------------------------------------------------

/**
* Deprecated field. Used for migration to the new system.
* @deprecated 2.0.0
*/
@Expose
@Nullable
@Deprecated
private Long requiredLevel;

/**
* Deprecated field. Used for migration to the new system.
* @deprecated 2.0.0
*/
@Expose
@Nullable
@Deprecated
private Double requiredCost;

/**
* Deprecated field. Used for migration to the new system.
* @deprecated 2.0.0
*/
@Expose
@Nullable
@Deprecated
private Set<String> requiredPermissions;
}
Original file line number Diff line number Diff line change
Expand Up @@ -287,6 +287,29 @@ private boolean migrateBiomes(World world)

updated = true;
}

// Migrate to the new format.
if (biomesObject.getRequiredLevel() != null)
{
biomesObject.setUnlockLevel(biomesObject.getRequiredLevel());
biomesObject.setRequiredLevel(null);
updated = true;
}

if (biomesObject.getRequiredCost() != null)
{
biomesObject.setCost(biomesObject.getRequiredCost());
biomesObject.setCostMode(BiomesObject.CostMode.STATIC);
biomesObject.setRequiredCost(null);
updated = true;
}

if (biomesObject.getRequiredPermissions() != null)
{
biomesObject.setUnlockPermissions(biomesObject.getRequiredPermissions());
biomesObject.setRequiredPermissions(null);
updated = true;
}
}

return updated;
Expand Down

0 comments on commit cc8e67d

Please sign in to comment.