Skip to content

Commit

Permalink
Fetch module config directly from item reference
Browse files Browse the repository at this point in the history
  • Loading branch information
Vladyslav Zhukovskii committed Mar 1, 2016
1 parent 04513ae commit 32caa18
Showing 1 changed file with 1 addition and 40 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -67,8 +67,6 @@ public class NodeManager {
protected final AppContext appContext;
protected final String workspaceId;

private ModuleNode moduleNode;

@Inject
public NodeManager(NodeFactory nodeFactory,
ProjectServiceClient projectService,
Expand Down Expand Up @@ -184,35 +182,12 @@ public Node createNodeByType(ItemReference itemReference, ProjectConfigDto confi
}

if ("module".equals(itemType)) {
moduleNode = null;

for (ProjectConfigDto moduleConfigDto : configDto.getModules()) {
createModuleNode(itemReference, moduleConfigDto, settings);

if (moduleNode != null) {
return moduleNode;
}
}
return nodeFactory.newModuleNode(itemReference.getProjectConfig(), settings);
}

return null;
}

private void createModuleNode(ItemReference itemReference,
ProjectConfigDto moduleConfig,
NodeSettings settings) {

if (itemReference.getName().equals(moduleConfig.getName())) {
moduleNode = nodeFactory.newModuleNode(moduleConfig, settings);

return;
}

for (ProjectConfigDto configDto : moduleConfig.getModules()) {
createModuleNode(itemReference, configDto, settings);
}
}

@NotNull
private Function<PromiseError, List<Node>> handleError() {
return new Function<PromiseError, List<Node>>() {
Expand All @@ -223,20 +198,6 @@ public List<Node> apply(PromiseError arg) throws FunctionException {
};
}

/** Project Reference operations ********************* */
public Promise<ProjectConfigDto> getProjectDescriptor(String path) {
return AsyncPromiseHelper.createFromAsyncRequest(getProjectDescriptoRC(path));
}

private RequestCall<ProjectConfigDto> getProjectDescriptoRC(final String path) {
return new RequestCall<ProjectConfigDto>() {
@Override
public void makeCall(AsyncCallback<ProjectConfigDto> callback) {
projectService.getProject(workspaceId, path, _callback(callback, dtoUnmarshaller.newUnmarshaller(ProjectConfigDto.class)));
}
};
}

/**
* Get project list and construct project nodes for the tree.
*
Expand Down

0 comments on commit 32caa18

Please sign in to comment.