1
0
mirror of https://github.com/Rogiel/l2jserver2 synced 2025-12-07 16:03:10 +00:00

Implements database structure automatic generation

This commit is contained in:
2011-12-25 14:34:14 -02:00
parent 3fc66cecdc
commit b2e84280ed
77 changed files with 44063 additions and 42113 deletions

View File

@@ -26,10 +26,6 @@
<directory>${project.basedir}/distribution/global</directory>
<outputDirectory>/</outputDirectory>
</fileSet>
<fileSet>
<directory>${project.basedir}/distribution/sql</directory>
<outputDirectory>/</outputDirectory>
</fileSet>
</fileSets>
<files>
<file>

View File

@@ -26,10 +26,6 @@
<directory>${project.basedir}/distribution/global</directory>
<outputDirectory>/</outputDirectory>
</fileSet>
<fileSet>
<directory>${project.basedir}/distribution/sql</directory>
<outputDirectory>/</outputDirectory>
</fileSet>
</fileSets>
<files>
<file>

View File

@@ -25,10 +25,6 @@
<directory>${project.basedir}/distribution/global</directory>
<outputDirectory>/</outputDirectory>
</fileSet>
<fileSet>
<directory>${project.basedir}/distribution/sql</directory>
<outputDirectory>/</outputDirectory>
</fileSet>
</fileSets>
<files>
<file>

View File

