Skip to content

Commit 021a97d

Browse files
committed
Entity Assist Actions
1 parent ec3580c commit 021a97d

File tree

5 files changed

+22
-12
lines changed

5 files changed

+22
-12
lines changed

pom.xml

+2-1
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,8 @@
131131
<annotationProcessorPath>
132132
<groupId>org.hibernate.orm</groupId>
133133
<artifactId>hibernate-jpamodelgen</artifactId>
134-
<version>${maven.hibernate.version}</version>
134+
<!--<version>${maven.hibernate.version}</version>-->
135+
<version>6.4.8.Final</version>
135136
</annotationProcessorPath>
136137
<path>
137138
<groupId>jakarta.xml.bind</groupId>

src/main/java/com/entityassist/BaseEntity.java

+1-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package com.entityassist;
22

3-
import com.entityassist.exceptions.QueryBuilderException;
43
import com.entityassist.querybuilder.QueryBuilder;
54
import com.entityassist.services.entities.IBaseEntity;
65
import com.fasterxml.jackson.annotation.JsonAutoDetect;
@@ -43,8 +42,7 @@ public BaseEntity() {
4342
@SuppressWarnings("unchecked")
4443
@NotNull
4544
public J persist() {
46-
builder().persist((J) this);
47-
return (J) this;
45+
return builder().persist((J) this).getEntity();
4846
}
4947

5048
/**

src/main/java/com/entityassist/querybuilder/QueryBuilder.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ public Long getCount()
9191
}
9292
catch (NoResultException nre)
9393
{
94-
Logger.getLogger(getClass().getName()).log(Level.WARNING, "Couldn''t find object with name : " + getEntityClass().getName() + "}\n", nre);
94+
Logger.getLogger(getClass().getName()).log(Level.WARNING, "Couldn't find object with name : " + getEntityClass().getName(), nre);
9595
return 0L;
9696
}
9797
}

src/main/java/com/entityassist/querybuilder/QueryBuilderSCD.java

+16-7
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,23 @@
11
package com.entityassist.querybuilder;
22

3-
import com.entityassist.*;
3+
import com.entityassist.RootEntity;
4+
import com.entityassist.SCDEntity;
45
import com.entityassist.enumerations.Operand;
5-
6-
6+
import com.entityassist.enumerations.OrderByType;
77
import jakarta.validation.constraints.NotNull;
88

99
import java.io.Serializable;
1010
import java.sql.SQLException;
11-
import java.time.*;
11+
import java.time.LocalDateTime;
12+
import java.time.OffsetDateTime;
13+
import java.time.ZoneId;
14+
import java.time.ZonedDateTime;
1215
import java.util.logging.Level;
1316
import java.util.logging.Logger;
1417

15-
import static com.entityassist.SCDEntity.*;
16-
import static java.time.ZoneOffset.*;
18+
import static com.entityassist.SCDEntity.EndOfTime;
19+
import static com.entityassist.SCDEntity.getNow;
20+
import static java.time.ZoneOffset.UTC;
1721

1822
@SuppressWarnings("unused")
1923
public abstract class QueryBuilderSCD<J extends QueryBuilderSCD<J, E, I>, E extends SCDEntity<E, J, I>, I extends Serializable>
@@ -285,5 +289,10 @@ public static LocalDateTime convertToLocalDateTime(OffsetDateTime ldt, String ti
285289
ZonedDateTime zonedDateTime = ldt.atZoneSameInstant(ZoneId.of(timezone));
286290
return zonedDateTime.toLocalDateTime();
287291
}
288-
292+
293+
public J latestFirst()
294+
{
295+
orderBy(getAttribute(WAREHOUSE_UPDATED_DATE_COLUMN_NAME), OrderByType.DESC);
296+
return (J)this;
297+
}
289298
}

src/main/java/com/entityassist/querybuilder/builders/QueryBuilderRoot.java

+2
Original file line numberDiff line numberDiff line change
@@ -245,12 +245,14 @@ public J persist(E entity)
245245
boolean transactionAlreadyStarted = false;
246246
getEntityManager().persist(entity);
247247
entity.setFake(false);
248+
setEntity(entity);
248249
}
249250
}
250251
catch (IllegalStateException ise)
251252
{
252253
Logger.getLogger(getClass().getName())
253254
.log(Level.SEVERE, "This entity is not in a state to be persisted. Perhaps an update merge remove or refresh?", ise);
255+
throw new UnsupportedOperationException(ise);
254256
}
255257
catch (Exception e)
256258
{

0 commit comments

Comments
 (0)