use of com.servoy.j2db.util.UUID in project servoy-client by Servoy.
the class WebObjectImpl method getNewIdAndUUID.
public static Pair<Integer, UUID> getNewIdAndUUID(IPersist persist) {
UUID uuid = UUID.randomUUID();
int id;
try {
id = ((IPersistFactory) ((Solution) persist.getAncestor(IRepository.SOLUTIONS)).getRepository()).getNewElementID(uuid);
} catch (RepositoryException e) {
Debug.error(e);
id = 0;
}
return new Pair<>(Integer.valueOf(id), uuid);
}
use of com.servoy.j2db.util.UUID in project servoy-client by Servoy.
the class RepositoryHelper method loadObjectMetaDatas.
private void loadObjectMetaDatas(String moduleNames, Map<UUID, RootObjectReference> referencedModules, boolean loadImportHooks) throws RepositoryException {
if (moduleNames == null)
return;
// $NON-NLS-1$
StringTokenizer tk = new StringTokenizer(moduleNames, ";,");
int count = tk.countTokens();
if (count > 0) {
while (tk.hasMoreTokens()) {
try {
String moduleDescriptor = tk.nextToken();
SolutionMetaData metaData;
int releaseNumber = 0;
int i = moduleDescriptor.indexOf(':');
String name;
UUID uuid;
if (i != -1) {
releaseNumber = Integer.parseInt(moduleDescriptor.substring(i + 1));
moduleDescriptor = moduleDescriptor.substring(0, i);
}
if (moduleDescriptor.indexOf('-') != -1) {
// A uuid reference.
uuid = UUID.fromString(moduleDescriptor);
metaData = (SolutionMetaData) developerRepository.getRootObjectMetaData(uuid);
if (metaData == null) {
continue;
}
name = metaData.getName();
} else {
// A module name; for backwards compatibility.
name = moduleDescriptor;
metaData = (SolutionMetaData) developerRepository.getRootObjectMetaData(name, IRepository.SOLUTIONS);
if (metaData == null) {
continue;
}
uuid = metaData.getRootObjectUuid();
}
if (referencedModules.get(uuid) == null && (loadImportHooks || !SolutionMetaData.isImportHook(metaData))) {
referencedModules.put(uuid, new RootObjectReference(name, uuid, metaData, releaseNumber));
Solution sol = (Solution) developerRepository.getRootObject(metaData.getRootObjectId(), releaseNumber);
if (sol != null) {
loadObjectMetaDatas(sol.getModulesNames(), referencedModules, loadImportHooks);
} else {
throw new RepositoryException("Solution with uuid " + uuid + " and name " + name + " was not found.");
}
}
} catch (RemoteException e) {
throw new RepositoryException(e);
}
}
}
}
use of com.servoy.j2db.util.UUID in project servoy-client by Servoy.
the class Solution method getReferencedModules.
/**
* @param alreadyKnownSolutions, can be null or a map (name -> solution)
* @return a list of RootObjectReference
*/
public List<RootObjectReference> getReferencedModules(Map<String, Solution> alreadyKnownSolutions) throws RepositoryException {
List<RootObjectReference> referencedModules = new ArrayList<RootObjectReference>();
String moduleNames = getModulesNames();
if (moduleNames != null) {
// $NON-NLS-1$
StringTokenizer tk = new StringTokenizer(moduleNames, ";,");
int count = tk.countTokens();
if (count > 0) {
while (tk.hasMoreTokens()) {
try {
SolutionMetaData metaData = null;
int releaseNumber = -1;
String moduleDescriptor = tk.nextToken();
int i = moduleDescriptor.indexOf(':');
String name = null;
UUID moduleUuid = null;
if (i != -1) {
releaseNumber = Integer.parseInt(moduleDescriptor.substring(i + 1));
moduleDescriptor = moduleDescriptor.substring(0, i);
}
if (alreadyKnownSolutions == null || !alreadyKnownSolutions.containsKey(moduleDescriptor)) {
if (moduleDescriptor.indexOf('-') != -1) {
// A uuid reference.
moduleUuid = UUID.fromString(moduleDescriptor);
metaData = (SolutionMetaData) getRepository().getRootObjectMetaData(moduleUuid);
if (metaData != null)
name = metaData.getName();
} else {
// A module name; for backwards compatibility.
name = moduleDescriptor;
metaData = (SolutionMetaData) getRepository().getRootObjectMetaData(name, IRepository.SOLUTIONS);
if (metaData != null)
moduleUuid = metaData.getRootObjectUuid();
}
referencedModules.add(new RootObjectReference(name, moduleUuid, metaData, releaseNumber));
}
} catch (Exception e) {
throw new RepositoryException(e);
}
}
}
}
return referencedModules;
}
use of com.servoy.j2db.util.UUID in project servoy-client by Servoy.
the class ChainedUnresolvedUUIDResolver method resolve.
public UUID resolve(int elementId, int revision, int contentId) throws RepositoryException {
Iterator iterator = resolvers.iterator();
while (iterator.hasNext()) {
IUnresolvedUUIDResolver resolver = (IUnresolvedUUIDResolver) iterator.next();
UUID uuid = resolver.resolve(elementId, revision, contentId);
if (uuid != null && !uuid.equals(IRepository.UNRESOLVED_UUID)) {
return uuid;
}
}
return IRepository.UNRESOLVED_UUID;
}
use of com.servoy.j2db.util.UUID in project servoy-client by Servoy.
the class ChangeHandler method createNewObject.
/**
* Create a repositoy object like Form,fields,portals,beans,etc.
*
* @param style the style to use
* @param parent the parent
* @param object_type_id the type
* @return the created object
*/
public IPersist createNewObject(ISupportChilds parent, int object_type_id) throws RepositoryException {
final UUID uuid = UUID.randomUUID();
final int element_id = factory.getNewElementID(uuid);
return createNewObject(parent, object_type_id, element_id, uuid);
}
Aggregations