@@ -16,6 +16,10 @@
*/
package com.l2jserver.service.database;
import java.io.IOException;
import java.sql.Connection;
import java.sql.SQLException;
import com.google.inject.Inject;
import com.l2jserver.model.game.CharacterShortcut.ShortcutType;
import com.l2jserver.model.template.actor.ActorSex;
@@ -31,7 +35,16 @@ import com.l2jserver.service.cache.CacheService;
import com.l2jserver.service.configuration.ConfigurationService;
import com.l2jserver.service.core.LoggingService;
import com.l2jserver.service.core.threading.ThreadService;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService;
import com.l2jserver.service.core.vfs.VFSService;
import com.l2jserver.service.database.model.QActorSkill;
import com.l2jserver.service.database.model.QCharacter;
import com.l2jserver.service.database.model.QCharacterFriend;
import com.l2jserver.service.database.model.QCharacterShortcut;
import com.l2jserver.service.database.model.QClan;
import com.l2jserver.service.database.model.QItem;
import com.l2jserver.service.database.model.QLogChat;
import com.l2jserver.service.database.model.QNPC;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService;
import com.l2jserver.service.game.chat.ChatMessageType;
import com.l2jserver.service.game.template.TemplateService;
import com.mysema.query.sql.types.EnumByNameType;
@@ -41,28 +54,28 @@ import com.mysema.query.sql.types.EnumByNameType;
* to JDBC.
*
* <h1>Internal specification</h1> <h2>The
* {@link com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.Query
* {@link com.l2jserver.service.database.sql.AbstractSQLDatabaseService.Query
* Query} object</h2>
*
* If you wish to implement a new {@link DataAccessObject} you should try not
* use
* {@link com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.Query
* {@link com.l2jserver.service.database.sql.AbstractSQLDatabaseService.Query
* Query} object directly because it only provides low level access to the JDBC
* architecture. Instead, you could use an specialized class, like
* {@link com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.InsertQuery
* {@link com.l2jserver.service.database.sql.AbstractSQLDatabaseService.InsertQuery
* InsertUpdateQuery} ,
* {@link com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.SelectListQuery
* {@link com.l2jserver.service.database.sql.AbstractSQLDatabaseService.SelectListQuery
* SelectListQuery} or
* {@link com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.SelectSingleQuery
* {@link com.l2jserver.service.database.sql.AbstractSQLDatabaseService.SelectSingleQuery
* SelectSingleQuery} . If you do need low level access, feel free to use the
* {@link com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.Query
* {@link com.l2jserver.service.database.sql.AbstractSQLDatabaseService.Query
* Query} class directly.
*
* @author <a href="http://www.rogiel.com">Rogiel</a>
*/
@Depends({ LoggingService.class, CacheService.class,
ConfigurationService.class, TemplateService.class, ThreadService.class })
public class GameServerJDBCDatabaseService extends AbstractJDBCDatabaseService
public class GameServerJDBCDatabaseService extends AbstractSQLDatabaseService
implements DatabaseService {
/**
* @param configService
@@ -71,17 +84,20 @@ public class GameServerJDBCDatabaseService extends AbstractJDBCDatabaseService
* the cache service
* @param threadService
* the thread service
* @param vfsService
* the vfs service
* @param daoResolver
* the {@link DataAccessObject DAO} resolver
*/
@Inject
public GameServerJDBCDatabaseService(ConfigurationService configService,
CacheService cacheService, ThreadService threadService,
DAOResolver daoResolver) {
VFSService vfsService, DAOResolver daoResolver) {
super(
configService,
cacheService,
threadService,
vfsService,
daoResolver,
new EnumByNameType<CharacterRace>(CharacterRace.class),
new EnumByNameType<CharacterClass>(CharacterClass.class),
@@ -94,4 +110,18 @@ public class GameServerJDBCDatabaseService extends AbstractJDBCDatabaseService
new EnumByNameType<InventoryPaperdoll>(InventoryPaperdoll.class),
new EnumByNameType<ChatMessageType>(ChatMessageType.class));
}
@Override
protected void ensureDatabaseSchema(Connection conn) throws SQLException, IOException {
updateSchema(conn, QActorSkill.actorSkill);
updateSchema(conn, QCharacter.character);
updateSchema(conn, QCharacterFriend.characterFriend);
updateSchema(conn, QCharacterShortcut.characterShortcut);
updateSchema(conn, QClan.clan);
updateSchema(conn, QItem.item);
updateSchema(conn, QLogChat.logChat);
if (updateSchema(conn, QNPC.npc)) {
importSQL(conn, vfsService.resolve("data/sql/npc.sql"));
}
}
}

View File

@@ -26,13 +26,13 @@ import com.l2jserver.model.dao.ChatMessageDAO;
import com.l2jserver.model.dao.ClanDAO;
import com.l2jserver.model.dao.ItemDAO;
import com.l2jserver.model.dao.NPCDAO;
import com.l2jserver.service.database.jdbc.JDBCCharacterDAO;
import com.l2jserver.service.database.jdbc.JDBCCharacterFriendDAO;
import com.l2jserver.service.database.jdbc.JDBCCharacterShortcutDAO;
import com.l2jserver.service.database.jdbc.JDBCChatMessageDAO;
import com.l2jserver.service.database.jdbc.JDBCClanDAO;
import com.l2jserver.service.database.jdbc.JDBCItemDAO;
import com.l2jserver.service.database.jdbc.JDBCNPCDAO;
import com.l2jserver.service.database.sql.SQLCharacterDAO;
import com.l2jserver.service.database.sql.SQLCharacterFriendDAO;
import com.l2jserver.service.database.sql.SQLCharacterShortcutDAO;
import com.l2jserver.service.database.sql.SQLChatMessageDAO;
import com.l2jserver.service.database.sql.SQLClanDAO;
import com.l2jserver.service.database.sql.SQLItemDAO;
import com.l2jserver.service.database.sql.SQLNPCDAO;
/**
* Google Guice {@link Module} for JDBC DAOs
@@ -42,20 +42,20 @@ import com.l2jserver.service.database.jdbc.JDBCNPCDAO;
public class JDBCDAOModule extends AbstractModule {
@Override
protected void configure() {
bind(CharacterDAO.class).to(JDBCCharacterDAO.class)
bind(CharacterDAO.class).to(SQLCharacterDAO.class)
.in(Scopes.SINGLETON);
bind(CharacterFriendDAO.class).to(JDBCCharacterFriendDAO.class).in(
bind(CharacterFriendDAO.class).to(SQLCharacterFriendDAO.class).in(
Scopes.SINGLETON);
bind(CharacterShortcutDAO.class).to(JDBCCharacterShortcutDAO.class).in(
bind(CharacterShortcutDAO.class).to(SQLCharacterShortcutDAO.class).in(
Scopes.SINGLETON);
bind(NPCDAO.class).to(JDBCNPCDAO.class).in(Scopes.SINGLETON);
bind(NPCDAO.class).to(SQLNPCDAO.class).in(Scopes.SINGLETON);
bind(ItemDAO.class).to(JDBCItemDAO.class).in(Scopes.SINGLETON);
bind(ClanDAO.class).to(JDBCClanDAO.class).in(Scopes.SINGLETON);
bind(ItemDAO.class).to(SQLItemDAO.class).in(Scopes.SINGLETON);
bind(ClanDAO.class).to(SQLClanDAO.class).in(Scopes.SINGLETON);
// logs
bind(ChatMessageDAO.class).to(JDBCChatMessageDAO.class).in(
bind(ChatMessageDAO.class).to(SQLChatMessageDAO.class).in(
Scopes.SINGLETON);
// DAO Resolver

View File

@@ -3,6 +3,7 @@ package com.l2jserver.service.database.model;
import static com.mysema.query.types.PathMetadataFactory.forVariable;
import com.l2jserver.model.game.Skill;
import com.l2jserver.service.database.sql.ddl.annotation.ColumnSize;
import com.mysema.query.sql.PrimaryKey;
import com.mysema.query.sql.RelationalPathBase;
import com.mysema.query.types.Path;
@@ -19,12 +20,15 @@ public class QActorSkill extends RelationalPathBase<Skill> {
public static final QActorSkill actorSkill = new QActorSkill("actor_skill");
@ColumnSize(10)
public final NumberPath<Integer> actorId = createNumber("actor_id",
Integer.class);
@ColumnSize(4)
public final NumberPath<Integer> level = createNumber("level",
Integer.class);
@ColumnSize(6)
public final NumberPath<Integer> skillId = createNumber("skill_id",
Integer.class);

View File

@@ -5,10 +5,14 @@ import static com.mysema.query.types.PathMetadataFactory.forVariable;
import com.l2jserver.model.template.actor.ActorSex;
import com.l2jserver.model.template.character.CharacterClass;
import com.l2jserver.model.template.character.CharacterRace;
import com.l2jserver.model.world.Clan;
import com.l2jserver.model.world.L2Character;
import com.l2jserver.model.world.character.CharacterAppearance.CharacterFace;
import com.l2jserver.model.world.character.CharacterAppearance.CharacterHairColor;
import com.l2jserver.model.world.character.CharacterAppearance.CharacterHairStyle;
import com.l2jserver.service.database.sql.ddl.annotation.ColumnNullable;
import com.l2jserver.service.database.sql.ddl.annotation.ColumnSize;
import com.mysema.query.sql.ForeignKey;
import com.mysema.query.sql.PrimaryKey;
import com.mysema.query.sql.RelationalPathBase;
import com.mysema.query.types.Path;
@@ -27,40 +31,49 @@ public class QCharacter extends RelationalPathBase<L2Character> {
public static final QCharacter character = new QCharacter("l2character");
@ColumnSize(10)
public final NumberPath<Integer> characterId = createNumber("character_id",
Integer.class);
@ColumnSize(50)
public final StringPath accountId = createString("account_id");
@ColumnSize(10)
@ColumnNullable
public final NumberPath<Integer> clanId = createNumber("clan_id",
Integer.class);
@ColumnSize(100)
public final StringPath name = createString("name");
public final EnumPath<CharacterRace> race = createEnum("race",
CharacterRace.class);
public final EnumPath<ActorSex> sex = createEnum("sex", ActorSex.class);
public final EnumPath<CharacterClass> characterClass = createEnum("class",
CharacterClass.class);
@ColumnSize(4)
public final NumberPath<Integer> level = createNumber("level",
Integer.class);
@ColumnSize(10)
public final NumberPath<Long> experience = createNumber("experience",
Long.class);
@ColumnSize(10)
public final NumberPath<Integer> sp = createNumber("sp", Integer.class);
public final NumberPath<Double> cp = createNumber("cp", Double.class);
public final NumberPath<Double> hp = createNumber("hp", Double.class);
public final NumberPath<Double> mp = createNumber("mp", Double.class);
public final NumberPath<Double> pointAngle = createNumber("point_angle",
Double.class);
@ColumnSize(10)
public final NumberPath<Integer> pointX = createNumber("point_x",
Integer.class);
@ColumnSize(10)
public final NumberPath<Integer> pointY = createNumber("point_y",
Integer.class);
@ColumnSize(10)
public final NumberPath<Integer> pointZ = createNumber("point_z",
Integer.class);
public final NumberPath<Double> pointAngle = createNumber("point_angle",
Double.class);
public final EnumPath<CharacterHairColor> appearanceHairColor = createEnum(
"appearance_hair_color", CharacterHairColor.class);
@@ -70,6 +83,7 @@ public class QCharacter extends RelationalPathBase<L2Character> {
"apperance_face", CharacterFace.class);
public final PrimaryKey<L2Character> primary = createPrimaryKey(characterId);
public final ForeignKey<Clan> clanIdKey = createForeignKey(clanId, "");
public QCharacter(String variable) {
super(L2Character.class, forVariable(variable), "null", "character");

View File

@@ -3,6 +3,7 @@ package com.l2jserver.service.database.model;
import static com.mysema.query.types.PathMetadataFactory.forVariable;
import com.l2jserver.model.game.CharacterFriend;
import com.l2jserver.service.database.sql.ddl.annotation.ColumnSize;
import com.mysema.query.sql.PrimaryKey;
import com.mysema.query.types.Path;
import com.mysema.query.types.PathMetadata;
@@ -20,8 +21,10 @@ public class QCharacterFriend extends
public static final QCharacterFriend characterFriend = new QCharacterFriend(
"character_friend");
@ColumnSize(10)
public final NumberPath<Integer> characterId = createNumber("character_id",
Integer.class);
@ColumnSize(10)
public final NumberPath<Integer> characterIdFriend = createNumber(
"character_id_friend", Integer.class);

View File

@@ -4,52 +4,68 @@ import static com.mysema.query.types.PathMetadataFactory.forVariable;
import com.l2jserver.model.game.CharacterShortcut;
import com.l2jserver.model.game.CharacterShortcut.ShortcutType;
import com.l2jserver.service.database.sql.ddl.annotation.ColumnAutoIncrement;
import com.l2jserver.service.database.sql.ddl.annotation.ColumnNullable;
import com.l2jserver.service.database.sql.ddl.annotation.ColumnSize;
import com.mysema.query.sql.PrimaryKey;
import com.mysema.query.types.Path;
import com.mysema.query.types.PathMetadata;
import com.mysema.query.types.path.EnumPath;
import com.mysema.query.types.path.NumberPath;
/**
* Maps <code>character_shortcut</code> table into type-safe java objects
*
* @author <a href="http://www.rogiel.com">Rogiel</a>
*/
public class QCharacterShortcut extends com.mysema.query.sql.RelationalPathBase<CharacterShortcut> {
private static final long serialVersionUID = 1450964558;
public class QCharacterShortcut extends
com.mysema.query.sql.RelationalPathBase<CharacterShortcut> {
private static final long serialVersionUID = 1450964558;
public static final QCharacterShortcut characterShortcut = new QCharacterShortcut("character_shortcut");
public static final QCharacterShortcut characterShortcut = new QCharacterShortcut(
"character_shortcut");
public final NumberPath<Integer> characterId = createNumber("character_id", Integer.class);
@ColumnSize(10)
@ColumnAutoIncrement
public final NumberPath<Integer> shortcutId = createNumber("shortcut_id",
Integer.class);
public final NumberPath<Integer> characterType = createNumber("character_type", Integer.class);
@ColumnSize(10)
public final NumberPath<Integer> characterId = createNumber("character_id",
Integer.class);
@ColumnSize(10)
@ColumnNullable
public final NumberPath<Integer> characterType = createNumber(
"character_type", Integer.class);
@ColumnSize(3)
@ColumnNullable
public final NumberPath<Integer> level = createNumber("level",
Integer.class);
@ColumnSize(10)
public final NumberPath<Integer> objectId = createNumber("object_id",
Integer.class);
@ColumnSize(2)
public final NumberPath<Integer> page = createNumber("page", Integer.class);
@ColumnSize(2)
public final NumberPath<Integer> slot = createNumber("slot", Integer.class);
public final NumberPath<Integer> level = createNumber("level", Integer.class);
public final EnumPath<ShortcutType> type = createEnum("type",
ShortcutType.class);
public final NumberPath<Integer> objectId = createNumber("object_id", Integer.class);
public final PrimaryKey<CharacterShortcut> primary = createPrimaryKey(shortcutId);
public final NumberPath<Integer> page = createNumber("page", Integer.class);
public QCharacterShortcut(String variable) {
super(CharacterShortcut.class, forVariable(variable), "null",
"character_shortcut");
}
public final NumberPath<Integer> shortcutId = createNumber("shortcut_id", Integer.class);
public QCharacterShortcut(Path<? extends CharacterShortcut> entity) {
super(entity.getType(), entity.getMetadata(), "null",
"character_shortcut");
}
public final NumberPath<Integer> slot = createNumber("slot", Integer.class);
public final EnumPath<ShortcutType> type = createEnum("type", ShortcutType.class);
public final PrimaryKey<CharacterShortcut> primary = createPrimaryKey(shortcutId);
public QCharacterShortcut(String variable) {
super(CharacterShortcut.class, forVariable(variable), "null", "character_shortcut");
}
public QCharacterShortcut(Path<? extends CharacterShortcut> entity) {
super(entity.getType(), entity.getMetadata(), "null", "character_shortcut");
}
public QCharacterShortcut(PathMetadata<?> metadata) {
super(CharacterShortcut.class, metadata, "null", "character_shortcut");
}
public QCharacterShortcut(PathMetadata<?> metadata) {
super(CharacterShortcut.class, metadata, "null", "character_shortcut");
}
}

View File

@@ -3,39 +3,41 @@ package com.l2jserver.service.database.model;
import static com.mysema.query.types.PathMetadataFactory.forVariable;
import com.l2jserver.model.world.Clan;
import com.l2jserver.service.database.sql.ddl.annotation.ColumnSize;
import com.mysema.query.sql.PrimaryKey;
import com.mysema.query.types.Path;
import com.mysema.query.types.PathMetadata;
import com.mysema.query.types.path.NumberPath;
/**
* Maps <code>clan</code> table into type-safe java objects
*
* @author <a href="http://www.rogiel.com">Rogiel</a>
*/
public class QClan extends com.mysema.query.sql.RelationalPathBase<Clan> {
private static final long serialVersionUID = 1592083511;
private static final long serialVersionUID = 1592083511;
public static final QClan clan = new QClan("clan");
public static final QClan clan = new QClan("clan");
public final NumberPath<Integer> characterIdLeader = createNumber("character_id_leader", Integer.class);
@ColumnSize(10)
public final NumberPath<Integer> clanId = createNumber("clan_id",
Integer.class);
@ColumnSize(10)
public final NumberPath<Integer> characterIdLeader = createNumber(
"character_id_leader", Integer.class);
public final NumberPath<Integer> clanId = createNumber("clan_id", Integer.class);
public final PrimaryKey<Clan> primary = createPrimaryKey(clanId);
public final PrimaryKey<Clan> primary = createPrimaryKey(clanId);
public QClan(String variable) {
super(Clan.class, forVariable(variable), "null", "clan");
}
public QClan(String variable) {
super(Clan.class, forVariable(variable), "null", "clan");
}
public QClan(Path<? extends Clan> entity) {
super(entity.getType(), entity.getMetadata(), "null", "clan");
}
public QClan(Path<? extends Clan> entity) {
super(entity.getType(), entity.getMetadata(), "null", "clan");
}
public QClan(PathMetadata<?> metadata) {
super(Clan.class, metadata, "null", "clan");
}
public QClan(PathMetadata<?> metadata) {
super(Clan.class, metadata, "null", "clan");
}
}

View File

@@ -5,6 +5,9 @@ import static com.mysema.query.types.PathMetadataFactory.forVariable;
import com.l2jserver.model.world.Item;
import com.l2jserver.model.world.character.CharacterInventory.InventoryPaperdoll;
import com.l2jserver.model.world.character.CharacterInventory.ItemLocation;
import com.l2jserver.service.database.sql.ddl.annotation.ColumnDefault;
import com.l2jserver.service.database.sql.ddl.annotation.ColumnNullable;
import com.l2jserver.service.database.sql.ddl.annotation.ColumnSize;
import com.mysema.query.sql.PrimaryKey;
import com.mysema.query.types.Path;
import com.mysema.query.types.PathMetadata;
@@ -21,33 +24,40 @@ public class QItem extends com.mysema.query.sql.RelationalPathBase<Item> {
public static final QItem item = new QItem("item");
@ColumnSize(10)
public final NumberPath<Integer> itemId = createNumber("item_id",
Integer.class);
@ColumnSize(5)
public final NumberPath<Integer> templateId = createNumber("template_id",
Integer.class);
@ColumnSize(10)
@ColumnNullable
public final NumberPath<Integer> characterId = createNumber("character_id",
Integer.class);
@ColumnSize(10)
@ColumnNullable
public final NumberPath<Integer> coordX = createNumber("coord_x",
Integer.class);
@ColumnSize(10)
@ColumnNullable
public final NumberPath<Integer> coordY = createNumber("coord_y",
Integer.class);
@ColumnSize(10)
@ColumnNullable
public final NumberPath<Integer> coordZ = createNumber("coord_z",
Integer.class);
@ColumnSize(10)
public final NumberPath<Long> count = createNumber("count", Long.class);
public final NumberPath<Long> count = createNumber("count",
Long.class);
public final NumberPath<Integer> itemId = createNumber("item_id",
Integer.class);
@ColumnDefault("INVENTORY")
public final EnumPath<ItemLocation> location = createEnum("location",
ItemLocation.class);
@ColumnNullable
public final EnumPath<InventoryPaperdoll> paperdoll = createEnum(
"paperdoll", InventoryPaperdoll.class);
public final NumberPath<Integer> templateId = createNumber("template_id",
Integer.class);
public final PrimaryKey<Item> primary = createPrimaryKey(itemId);
public QItem(String variable) {

View File

@@ -5,6 +5,9 @@ import static com.mysema.query.types.PathMetadataFactory.forVariable;
import java.util.Date;
import com.l2jserver.model.server.ChatMessage;
import com.l2jserver.service.database.sql.ddl.annotation.ColumnAutoIncrement;
import com.l2jserver.service.database.sql.ddl.annotation.ColumnNullable;
import com.l2jserver.service.database.sql.ddl.annotation.ColumnSize;
import com.l2jserver.service.game.chat.ChatMessageType;
import com.mysema.query.sql.PrimaryKey;
import com.mysema.query.types.Path;
@@ -24,19 +27,25 @@ public class QLogChat extends com.mysema.query.sql.RelationalPathBase<ChatMessag
public static final QLogChat logChat = new QLogChat("log_chat");
@ColumnSize(10)
@ColumnAutoIncrement
public final NumberPath<Integer> messageId = createNumber("message_id",
Integer.class);
@ColumnSize(10)
@ColumnNullable
public final NumberPath<Integer> channelId = createNumber("channel_id",
Integer.class);
@ColumnSize(10)
@ColumnNullable
public final NumberPath<Integer> sender = createNumber("sender",
Integer.class);
public final DateTimePath<Date> date = createDateTime("date", Date.class);
@ColumnSize(255)
public final StringPath message = createString("message");
public final NumberPath<Integer> messageId = createNumber("message_id",
Integer.class);
public final NumberPath<Integer> sender = createNumber("sender",
Integer.class);
public final EnumPath<ChatMessageType> type = createEnum("type",
ChatMessageType.class);

View File

@@ -3,53 +3,60 @@ package com.l2jserver.service.database.model;
import static com.mysema.query.types.PathMetadataFactory.forVariable;
import com.l2jserver.model.world.NPC;
import com.l2jserver.service.database.sql.ddl.annotation.ColumnSize;
import com.mysema.query.sql.PrimaryKey;
import com.mysema.query.types.Path;
import com.mysema.query.types.PathMetadata;
import com.mysema.query.types.path.NumberPath;
/**
* Maps <code>npc</code> table into type-safe java objects
*
* @author <a href="http://www.rogiel.com">Rogiel</a>
*/
public class QNPC extends com.mysema.query.sql.RelationalPathBase<NPC> {
private static final long serialVersionUID = 2129578208;
private static final long serialVersionUID = 2129578208;
public static final QNPC npc = new QNPC("npc");
public static final QNPC npc = new QNPC("npc");
public final NumberPath<Double> hp = createNumber("hp", Double.class);
@ColumnSize(10)
public final NumberPath<Integer> npcId = createNumber("npc_id",
Integer.class);
@ColumnSize(4)
public final NumberPath<Integer> npcTemplateId = createNumber(
"npc_template_id", Integer.class);
public final NumberPath<Double> mp = createNumber("mp", Double.class);
public final NumberPath<Double> hp = createNumber("hp", Double.class);
public final NumberPath<Double> mp = createNumber("mp", Double.class);
public final NumberPath<Integer> npcId = createNumber("npc_id", Integer.class);
public final NumberPath<Double> pointAngle = createNumber("point_angle",
Double.class);
@ColumnSize(10)
public final NumberPath<Integer> pointX = createNumber("point_x",
Integer.class);
@ColumnSize(10)
public final NumberPath<Integer> pointY = createNumber("point_y",
Integer.class);
@ColumnSize(10)
public final NumberPath<Integer> pointZ = createNumber("point_z",
Integer.class);
public final NumberPath<Integer> npcTemplateId = createNumber("npc_template_id", Integer.class);
@ColumnSize(8)
public final NumberPath<Long> respawnTime = createNumber("respawn_time",
Long.class);
public final NumberPath<Double> pointAngle = createNumber("point_angle", Double.class);
public final PrimaryKey<NPC> primary = createPrimaryKey(npcId);
public final NumberPath<Integer> pointX = createNumber("point_x", Integer.class);
public QNPC(String variable) {
super(NPC.class, forVariable(variable), "null", "npc");
}
public final NumberPath<Integer> pointY = createNumber("point_y", Integer.class);
public QNPC(Path<? extends NPC> entity) {
super(entity.getType(), entity.getMetadata(), "null", "npc");
}
public final NumberPath<Integer> pointZ = createNumber("point_z", Integer.class);
public final NumberPath<Long> respawnTime = createNumber("respawn_time", Long.class);
public final PrimaryKey<NPC> primary = createPrimaryKey(npcId);
public QNPC(String variable) {
super(NPC.class, forVariable(variable), "null", "npc");
}
public QNPC(Path<? extends NPC> entity) {
super(entity.getType(), entity.getMetadata(), "null", "npc");
}
public QNPC(PathMetadata<?> metadata) {
super(NPC.class, metadata, "null", "npc");
}
public QNPC(PathMetadata<?> metadata) {
super(NPC.class, metadata, "null", "npc");
}
}

View File

@@ -14,7 +14,7 @@
* You should have received a copy of the GNU General Public License
* along with l2jserver2. If not, see <http://www.gnu.org/licenses/>.
*/
package com.l2jserver.service.database.jdbc;
package com.l2jserver.service.database.sql;
import java.util.List;
@@ -26,13 +26,14 @@ import com.l2jserver.model.id.object.CharacterID;
import com.l2jserver.model.world.Clan;
import com.l2jserver.model.world.L2Character;
import com.l2jserver.service.database.DatabaseService;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.DeleteQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.InsertQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.SelectListQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.SelectSingleQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.UpdateQuery;
import com.l2jserver.service.database.mapper.CharacterMapper;
import com.l2jserver.service.database.model.QCharacter;
import com.l2jserver.service.database.sql.AbstractSQLDAO;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.DeleteQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.InsertQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.SelectListQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.SelectSingleQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.UpdateQuery;
import com.mysema.query.sql.AbstractSQLQuery;
import com.mysema.query.sql.dml.SQLDeleteClause;
import com.mysema.query.sql.dml.SQLInsertClause;
@@ -43,7 +44,7 @@ import com.mysema.query.sql.dml.SQLUpdateClause;
*
* @author <a href="http://www.rogiel.com">Rogiel</a>
*/
public class JDBCCharacterDAO extends AbstractJDBCDAO<L2Character, CharacterID>
public class SQLCharacterDAO extends AbstractSQLDAO<L2Character, CharacterID>
implements CharacterDAO {
/**
* The {@link L2Character} mapper
@@ -57,7 +58,7 @@ public class JDBCCharacterDAO extends AbstractJDBCDAO<L2Character, CharacterID>
* the character mapper
*/
@Inject
public JDBCCharacterDAO(DatabaseService database, CharacterMapper mapper) {
public SQLCharacterDAO(DatabaseService database, CharacterMapper mapper) {
super(database);
this.mapper = mapper;
}

View File

@@ -14,7 +14,7 @@
* You should have received a copy of the GNU General Public License
* along with l2jserver2. If not, see <http://www.gnu.org/licenses/>.
*/
package com.l2jserver.service.database.jdbc;
package com.l2jserver.service.database.sql;
import java.util.List;
@@ -26,12 +26,13 @@ import com.l2jserver.model.id.FriendID;
import com.l2jserver.model.world.L2Character;
import com.l2jserver.model.world.character.CharacterFriendList;
import com.l2jserver.service.database.DatabaseService;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.DeleteQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.InsertQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.SelectListQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.SelectSingleQuery;
import com.l2jserver.service.database.mapper.CharacterFriendMapper;
import com.l2jserver.service.database.model.QCharacterFriend;
import com.l2jserver.service.database.sql.AbstractSQLDAO;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.DeleteQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.InsertQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.SelectListQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.SelectSingleQuery;
import com.mysema.query.sql.AbstractSQLQuery;
import com.mysema.query.sql.dml.SQLDeleteClause;
import com.mysema.query.sql.dml.SQLInsertClause;
@@ -41,8 +42,8 @@ import com.mysema.query.sql.dml.SQLInsertClause;
*
* @author <a href="http://www.rogiel.com">Rogiel</a>
*/
public class JDBCCharacterFriendDAO extends
AbstractJDBCDAO<CharacterFriend, FriendID> implements
public class SQLCharacterFriendDAO extends
AbstractSQLDAO<CharacterFriend, FriendID> implements
CharacterFriendDAO {
/**
* The {@link CharacterFriend} mapper
@@ -56,7 +57,7 @@ public class JDBCCharacterFriendDAO extends
* the character friend mapper
*/
@Inject
public JDBCCharacterFriendDAO(DatabaseService database,
public SQLCharacterFriendDAO(DatabaseService database,
CharacterFriendMapper mapper) {
super(database);
this.mapper = mapper;

View File

@@ -14,7 +14,7 @@
* You should have received a copy of the GNU General Public License
* along with l2jserver2. If not, see <http://www.gnu.org/licenses/>.
*/
package com.l2jserver.service.database.jdbc;
package com.l2jserver.service.database.sql;
import java.util.List;
@@ -26,13 +26,14 @@ import com.l2jserver.model.game.CharacterShortcut;
import com.l2jserver.model.id.CharacterShortcutID;
import com.l2jserver.model.world.L2Character;
import com.l2jserver.service.database.DatabaseService;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.DeleteQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.InsertQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.SelectListQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.SelectSingleQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.UpdateQuery;
import com.l2jserver.service.database.mapper.CharacterShortcutMapper;
import com.l2jserver.service.database.model.QCharacterShortcut;
import com.l2jserver.service.database.sql.AbstractSQLDAO;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.DeleteQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.InsertQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.SelectListQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.SelectSingleQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.UpdateQuery;
import com.mysema.query.sql.AbstractSQLQuery;
import com.mysema.query.sql.dml.SQLDeleteClause;
import com.mysema.query.sql.dml.SQLInsertClause;
@@ -43,8 +44,8 @@ import com.mysema.query.sql.dml.SQLUpdateClause;
*
* @author <a href="http://www.rogiel.com">Rogiel</a>
*/
public class JDBCCharacterShortcutDAO extends
AbstractJDBCDAO<CharacterShortcut, CharacterShortcutID> implements
public class SQLCharacterShortcutDAO extends
AbstractSQLDAO<CharacterShortcut, CharacterShortcutID> implements
CharacterShortcutDAO {
private final CharacterShortcutMapper mapper;
@@ -55,7 +56,7 @@ public class JDBCCharacterShortcutDAO extends
* the {@link CharacterShortcut} mapper
*/
@Inject
public JDBCCharacterShortcutDAO(DatabaseService database,
public SQLCharacterShortcutDAO(DatabaseService database,
CharacterShortcutMapper mapper) {
super(database);
this.mapper = mapper;

View File

@@ -14,7 +14,7 @@
* You should have received a copy of the GNU General Public License
* along with l2jserver2. If not, see <http://www.gnu.org/licenses/>.
*/
package com.l2jserver.service.database.jdbc;
package com.l2jserver.service.database.sql;
import java.util.Collection;
@@ -25,13 +25,14 @@ import com.l2jserver.model.dao.ChatMessageDAO;
import com.l2jserver.model.id.ChatMessageID;
import com.l2jserver.model.server.ChatMessage;
import com.l2jserver.service.database.DatabaseService;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.DeleteQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.InsertQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.SelectListQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.SelectSingleQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.UpdateQuery;
import com.l2jserver.service.database.mapper.ChatMessageMapper;
import com.l2jserver.service.database.model.QLogChat;
import com.l2jserver.service.database.sql.AbstractSQLDAO;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.DeleteQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.InsertQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.SelectListQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.SelectSingleQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.UpdateQuery;
import com.mysema.query.sql.AbstractSQLQuery;
import com.mysema.query.sql.dml.SQLDeleteClause;
import com.mysema.query.sql.dml.SQLInsertClause;
@@ -42,8 +43,8 @@ import com.mysema.query.sql.dml.SQLUpdateClause;
*
* @author <a href="http://www.rogiel.com">Rogiel</a>
*/
public class JDBCChatMessageDAO extends
AbstractJDBCDAO<ChatMessage, ChatMessageID> implements ChatMessageDAO {
public class SQLChatMessageDAO extends
AbstractSQLDAO<ChatMessage, ChatMessageID> implements ChatMessageDAO {
private final ChatMessageMapper mapper;
/**
@@ -53,7 +54,7 @@ public class JDBCChatMessageDAO extends
* the mapper
*/
@Inject
public JDBCChatMessageDAO(DatabaseService database, ChatMessageMapper mapper) {
public SQLChatMessageDAO(DatabaseService database, ChatMessageMapper mapper) {
super(database);
this.mapper = mapper;
}

View File

@@ -14,7 +14,7 @@
* You should have received a copy of the GNU General Public License
* along with l2jserver2. If not, see <http://www.gnu.org/licenses/>.
*/
package com.l2jserver.service.database.jdbc;
package com.l2jserver.service.database.sql;
import java.util.Collection;
@@ -25,13 +25,14 @@ import com.l2jserver.model.dao.ClanDAO;
import com.l2jserver.model.id.object.ClanID;
import com.l2jserver.model.world.Clan;
import com.l2jserver.service.database.DatabaseService;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.DeleteQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.InsertQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.SelectListQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.SelectSingleQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.UpdateQuery;
import com.l2jserver.service.database.mapper.ClanMapper;
import com.l2jserver.service.database.model.QClan;
import com.l2jserver.service.database.sql.AbstractSQLDAO;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.DeleteQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.InsertQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.SelectListQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.SelectSingleQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.UpdateQuery;
import com.mysema.query.sql.AbstractSQLQuery;
import com.mysema.query.sql.dml.SQLDeleteClause;
import com.mysema.query.sql.dml.SQLInsertClause;
@@ -42,7 +43,7 @@ import com.mysema.query.sql.dml.SQLUpdateClause;
*
* @author <a href="http://www.rogiel.com">Rogiel</a>
*/
public class JDBCClanDAO extends AbstractJDBCDAO<Clan, ClanID> implements
public class SQLClanDAO extends AbstractSQLDAO<Clan, ClanID> implements
ClanDAO {
private final ClanMapper mapper;
@@ -53,7 +54,7 @@ public class JDBCClanDAO extends AbstractJDBCDAO<Clan, ClanID> implements
* the mapper
*/
@Inject
public JDBCClanDAO(DatabaseService database, final ClanMapper mapper) {
public SQLClanDAO(DatabaseService database, final ClanMapper mapper) {
super(database);
this.mapper = mapper;
}

View File

@@ -14,7 +14,7 @@
* You should have received a copy of the GNU General Public License
* along with l2jserver2. If not, see <http://www.gnu.org/licenses/>.
*/
package com.l2jserver.service.database.jdbc;
package com.l2jserver.service.database.sql;
import java.util.Collection;
import java.util.List;
@@ -27,13 +27,14 @@ import com.l2jserver.model.world.Item;
import com.l2jserver.model.world.L2Character;
import com.l2jserver.model.world.character.CharacterInventory.ItemLocation;
import com.l2jserver.service.database.DatabaseService;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.DeleteQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.InsertQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.SelectListQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.SelectSingleQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.UpdateQuery;
import com.l2jserver.service.database.mapper.ItemMapper;
import com.l2jserver.service.database.model.QItem;
import com.l2jserver.service.database.sql.AbstractSQLDAO;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.DeleteQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.InsertQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.SelectListQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.SelectSingleQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.UpdateQuery;
import com.mysema.query.sql.AbstractSQLQuery;
import com.mysema.query.sql.dml.SQLDeleteClause;
import com.mysema.query.sql.dml.SQLInsertClause;
@@ -44,7 +45,7 @@ import com.mysema.query.sql.dml.SQLUpdateClause;
*
* @author <a href="http://www.rogiel.com">Rogiel</a>
*/
public class JDBCItemDAO extends AbstractJDBCDAO<Item, ItemID> implements
public class SQLItemDAO extends AbstractSQLDAO<Item, ItemID> implements
ItemDAO {
private final ItemMapper mapper;
@@ -55,7 +56,7 @@ public class JDBCItemDAO extends AbstractJDBCDAO<Item, ItemID> implements
* the mapper
*/
@Inject
public JDBCItemDAO(DatabaseService database, ItemMapper mapper) {
public SQLItemDAO(DatabaseService database, ItemMapper mapper) {
super(database);
this.mapper = mapper;
}

View File

@@ -14,7 +14,7 @@
* You should have received a copy of the GNU General Public License
* along with l2jserver2. If not, see <http://www.gnu.org/licenses/>.
*/
package com.l2jserver.service.database.jdbc;
package com.l2jserver.service.database.sql;
import java.util.Collection;
import java.util.List;
@@ -27,13 +27,14 @@ import com.l2jserver.model.id.object.NPCID;
import com.l2jserver.model.id.template.NPCTemplateID;
import com.l2jserver.model.world.NPC;
import com.l2jserver.service.database.DatabaseService;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.DeleteQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.InsertQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.SelectListQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.SelectSingleQuery;
import com.l2jserver.service.database.jdbc.AbstractJDBCDatabaseService.UpdateQuery;
import com.l2jserver.service.database.mapper.NPCMapper;
import com.l2jserver.service.database.model.QNPC;
import com.l2jserver.service.database.sql.AbstractSQLDAO;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.DeleteQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.InsertQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.SelectListQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.SelectSingleQuery;
import com.l2jserver.service.database.sql.AbstractSQLDatabaseService.UpdateQuery;
import com.mysema.query.sql.AbstractSQLQuery;
import com.mysema.query.sql.dml.SQLDeleteClause;
import com.mysema.query.sql.dml.SQLInsertClause;
@@ -44,7 +45,7 @@ import com.mysema.query.sql.dml.SQLUpdateClause;
*
* @author <a href="http://www.rogiel.com">Rogiel</a>
*/
public class JDBCNPCDAO extends AbstractJDBCDAO<NPC, NPCID> implements NPCDAO {
public class SQLNPCDAO extends AbstractSQLDAO<NPC, NPCID> implements NPCDAO {
private final NPCMapper mapper;
/**
@@ -54,7 +55,7 @@ public class JDBCNPCDAO extends AbstractJDBCDAO<NPC, NPCID> implements NPCDAO {
* the mapper
*/
@Inject
public JDBCNPCDAO(DatabaseService database, NPCMapper mapper) {
public SQLNPCDAO(DatabaseService database, NPCMapper mapper) {
super(database);
this.mapper = mapper;
}